From f707ad166a74f3834ba92797daeb2e7b69e3131e Mon Sep 17 00:00:00 2001 From: ChenxiJiang333 Date: Thu, 23 Apr 2026 17:51:55 +0800 Subject: [PATCH 1/3] generated from swagger:f25aaa2c654cc4c873be6004a83d09aecab082ad --- sdk/security/azure-mgmt-security/CHANGELOG.md | 4 + sdk/security/azure-mgmt-security/MANIFEST.in | 8 +- .../azure-mgmt-security/_metadata.json | 8 +- .../apiview-properties.json | 454 +- .../azure-mgmt-security/azure/__init__.py | 2 +- .../azure/mgmt/__init__.py | 2 +- .../azure/mgmt/security/_configuration.py | 15 +- .../azure/mgmt/security/_security_center.py | 204 +- .../mgmt/security/_utils/serialization.py | 43 +- .../azure/mgmt/security/_version.py | 2 +- .../azure/mgmt/security/aio/_configuration.py | 15 +- .../mgmt/security/aio/_security_center.py | 212 +- .../mgmt/security/aio/operations/__init__.py | 90 +- .../_advanced_threat_protection_operations.py | 17 +- .../aio/operations/_alerts_operations.py | 95 +- .../_alerts_suppression_rules_operations.py | 29 +- .../_allowed_connections_operations.py | 23 +- .../operations/_api_collections_operations.py | 35 +- .../aio/operations/_application_operations.py | 17 +- .../operations/_applications_operations.py | 11 +- .../_assessments_metadata_operations.py | 53 +- .../aio/operations/_assessments_operations.py | 37 +- ...erations.py => _assignments_operations.py} | 447 +- .../_auto_provisioning_settings_operations.py | 23 +- .../aio/operations/_automations_operations.py | 47 +- .../_azure_dev_ops_orgs_operations.py | 44 +- .../_azure_dev_ops_projects_operations.py | 37 +- .../_azure_dev_ops_repos_operations.py | 37 +- .../_compliance_results_operations.py | 17 +- .../aio/operations/_compliances_operations.py | 17 +- .../aio/operations/_connectors_operations.py | 341 - .../_custom_recommendations_operations.py | 25 +- .../_defender_for_storage_operations.py | 150 +- .../_dev_ops_configurations_operations.py | 46 +- .../_dev_ops_operation_results_operations.py | 12 +- .../_device_security_groups_operations.py | 29 +- ...iscovered_security_solutions_operations.py | 23 +- ..._external_security_solutions_operations.py | 23 +- .../operations/_git_hub_issues_operations.py | 287 + .../operations/_git_hub_owners_operations.py | 26 +- .../operations/_git_hub_repos_operations.py | 19 +- .../operations/_git_lab_groups_operations.py | 26 +- .../_git_lab_projects_operations.py | 19 +- .../_git_lab_subgroups_operations.py | 12 +- .../_governance_assignments_operations.py | 23 +- .../_governance_rules_operations.py | 39 +- .../operations/_health_reports_operations.py | 15 +- ...ormation_protection_policies_operations.py | 23 +- ..._security_solution_analytics_operations.py | 17 +- .../_iot_security_solution_operations.py | 41 +- ...s_analytics_aggregated_alert_operations.py | 23 +- ...ons_analytics_recommendation_operations.py | 17 +- ..._jit_network_access_policies_operations.py | 53 +- .../aio/operations/_locations_operations.py | 5 +- .../operations/_mde_onboardings_operations.py | 17 +- .../_operation_results_operations.py | 112 + .../_operation_statuses_operations.py | 111 + .../security/aio/operations/_operations.py | 12 +- .../aio/operations/_pricings_operations.py | 33 +- ...private_endpoint_connections_operations.py | 37 +- .../_private_link_resources_operations.py | 19 +- .../operations/_private_links_operations.py | 58 +- ...atory_compliance_assessments_operations.py | 17 +- ...gulatory_compliance_controls_operations.py | 17 +- ...ulatory_compliance_standards_operations.py | 17 +- ...re_score_control_definitions_operations.py | 17 +- .../_secure_score_controls_operations.py | 17 +- .../operations/_secure_scores_operations.py | 17 +- ...curity_connector_application_operations.py | 17 +- ...urity_connector_applications_operations.py | 11 +- .../_security_connectors_operations.py | 41 +- .../_security_contacts_operations.py | 340 - .../_security_operators_operations.py | 29 +- .../_security_solutions_operations.py | 17 +- ...ity_solutions_reference_data_operations.py | 17 +- .../_security_standards_operations.py | 25 +- .../_sensitivity_settings_operations.py | 23 +- ...ver_vulnerability_assessment_operations.py | 29 +- ...ability_assessments_settings_operations.py | 25 +- .../aio/operations/_settings_operations.py | 42 +- .../_software_inventories_operations.py | 271 - ...ty_assessment_baseline_rules_operations.py | 269 +- ...lity_assessment_scan_results_operations.py | 128 +- ...lnerability_assessment_scans_operations.py | 292 +- ...rability_assessment_settings_operations.py | 296 + .../_standard_assignments_operations.py | 25 +- ...operations.py => _standards_operations.py} | 456 +- .../operations/_sub_assessments_operations.py | 23 +- .../aio/operations/_tasks_operations.py | 5 +- .../aio/operations/_topology_operations.py | 23 +- .../_workspace_settings_operations.py | 35 +- .../azure/mgmt/security/models/__init__.py | 200 +- .../azure/mgmt/security/models/_models_py3.py | 6664 +- .../security/models/_security_center_enums.py | 241 +- .../mgmt/security/operations/__init__.py | 90 +- .../_advanced_threat_protection_operations.py | 17 +- .../security/operations/_alerts_operations.py | 95 +- .../_alerts_suppression_rules_operations.py | 29 +- .../_allowed_connections_operations.py | 23 +- .../operations/_api_collections_operations.py | 35 +- .../operations/_application_operations.py | 17 +- .../operations/_applications_operations.py | 11 +- .../_assessments_metadata_operations.py | 65 +- .../operations/_assessments_operations.py | 45 +- ...erations.py => _assignments_operations.py} | 521 +- .../_auto_provisioning_settings_operations.py | 23 +- .../operations/_automations_operations.py | 47 +- .../_azure_dev_ops_orgs_operations.py | 54 +- .../_azure_dev_ops_projects_operations.py | 45 +- .../_azure_dev_ops_repos_operations.py | 45 +- .../_compliance_results_operations.py | 17 +- .../operations/_compliances_operations.py | 17 +- .../operations/_connectors_operations.py | 453 - .../_custom_recommendations_operations.py | 25 +- .../_defender_for_storage_operations.py | 195 +- .../_dev_ops_configurations_operations.py | 56 +- .../_dev_ops_operation_results_operations.py | 14 +- .../_device_security_groups_operations.py | 29 +- ...iscovered_security_solutions_operations.py | 23 +- ..._external_security_solutions_operations.py | 23 +- .../operations/_git_hub_issues_operations.py | 334 + .../operations/_git_hub_owners_operations.py | 32 +- .../operations/_git_hub_repos_operations.py | 23 +- .../operations/_git_lab_groups_operations.py | 32 +- .../_git_lab_projects_operations.py | 23 +- .../_git_lab_subgroups_operations.py | 14 +- .../_governance_assignments_operations.py | 23 +- .../_governance_rules_operations.py | 39 +- .../operations/_health_reports_operations.py | 15 +- ...ormation_protection_policies_operations.py | 23 +- ..._security_solution_analytics_operations.py | 17 +- .../_iot_security_solution_operations.py | 41 +- ...s_analytics_aggregated_alert_operations.py | 23 +- ...ons_analytics_recommendation_operations.py | 17 +- ..._jit_network_access_policies_operations.py | 53 +- .../operations/_locations_operations.py | 5 +- .../operations/_mde_onboardings_operations.py | 17 +- .../_operation_results_operations.py | 148 + .../_operation_statuses_operations.py | 145 + .../mgmt/security/operations/_operations.py | 14 +- .../operations/_pricings_operations.py | 33 +- ...private_endpoint_connections_operations.py | 45 +- .../_private_link_resources_operations.py | 23 +- .../operations/_private_links_operations.py | 72 +- ...atory_compliance_assessments_operations.py | 17 +- ...gulatory_compliance_controls_operations.py | 17 +- ...ulatory_compliance_standards_operations.py | 17 +- ...re_score_control_definitions_operations.py | 17 +- .../_secure_score_controls_operations.py | 17 +- .../operations/_secure_scores_operations.py | 17 +- ...curity_connector_application_operations.py | 17 +- ...urity_connector_applications_operations.py | 11 +- .../_security_connectors_operations.py | 41 +- .../_security_contacts_operations.py | 463 - .../_security_operators_operations.py | 29 +- .../_security_solutions_operations.py | 17 +- ...ity_solutions_reference_data_operations.py | 17 +- .../_security_standards_operations.py | 25 +- .../_sensitivity_settings_operations.py | 23 +- ...ver_vulnerability_assessment_operations.py | 29 +- ...ability_assessments_settings_operations.py | 25 +- .../operations/_settings_operations.py | 46 +- .../_software_inventories_operations.py | 383 - ...ty_assessment_baseline_rules_operations.py | 313 +- ...lity_assessment_scan_results_operations.py | 141 +- ...lnerability_assessment_scans_operations.py | 356 +- ...rability_assessment_settings_operations.py | 369 + .../_standard_assignments_operations.py | 25 +- ...operations.py => _standards_operations.py} | 516 +- .../operations/_sub_assessments_operations.py | 23 +- .../security/operations/_tasks_operations.py | 5 +- .../operations/_topology_operations.py | 23 +- .../_workspace_settings_operations.py | 35 +- .../code_report_swagger.json | 91644 ++++++++++++++++ ...nced_threat_protection_settings_example.py | 2 +- ...nced_threat_protection_settings_example.py | 2 +- ...t_alert_resource_group_location_example.py | 2 +- ...get_alert_subscription_location_example.py | 2 +- .../get_alerts_resource_group_example.py | 2 +- ..._alerts_resource_group_location_example.py | 2 +- .../alerts/get_alerts_subscription_example.py | 2 +- ...t_alerts_subscriptions_location_example.py | 2 +- .../alerts/simulate_alerts_example.py | 2 +- ...esource_group_location_activate_example.py | 2 +- ...resource_group_location_dismiss_example.py | 2 +- ...urce_group_location_in_progress_example.py | 2 +- ...resource_group_location_resolve_example.py | 2 +- ..._subscription_location_activate_example.py | 2 +- ...t_subscription_location_dismiss_example.py | 2 +- ...bscription_location_in_progress_example.py | 2 +- ...t_subscription_location_resolve_example.py | 2 +- .../delete_alerts_suppression_rule_example.py | 2 +- .../get_alerts_suppression_rule_example.py | 2 +- .../get_alerts_suppression_rules_example.py | 2 +- ...ppression_rules_with_alert_type_example.py | 2 +- .../put_alerts_suppression_rule_example.py | 2 +- .../get_allowed_connections_example.py | 2 +- ...llowed_connections_subscription_example.py | 2 +- ...nnections_subscription_location_example.py | 2 +- ...by_azure_api_management_service_example.py | 2 +- ...by_azure_api_management_service_example.py | 2 +- ...lections_list_by_resource_group_example.py | 2 +- ...ollections_list_by_subscription_example.py | 2 +- ...fboard_azure_api_management_api_example.py | 2 +- ...nboard_azure_api_management_api_example.py | 2 +- .../delete_application_example.py | 2 +- ..._security_connector_application_example.py | 2 +- .../applications/get_application_example.py | 2 +- ..._security_connector_application_example.py | 2 +- ...security_connector_applications_example.py | 2 +- ...st_by_subscription_applications_example.py | 2 +- .../applications/put_application_example.py | 2 +- ..._security_connector_application_example.py | 2 +- .../assessments/delete_assessment_example.py | 2 +- .../assessments/get_assessment_example.py | 2 +- .../get_assessment_with_expand_example.py | 2 +- .../assessments/list_assessments_example.py | 2 +- .../assessments/put_assessment_example.py | 2 +- ...sessments_metadata_subscription_example.py | 2 +- ...sessments_metadata_subscription_example.py | 2 +- .../get_assessments_metadata_example.py | 2 +- ...sessments_metadata_subscription_example.py | 2 +- .../list_assessments_metadata_example.py | 2 +- ...sessments_metadata_subscription_example.py | 2 +- .../assignments/delete_assignment_example.py | 42 + .../assignments/get_assignment_example.py | 43 + .../assignments/list_assignments_example.py | 43 + ...ist_by_subscription_assignments_example.py | 41 + .../put_assignment_example.py} | 32 +- .../put_default_assignment_example.py | 54 + ...visioning_settings_subscription_example.py | 2 +- ...ovisioning_setting_subscription_example.py | 2 +- ...visioning_settings_subscription_example.py | 2 +- .../automations/delete_automation_example.py | 2 +- .../get_automation_resource_group_example.py | 2 +- .../get_automations_resource_group_example.py | 2 +- .../get_automations_subscription_example.py | 2 +- .../patch_automation_example.py} | 44 +- .../put_automation_all_assessments_example.py | 73 + ...ation_high_severity_assessments_example.py | 73 + .../put_disable_automation_example.py | 73 + .../validate_automation_example.py | 73 + .../get_compliance_results_example.py | 2 +- .../list_compliance_results_example.py | 2 +- .../compliances/get_compliance_example.py | 2 +- .../compliances/get_compliances_example.py | 2 +- ...dentials_connector_subscription_example.py | 61 - ...tom_entity_store_assignment_get_example.py | 43 - ...assignment_list_by_subscription_example.py | 41 - ...ent_group_custom_recommendation_example.py | 2 +- ...connector_custom_recommendation_example.py | 2 +- ...scription_custom_recommendation_example.py | 2 +- ...ent_group_custom_recommendation_example.py | 2 +- ...connector_custom_recommendation_example.py | 2 +- ...scription_custom_recommendation_example.py | 2 +- ...nt_group_custom_recommendations_example.py | 2 +- ...onnector_custom_recommendations_example.py | 2 +- ...cription_custom_recommendations_example.py | 2 +- ...ent_group_custom_recommendation_example.py | 2 +- ...connector_custom_recommendation_example.py | 2 +- ...scription_custom_recommendation_example.py | 2 +- .../cancel_malware_scan_example.py | 2 +- ...t_defender_for_storage_settings_example.py | 2 +- .../get_malware_scan_example.py | 2 +- ...t_defender_for_storage_settings_example.py | 43 + ...t_defender_for_storage_settings_example.py | 6 +- .../start_malware_scan_example.py | 2 +- .../delete_device_security_groups_example.py | 2 +- .../get_device_security_groups_example.py | 2 +- .../list_device_security_groups_example.py | 2 +- .../put_device_security_groups_example.py | 2 +- ...olution_resource_group_location_example.py | 2 +- ...security_solutions_subscription_example.py | 2 +- ...solutions_subscription_location_example.py | 2 +- .../get_external_security_solution_example.py | 2 +- ...security_solutions_subscription_example.py | 2 +- ...solutions_subscription_location_example.py | 2 +- .../delete_governance_assignment_example.py | 2 +- .../get_governance_assignment_example.py | 2 +- .../list_governance_assignments_example.py | 2 +- .../put_governance_assignment_example.py | 2 +- .../delete_governance_rule_example.py | 2 +- ...anagement_group_governance_rule_example.py | 2 +- ...urity_connector_governance_rule_example.py | 2 +- .../get_governance_rule_example.py | 2 +- ..._governance_rule_execute_status_example.py | 2 +- ...anagement_group_governance_rule_example.py | 2 +- ..._governance_rule_execute_status_example.py | 2 +- ...urity_connector_governance_rule_example.py | 2 +- ..._governance_rule_execute_status_example.py | 2 +- ...nagement_group_governance_rules_example.py | 2 +- ...rity_connector_governance_rules_example.py | 2 +- ...y_subscription_governance_rules_example.py | 2 +- .../post_governance_rule_example.py | 2 +- ...anagement_group_governance_rule_example.py | 2 +- ...urity_connector_governance_rule_example.py | 2 +- .../put_governance_rule_example.py | 2 +- ...anagement_group_governance_rule_example.py | 2 +- ...urity_connector_governance_rule_example.py | 2 +- .../get_health_reports_example.py | 2 +- .../list_health_reports_example.py | 2 +- ...e_information_protection_policy_example.py | 2 +- ...m_information_protection_policy_example.py | 2 +- ...e_information_protection_policy_example.py | 2 +- ...information_protection_policies_example.py | 2 +- .../create_io_tsecurity_solution.py | 2 +- .../delete_io_tsecurity_solution.py | 2 +- .../get_io_tsecurity_solution.py | 2 +- .../get_io_tsecurity_solutions_list.py | 2 +- ..._io_tsecurity_solutions_list_by_iot_hub.py | 2 +- ...curity_solutions_list_by_iot_hub_and_rg.py | 2 +- .../get_io_tsecurity_solutions_list_by_rg.py | 2 +- .../update_io_tsecurity_solution.py | 2 +- ...ity_solutions_security_aggregated_alert.py | 2 +- ...olutions_security_aggregated_alert_list.py | 2 +- ..._tsecurity_solutions_security_analytics.py | 2 +- ...urity_solutions_security_analytics_list.py | 2 +- ...urity_solutions_security_recommendation.py | 2 +- ..._solutions_security_recommendation_list.py | 2 +- ...tions_security_aggregated_alert_dismiss.py | 2 +- ...reate_jit_network_access_policy_example.py | 2 +- ...elete_jit_network_access_policy_example.py | 2 +- ..._access_policies_resource_group_example.py | 2 +- ...olicies_resource_group_location_example.py | 2 +- ...rk_access_policies_subscription_example.py | 2 +- ..._policies_subscription_location_example.py | 2 +- .../get_jit_network_access_policy_example.py | 2 +- ...tiate_jit_network_access_policy_example.py | 2 +- .../locations/get_location_example.py | 2 +- .../locations/get_locations_example.py | 2 +- .../get_mde_onboardings_example.py | 2 +- .../list_mde_onboardings_example.py | 2 +- .../get_operation_result.py} | 9 +- .../get_operation_status.py | 43 + .../operations/list_operations_example.py | 2 +- ...rce_pricing_by_name_containers_example.py} | 12 +- .../delete_resource_pricing_example.py | 2 +- ...t_pricing_by_name_cloud_posture_example.py | 2 +- .../get_pricing_by_name_containers_example.py | 2 +- .../get_pricing_by_name_dns_example.py | 2 +- ...ricing_by_name_storage_accounts_example.py | 2 +- ...ricing_by_name_virtual_machines_example.py | 2 +- ...rce_pricing_by_name_containers_example.py} | 12 +- ...ricing_by_name_virtual_machines_example.py | 2 +- .../pricings/list_pricings_example.py | 2 +- .../list_pricings_with_plan_filter_example.py | 2 +- .../list_resource_pricings_example.py | 2 +- .../pricings/put_pricing_by_name_example.py | 2 +- ...pricing_by_name_partial_success_example.py | 2 +- .../put_pricing_vms_by_name_example.py | 2 +- ..._pricing_by_name_containers_acr_example.py | 52 + ...rce_pricing_by_name_containers_example.py} | 37 +- ...ricing_by_name_virtual_machines_example.py | 2 +- ..._endpoint_connections_create_or_update.py} | 23 +- .../private_endpoint_connections_delete.py | 43 + .../private_endpoint_connections_get.py | 44 + .../private_endpoint_connections_list.py | 44 + .../private_link_resources_get.py | 44 + ...ate_link_resources_list_by_private_link.py | 44 + .../private_links/private_links_create.py | 48 + .../private_links/private_links_delete.py | 42 + .../private_links_get.py} | 9 +- .../private_links_head.py} | 9 +- .../private_links/private_links_list.py | 2 +- .../private_links_list_by_subscription.py | 2 +- .../private_links/private_links_update.py | 46 + ...egulatory_compliance_assessment_example.py | 2 +- ...tory_compliance_assessment_list_example.py | 2 +- ...t_regulatory_compliance_control_example.py | 2 +- ...ulatory_compliance_control_list_example.py | 2 +- ..._regulatory_compliance_standard_example.py | 2 +- ...latory_compliance_standard_list_example.py | 2 +- ...ecure_score_control_definitions_example.py | 2 +- ...ontrol_definitions_subscription_example.py | 2 +- .../get_secure_scores_single_example.py | 2 +- .../list_secure_score_controls_example.py | 2 +- ...score_controls_for_name_builtin_example.py | 2 +- ...ls_for_name_with_expand_builtin_example.py | 2 +- .../list_secure_scores_example.py | 2 +- .../delete_security_connector_example.py | 2 +- ...urity_connector_single_resource_example.py | 2 +- ...urity_connectors_resource_group_example.py | 2 +- ...ecurity_connectors_subscription_example.py | 2 +- .../patch_security_connector_example.py | 2 +- .../put_security_connector_example.py | 2 +- .../create_git_hub_issues_example.py} | 16 +- ...te_or_update_azure_dev_ops_orgs_example.py | 2 +- ...r_update_azure_dev_ops_projects_example.py | 2 +- ...e_or_update_azure_dev_ops_repos_example.py | 2 +- ...ions_onboard_current_and_future_example.py | 2 +- ...igurations_onboard_current_only_example.py | 2 +- ...configurations_onboard_selected_example.py | 2 +- ...s_with_agentless_configurations_example.py | 2 +- .../delete_dev_ops_configurations_example.py | 2 +- .../get_azure_dev_ops_orgs_example.py | 2 +- .../get_azure_dev_ops_projects_example.py | 2 +- .../get_azure_dev_ops_repos_example.py | 2 +- .../get_dev_ops_configurations_example.py | 2 +- ...s_with_agentless_configurations_example.py | 2 +- ...onfigurations_with_capabilities_example.py | 2 +- ...ev_ops_operation_results_failed_example.py | 2 +- ...ops_operation_results_succeeded_example.py | 2 +- .../get_git_hub_owners_example.py | 2 +- .../get_git_hub_repos_example.py | 2 +- .../get_git_lab_groups_example.py | 2 +- .../get_git_lab_projects_example.py | 2 +- ...st_available_azure_dev_ops_orgs_example.py | 2 +- .../list_available_git_hub_owners_example.py | 2 +- .../list_available_git_lab_groups_example.py | 2 +- .../list_azure_dev_ops_orgs_example.py | 2 +- .../list_azure_dev_ops_projects_example.py | 2 +- .../list_azure_dev_ops_repos_example.py | 2 +- .../list_dev_ops_configurations_example.py | 2 +- .../list_git_hub_owners_example.py | 2 +- .../list_git_hub_repos_example.py | 2 +- .../list_git_lab_groups_example.py | 2 +- .../list_git_lab_projects_example.py | 2 +- .../list_git_lab_subgroups_example.py | 2 +- .../update_azure_dev_ops_orgs_example.py | 2 +- .../update_azure_dev_ops_projects_example.py | 2 +- .../update_azure_dev_ops_repos_example.py | 2 +- .../update_dev_ops_configurations_example.py | 2 +- ...elete_security_operator_by_name_example.py | 2 +- .../get_security_operator_by_name_example.py | 2 +- .../list_security_operators_example.py | 2 +- .../put_security_operator_by_name_example.py | 2 +- ...lutions_resource_group_location_example.py | 2 +- ...security_solutions_subscription_example.py | 2 +- ...ons_reference_data_subscription_example.py | 2 +- ...ence_data_subscription_location_example.py | 2 +- ...agement_group_security_standard_example.py | 2 +- ...ity_connector_security_standard_example.py | 2 +- ..._subscription_security_standard_example.py | 2 +- ...agement_group_security_standard_example.py | 2 +- ...ity_connector_security_standard_example.py | 2 +- ..._subscription_security_standard_example.py | 2 +- ...gement_group_security_standards_example.py | 2 +- ...ty_connector_security_standards_example.py | 2 +- ...subscription_security_standards_example.py | 2 +- ...agement_group_security_standard_example.py | 2 +- ...ity_connector_security_standard_example.py | 2 +- ..._subscription_security_standard_example.py | 2 +- .../get_sensitivity_settings_example.py | 2 +- .../get_sensitivity_settings_list_example.py | 2 +- .../put_sensitivity_settings_example.py | 2 +- ...erver_vulnerability_assessments_example.py | 2 +- ...erver_vulnerability_assessments_example.py | 2 +- ...erver_vulnerability_assessments_example.py | 2 +- ...erver_vulnerability_assessments_example.py | 2 +- ...lnerability_assessments_setting_example.py | 2 +- ...lnerability_assessments_setting_example.py | 2 +- ...nerability_assessments_settings_example.py | 2 +- ...lnerability_assessments_setting_example.py | 2 +- .../settings/get_setting_example.py | 2 +- .../settings/get_settings_example.py | 2 +- .../settings/update_setting_example.py | 2 +- .../get_software_example.py | 46 - ...d_resource_software_inventories_example.py | 46 - ...bscription_software_inventories_example.py | 41 - .../arc_machine_baseline_rules_add.py | 3 +- .../arc_machine_baseline_rules_delete.py | 5 +- .../arc_machine_baseline_rules_get.py | 5 +- .../arc_machine_baseline_rules_list.py | 6 +- .../arc_machine_baseline_rules_put.py | 5 +- ...ql_managed_instance_baseline_rules_add.py} | 7 +- ..._managed_instance_baseline_rules_delete.py | 42 + ...sql_managed_instance_baseline_rules_get.py | 43 + ...ql_managed_instance_baseline_rules_list.py | 43 + ...ql_managed_instance_baseline_rules_put.py} | 7 +- ...ver_level_sql_server_baseline_rules_add.py | 42 + ..._level_sql_server_baseline_rules_delete.py | 42 + ...ver_level_sql_server_baseline_rules_get.py | 43 + ...er_level_sql_server_baseline_rules_list.py | 43 + ...ver_level_sql_server_baseline_rules_put.py | 43 + ...server_level_synapse_baseline_rules_add.py | 42 + ...ver_level_synapse_baseline_rules_delete.py | 42 + ...server_level_synapse_baseline_rules_get.py | 43 + ...erver_level_synapse_baseline_rules_list.py | 43 + ...server_level_synapse_baseline_rules_put.py | 43 + ...sql_managed_instance_baseline_rules_add.py | 42 + ..._managed_instance_baseline_rules_delete.py | 42 + ...sql_managed_instance_baseline_rules_get.py | 43 + ...ql_managed_instance_baseline_rules_list.py | 43 + ...sql_managed_instance_baseline_rules_put.py | 43 + .../sql_server_baseline_rules_add.py | 42 + .../sql_server_baseline_rules_delete.py | 42 + .../sql_server_baseline_rules_get.py | 43 + .../sql_server_baseline_rules_list.py | 43 + .../sql_server_baseline_rules_put.py | 43 + .../synapse_baseline_rules_add.py | 42 + .../synapse_baseline_rules_delete.py | 42 + .../synapse_baseline_rules_get.py | 43 + .../synapse_baseline_rules_list.py | 43 + .../synapse_baseline_rules_put.py | 43 + .../virtual_machine_baseline_rules_add.py | 42 + .../virtual_machine_baseline_rules_delete.py | 42 + .../virtual_machine_baseline_rules_get.py | 43 + .../virtual_machine_baseline_rules_list.py | 43 + .../virtual_machine_baseline_rules_put.py | 43 + .../arc_machine_scans_get.py | 3 +- .../arc_machine_scans_list.py | 6 +- ...r_level_sql_managed_instance_scans_get.py} | 9 +- ...nstance_scans_get_scan_operation_result.py | 43 + ...ql_managed_instance_scans_initiate_scan.py | 42 + ...r_level_sql_managed_instance_scans_list.py | 43 + .../server_level_sql_server_scans_get.py | 43 + ..._server_scans_get_scan_operation_result.py | 43 + ...er_level_sql_server_scans_initiate_scan.py | 42 + .../server_level_sql_server_scans_list.py} | 10 +- .../server_level_synapse_scans_get.py | 43 + ...synapse_scans_get_scan_operation_result.py | 43 + ...erver_level_synapse_scans_initiate_scan.py | 42 + .../server_level_synapse_scans_list.py | 43 + .../sql_managed_instance_scans_get.py | 43 + ...nstance_scans_get_scan_operation_result.py | 43 + ...ql_managed_instance_scans_initiate_scan.py | 42 + .../sql_managed_instance_scans_list.py | 43 + .../sql_server_scans_get.py | 43 + ..._server_scans_get_scan_operation_result.py | 43 + .../sql_server_scans_initiate_scan.py | 42 + .../sql_server_scans_list.py} | 10 +- .../synapse_scans_get.py | 43 + ...synapse_scans_get_scan_operation_result.py | 43 + .../synapse_scans_initiate_scan.py | 42 + .../synapse_scans_list.py} | 10 +- .../virtual_machine_scans_get.py | 43 + .../virtual_machine_scans_list.py | 43 + .../arc_machine_scan_results_get.py | 5 +- .../arc_machine_scan_results_list.py | 6 +- ..._sql_managed_instance_scan_results_get.py} | 12 +- ..._sql_managed_instance_scan_results_list.py | 44 + ...rver_level_sql_server_scan_results_get.py} | 11 +- ...rver_level_sql_server_scan_results_list.py | 44 + .../server_level_synapse_scan_results_get.py | 44 + .../server_level_synapse_scan_results_list.py | 44 + .../sql_managed_instance_scan_results_get.py | 44 + .../sql_managed_instance_scan_results_list.py | 44 + .../sql_server_scan_results_get.py | 44 + .../sql_server_scan_results_list.py | 44 + .../synapse_scan_results_get.py | 44 + .../synapse_scan_results_list.py | 44 + .../virtual_machine_scan_results_get.py | 44 + .../virtual_machine_scan_results_list.py | 44 + .../sql_managed_instance_settings_delete.py | 41 + .../sql_managed_instance_settings_get.py | 42 + .../sql_managed_instance_settings_put.py | 42 + .../sql_server_settings_delete.py | 41 + .../sql_server_settings_get.py | 42 + .../sql_server_settings_put.py | 42 + .../synapse_settings_delete.py | 41 + .../synapse_settings_get.py | 42 + .../synapse_settings_put.py | 42 + .../delete_standard_assignment.py | 2 +- .../get_standard_assignment.py | 2 +- .../list_standard_assignments.py | 2 +- .../put_exemption_standard_assignment.py | 2 +- .../put_standard_assignment.py | 2 +- .../delete_standard_example.py} | 9 +- .../standards/get_standard_example.py | 43 + ...list_by_subscription_standards_example.py} | 6 +- .../list_standards_example.py} | 8 +- .../put_standard_example.py} | 25 +- .../get_sub_assessment_example.py | 2 +- .../list_sub_assessments_example.py | 2 +- ...st_subscription_sub_assessments_example.py | 2 +- ...et_task_resource_group_location_example.py | 2 +- .../get_task_subscription_location_example.py | 2 +- ...t_tasks_resource_group_location_example.py | 2 +- .../tasks/get_tasks_subscription_example.py | 2 +- ...get_tasks_subscription_location_example.py | 2 +- ...te_task_resource_group_location_example.py | 2 +- ...date_task_subscription_location_example.py | 2 +- .../topology/get_topology_example.py | 2 +- .../get_topology_subscription_example.py | 2 +- ..._topology_subscription_location_example.py | 2 +- .../create_workspace_setting_example.py | 2 +- .../delete_workspace_setting_example.py | 2 +- .../get_workspace_setting_example.py | 2 +- .../get_workspace_settings_example.py | 2 +- .../update_workspace_setting_example.py | 2 +- ..._center_assessments_metadata_operations.py | 12 +- ...r_assessments_metadata_operations_async.py | 12 +- ..._security_center_assessments_operations.py | 8 +- ...ity_center_assessments_operations_async.py | 8 +- ..._security_center_assignments_operations.py | 102 + ...ity_center_assignments_operations_async.py | 103 + ...ty_center_azure_dev_ops_orgs_operations.py | 10 +- ...ter_azure_dev_ops_orgs_operations_async.py | 10 +- ...enter_azure_dev_ops_projects_operations.py | 8 +- ...azure_dev_ops_projects_operations_async.py | 8 +- ...y_center_azure_dev_ops_repos_operations.py | 8 +- ...er_azure_dev_ops_repos_operations_async.py | 8 +- ..._center_defender_for_storage_operations.py | 24 +- ...r_defender_for_storage_operations_async.py | 24 +- ...enter_dev_ops_configurations_operations.py | 10 +- ...dev_ops_configurations_operations_async.py | 10 +- ...er_dev_ops_operation_results_operations.py | 2 +- ..._ops_operation_results_operations_async.py | 2 +- ...curity_center_git_hub_issues_operations.py | 33 + ..._center_git_hub_issues_operations_async.py | 36 + ...curity_center_git_hub_owners_operations.py | 6 +- ..._center_git_hub_owners_operations_async.py | 6 +- ...ecurity_center_git_hub_repos_operations.py | 4 +- ...y_center_git_hub_repos_operations_async.py | 4 +- ...curity_center_git_lab_groups_operations.py | 6 +- ..._center_git_lab_groups_operations_async.py | 6 +- ...rity_center_git_lab_projects_operations.py | 4 +- ...enter_git_lab_projects_operations_async.py | 4 +- ...ity_center_git_lab_subgroups_operations.py | 2 +- ...nter_git_lab_subgroups_operations_async.py | 2 +- ...ity_center_operation_results_operations.py | 31 + ...nter_operation_results_operations_async.py | 32 + ...ty_center_operation_statuses_operations.py | 31 + ...ter_operation_statuses_operations_async.py | 32 + .../test_security_center_operations.py | 2 +- .../test_security_center_operations_async.py | 2 +- ...private_endpoint_connections_operations.py | 8 +- ...e_endpoint_connections_operations_async.py | 8 +- ...enter_private_link_resources_operations.py | 4 +- ...private_link_resources_operations_async.py | 4 +- ...ecurity_center_private_links_operations.py | 15 +- ...y_center_private_links_operations_async.py | 15 +- ...ty_assessment_baseline_rules_operations.py | 23 +- ...essment_baseline_rules_operations_async.py | 25 +- ...lity_assessment_scan_results_operations.py | 8 +- ...ssessment_scan_results_operations_async.py | 10 +- ...lnerability_assessment_scans_operations.py | 29 +- ...ility_assessment_scans_operations_async.py | 33 +- ...rability_assessment_settings_operations.py | 52 + ...ty_assessment_settings_operations_async.py | 53 + ...st_security_center_standards_operations.py | 99 + ...urity_center_standards_operations_async.py | 100 + .../azure-mgmt-security/pyproject.toml | 73 + sdk/security/azure-mgmt-security/setup.py | 83 - 634 files changed, 109002 insertions(+), 9036 deletions(-) rename sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/{_custom_assessment_automations_operations.py => _assignments_operations.py} (64%) delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_connectors_operations.py create mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_issues_operations.py create mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_results_operations.py create mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_statuses_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_contacts_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_software_inventories_operations.py create mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_settings_operations.py rename sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/{_custom_entity_store_assignments_operations.py => _standards_operations.py} (63%) rename sdk/security/azure-mgmt-security/azure/mgmt/security/operations/{_custom_entity_store_assignments_operations.py => _assignments_operations.py} (66%) delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_connectors_operations.py create mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_issues_operations.py create mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_results_operations.py create mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_statuses_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_contacts_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_software_inventories_operations.py create mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_settings_operations.py rename sdk/security/azure-mgmt-security/azure/mgmt/security/operations/{_custom_assessment_automations_operations.py => _standards_operations.py} (67%) create mode 100644 sdk/security/azure-mgmt-security/code_report_swagger.json create mode 100644 sdk/security/azure-mgmt-security/generated_samples/assignments/delete_assignment_example.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/assignments/get_assignment_example.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/assignments/list_assignments_example.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/assignments/list_by_subscription_assignments_example.py rename sdk/security/azure-mgmt-security/generated_samples/{connectors/create_update_aws_assume_role_connector_subscription_example.py => assignments/put_assignment_example.py} (58%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/assignments/put_default_assignment_example.py rename sdk/security/azure-mgmt-security/generated_samples/{custom_assessment_automations/custom_assessment_automation_create_example.py => automations/patch_automation_example.py} (52%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_all_assessments_example.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_high_severity_assessments_example.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/put_disable_automation_example.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/validate_automation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/connectors/create_update_gcp_credentials_connector_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_get_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_list_by_subscription_example.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/list_defender_for_storage_settings_example.py rename sdk/security/azure-mgmt-security/generated_samples/{security_contacts/delete_security_contact_example.py => operation_results/get_operation_result.py} (83%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/operation_statuses/get_operation_status.py rename sdk/security/azure-mgmt-security/generated_samples/{custom_entity_store_assignments/custom_entity_store_assignment_delete_example.py => pricings/delete_resource_pricing_by_name_containers_example.py} (73%) rename sdk/security/azure-mgmt-security/generated_samples/{custom_assessment_automations/custom_assessment_automation_get_example.py => pricings/get_resource_pricing_by_name_containers_example.py} (73%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_acr_example.py rename sdk/security/azure-mgmt-security/generated_samples/{connectors/create_update_aws_cred_connector_subscription_example.py => pricings/put_resource_pricing_by_name_containers_example.py} (54%) rename sdk/security/azure-mgmt-security/generated_samples/{custom_entity_store_assignments/custom_entity_store_assignment_create_example.py => private_endpoint_connections/private_endpoint_connections_create_or_update.py} (64%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_delete.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_list_by_private_link.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_create.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_delete.py rename sdk/security/azure-mgmt-security/generated_samples/{security_contacts/get_security_contact_example.py => private_links/private_links_get.py} (84%) rename sdk/security/azure-mgmt-security/generated_samples/{connectors/get_connector_subscription_example.py => private_links/private_links_head.py} (84%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_update.py rename sdk/security/azure-mgmt-security/generated_samples/{custom_assessment_automations/custom_assessment_automation_delete_example.py => security_connectors_dev_ops/create_git_hub_issues_example.py} (74%) delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/software_inventories/get_software_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/software_inventories/list_by_extended_resource_software_inventories_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/software_inventories/list_by_subscription_software_inventories_example.py rename sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/{arc_machine_baseline_rules_add_latest.py => server_level_sql_managed_instance_baseline_rules_add.py} (79%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_delete.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_list.py rename sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/{arc_machine_baseline_rules_put_latest.py => server_level_sql_managed_instance_baseline_rules_put.py} (80%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_add.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_delete.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_put.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_add.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_delete.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_put.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_add.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_delete.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_put.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_add.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_delete.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_put.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_add.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_delete.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_put.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_add.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_delete.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_put.py rename sdk/security/azure-mgmt-security/generated_samples/{sql_vulnerability_assessment_scan_operations => sql_vulnerability_assessments_scan_operations}/arc_machine_scans_get.py (90%) rename sdk/security/azure-mgmt-security/generated_samples/{sql_vulnerability_assessment_scan_operations => sql_vulnerability_assessments_scan_operations}/arc_machine_scans_list.py (88%) rename sdk/security/azure-mgmt-security/generated_samples/{sql_vulnerability_assessment_scan_operations/arc_machine_scans_get_latest.py => sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get.py} (79%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get_scan_operation_result.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_initiate_scan.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get_scan_operation_result.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_initiate_scan.py rename sdk/security/azure-mgmt-security/generated_samples/{custom_assessment_automations/custom_assessment_automation_list_by_subscription_example.py => sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_list.py} (75%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get_scan_operation_result.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_initiate_scan.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get_scan_operation_result.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_initiate_scan.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get_scan_operation_result.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_initiate_scan.py rename sdk/security/azure-mgmt-security/generated_samples/{custom_assessment_automations/custom_assessment_automation_list_by_resource_group_example.py => sql_vulnerability_assessments_scan_operations/sql_server_scans_list.py} (76%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get_scan_operation_result.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_initiate_scan.py rename sdk/security/azure-mgmt-security/generated_samples/{custom_entity_store_assignments/custom_entity_store_assignment_list_by_resource_group_example.py => sql_vulnerability_assessments_scan_operations/synapse_scans_list.py} (75%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_list.py rename sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/{arc_machine_scan_results_list_latest.py => server_level_sql_managed_instance_scan_results_get.py} (78%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_list.py rename sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/{arc_machine_scan_results_get_latest.py => server_level_sql_server_scan_results_get.py} (77%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_list.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_delete.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_put.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_delete.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_put.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_delete.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_get.py create mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_put.py rename sdk/security/azure-mgmt-security/generated_samples/{connectors/delete_connector_subscription_example.py => standards/delete_standard_example.py} (83%) create mode 100644 sdk/security/azure-mgmt-security/generated_samples/standards/get_standard_example.py rename sdk/security/azure-mgmt-security/generated_samples/{connectors/get_list_connector_subscription_example.py => standards/list_by_subscription_standards_example.py} (86%) rename sdk/security/azure-mgmt-security/generated_samples/{security_contacts/get_security_contacts_subscription_example.py => standards/list_standards_example.py} (85%) rename sdk/security/azure-mgmt-security/generated_samples/{security_contacts/create_security_contact_example.py => standards/put_standard_example.py} (66%) create mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations.py create mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations_async.py create mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations.py create mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations_async.py create mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations.py create mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations_async.py create mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations.py create mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations_async.py create mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations.py create mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations_async.py create mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations.py create mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations_async.py delete mode 100644 sdk/security/azure-mgmt-security/setup.py diff --git a/sdk/security/azure-mgmt-security/CHANGELOG.md b/sdk/security/azure-mgmt-security/CHANGELOG.md index a04a69540747..644c6ce02076 100644 --- a/sdk/security/azure-mgmt-security/CHANGELOG.md +++ b/sdk/security/azure-mgmt-security/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History +## 8.0.0b2 (2026-04-23) + +skip changelog generation + ## 8.0.0b1 (2025-08-25) ### Breaking Changes diff --git a/sdk/security/azure-mgmt-security/MANIFEST.in b/sdk/security/azure-mgmt-security/MANIFEST.in index d8c3eb1171ee..97c215e51ac0 100644 --- a/sdk/security/azure-mgmt-security/MANIFEST.in +++ b/sdk/security/azure-mgmt-security/MANIFEST.in @@ -1,7 +1,7 @@ -recursive-include tests *.py *.json -recursive-include samples *.py *.md include *.md -include azure/__init__.py -include azure/mgmt/__init__.py include LICENSE include azure/mgmt/security/py.typed +recursive-include tests *.py +recursive-include samples *.py *.md +include azure/__init__.py +include azure/mgmt/__init__.py diff --git a/sdk/security/azure-mgmt-security/_metadata.json b/sdk/security/azure-mgmt-security/_metadata.json index 6df441854665..d2791a03252a 100644 --- a/sdk/security/azure-mgmt-security/_metadata.json +++ b/sdk/security/azure-mgmt-security/_metadata.json @@ -1,11 +1,11 @@ { - "commit": "b64fe48e383ae6d6841fad0538f05dc82130ebb0", + "commit": "f25aaa2c654cc4c873be6004a83d09aecab082ad", "repository_url": "https://github.com/Azure/azure-rest-api-specs", "autorest": "3.10.2", "use": [ - "@autorest/python@6.38.2", + "@autorest/python@6.50.0", "@autorest/modelerfour@4.27.0" ], - "autorest_command": "autorest specification/security/resource-manager/readme.md --generate-sample=True --generate-test=True --include-x-ms-examples-original-file=True --keep-setup-py=True --python --python-sdks-folder=/mnt/vss/_work/1/azure-sdk-for-python/sdk --tag=package-composite-v3 --use=@autorest/python@6.38.2 --use=@autorest/modelerfour@4.27.0 --version=3.10.2 --version-tolerant=False", - "readme": "specification/security/resource-manager/readme.md" + "autorest_command": "autorest specification/security/resource-manager/Microsoft.Security/Security/readme.md --generate-sample=True --generate-test=True --include-x-ms-examples-original-file=True --package-mode=azure-mgmt --python --python-sdks-folder=/home/v-chenjiang/spec/worktrees/sdk-azure-mgmt-security/sdk --use=@autorest/python@6.50.0 --use=@autorest/modelerfour@4.27.0 --version=3.10.2 --version-tolerant=False", + "readme": "specification/security/resource-manager/Microsoft.Security/Security/readme.md" } \ No newline at end of file diff --git a/sdk/security/azure-mgmt-security/apiview-properties.json b/sdk/security/azure-mgmt-security/apiview-properties.json index 33e867a0f086..120fa2ba2641 100644 --- a/sdk/security/azure-mgmt-security/apiview-properties.json +++ b/sdk/security/azure-mgmt-security/apiview-properties.json @@ -53,17 +53,21 @@ "azure.mgmt.security.models.AssessmentStatus": null, "azure.mgmt.security.models.AssessmentStatusResponse": null, "azure.mgmt.security.models.AssignedAssessmentItem": null, + "azure.mgmt.security.models.AssignedComponentItem": null, "azure.mgmt.security.models.AssignedStandardItem": null, - "azure.mgmt.security.models.AtaExternalSecuritySolution": null, - "azure.mgmt.security.models.AtaSolutionProperties": null, - "azure.mgmt.security.models.AttestationEvidence": null, - "azure.mgmt.security.models.AuthenticationDetailsProperties": null, - "azure.mgmt.security.models.Authorization": null, + "azure.mgmt.security.models.AssignedStandardItemAutoGenerated": null, "azure.mgmt.security.models.Tags": null, "azure.mgmt.security.models.ETag": null, "azure.mgmt.security.models.Kind": null, "azure.mgmt.security.models.AzureTrackedResourceLocation": null, "azure.mgmt.security.models.TrackedResource": null, + "azure.mgmt.security.models.Assignment": null, + "azure.mgmt.security.models.AssignmentList": null, + "azure.mgmt.security.models.AssignmentPropertiesAdditionalData": null, + "azure.mgmt.security.models.AtaExternalSecuritySolution": null, + "azure.mgmt.security.models.AtaSolutionProperties": null, + "azure.mgmt.security.models.AttestationEvidence": null, + "azure.mgmt.security.models.Authorization": null, "azure.mgmt.security.models.Automation": null, "azure.mgmt.security.models.AutomationAction": null, "azure.mgmt.security.models.AutomationActionEventHub": null, @@ -78,14 +82,12 @@ "azure.mgmt.security.models.AutomationValidationStatus": null, "azure.mgmt.security.models.AutoProvisioningSetting": null, "azure.mgmt.security.models.AutoProvisioningSettingList": null, - "azure.mgmt.security.models.AwAssumeRoleAuthenticationDetailsProperties": null, - "azure.mgmt.security.models.AwsCredsAuthenticationDetailsProperties": null, "azure.mgmt.security.models.EnvironmentData": null, "azure.mgmt.security.models.AwsEnvironmentData": null, "azure.mgmt.security.models.AwsOrganizationalData": null, "azure.mgmt.security.models.AwsOrganizationalDataMaster": null, "azure.mgmt.security.models.AwsOrganizationalDataMember": null, - "azure.mgmt.security.models.ResourceAutoGenerated3": null, + "azure.mgmt.security.models.ResourceAutoGenerated": null, "azure.mgmt.security.models.ProxyResource": null, "azure.mgmt.security.models.AzureDevOpsOrg": null, "azure.mgmt.security.models.AzureDevOpsOrganizationConfiguration": null, @@ -104,7 +106,7 @@ "azure.mgmt.security.models.ResourceIdentifier": null, "azure.mgmt.security.models.AzureResourceIdentifier": null, "azure.mgmt.security.models.AzureResourceLink": null, - "azure.mgmt.security.models.ResourceAutoGenerated": null, + "azure.mgmt.security.models.ResourceAutoGenerated2": null, "azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting": null, "azure.mgmt.security.models.AzureServersSetting": null, "azure.mgmt.security.models.Baseline": null, @@ -116,7 +118,47 @@ "azure.mgmt.security.models.CategoryConfiguration": null, "azure.mgmt.security.models.CefExternalSecuritySolution": null, "azure.mgmt.security.models.CefSolutionProperties": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated10": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated11": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated12": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated13": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated14": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated15": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated16": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated17": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated18": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated19": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated2": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated20": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated3": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated4": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated5": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated6": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated7": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated8": null, + "azure.mgmt.security.models.CloudErrorAutoGenerated9": null, "azure.mgmt.security.models.CloudErrorBody": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated10": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated11": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated12": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated13": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated14": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated15": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated16": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated17": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated18": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated19": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated2": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated20": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated3": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated4": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated5": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated6": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated7": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated8": null, + "azure.mgmt.security.models.CloudErrorBodyAutoGenerated9": null, "azure.mgmt.security.models.CloudOffering": null, "azure.mgmt.security.models.Compliance": null, "azure.mgmt.security.models.ComplianceList": null, @@ -130,8 +172,6 @@ "azure.mgmt.security.models.ConnectedWorkspace": null, "azure.mgmt.security.models.ConnectionFromIpNotAllowed": null, "azure.mgmt.security.models.ConnectionToIpNotAllowed": null, - "azure.mgmt.security.models.ConnectorSetting": null, - "azure.mgmt.security.models.ConnectorSettingList": null, "azure.mgmt.security.models.ContainerRegistryVulnerabilityProperties": null, "azure.mgmt.security.models.CspmMonitorAwsOffering": null, "azure.mgmt.security.models.CspmMonitorAwsOfferingNativeCloudConnection": null, @@ -142,12 +182,6 @@ "azure.mgmt.security.models.CspmMonitorGithubOffering": null, "azure.mgmt.security.models.CspmMonitorGitLabOffering": null, "azure.mgmt.security.models.CspmMonitorJFrogOffering": null, - "azure.mgmt.security.models.CustomAssessmentAutomation": null, - "azure.mgmt.security.models.CustomAssessmentAutomationRequest": null, - "azure.mgmt.security.models.CustomAssessmentAutomationsListResult": null, - "azure.mgmt.security.models.CustomEntityStoreAssignment": null, - "azure.mgmt.security.models.CustomEntityStoreAssignmentRequest": null, - "azure.mgmt.security.models.CustomEntityStoreAssignmentsListResult": null, "azure.mgmt.security.models.CustomRecommendation": null, "azure.mgmt.security.models.CustomRecommendationsList": null, "azure.mgmt.security.models.CVE": null, @@ -214,6 +248,7 @@ "azure.mgmt.security.models.DefenderForServersGcpOfferingVaAutoProvisioningConfiguration": null, "azure.mgmt.security.models.DefenderForServersGcpOfferingVmScanners": null, "azure.mgmt.security.models.DefenderForStorageSetting": null, + "azure.mgmt.security.models.DefenderForStorageSettingList": null, "azure.mgmt.security.models.DefenderForStorageSettingProperties": null, "azure.mgmt.security.models.DenylistCustomAlertRule": null, "azure.mgmt.security.models.DeviceSecurityGroup": null, @@ -239,8 +274,8 @@ "azure.mgmt.security.models.Extension": null, "azure.mgmt.security.models.ExternalSecuritySolutionList": null, "azure.mgmt.security.models.FailedLocalLoginsNotInAllowedRange": null, + "azure.mgmt.security.models.FilesScanSummary": null, "azure.mgmt.security.models.FileUploadsNotInAllowedRange": null, - "azure.mgmt.security.models.GcpCredentialsDetailsProperties": null, "azure.mgmt.security.models.GcpOrganizationalData": null, "azure.mgmt.security.models.GcpOrganizationalDataMember": null, "azure.mgmt.security.models.GcpOrganizationalDataOrganization": null, @@ -281,7 +316,6 @@ "azure.mgmt.security.models.HttpC2DMessagesNotInAllowedRange": null, "azure.mgmt.security.models.HttpC2DRejectedMessagesNotInAllowedRange": null, "azure.mgmt.security.models.HttpD2CMessagesNotInAllowedRange": null, - "azure.mgmt.security.models.HybridComputeSettingsProperties": null, "azure.mgmt.security.models.Identity": null, "azure.mgmt.security.models.InformationProtectionKeyword": null, "azure.mgmt.security.models.InformationProtectionPolicy": null, @@ -305,6 +339,7 @@ "azure.mgmt.security.models.IoTSecuritySolutionsList": null, "azure.mgmt.security.models.IoTSeverityMetrics": null, "azure.mgmt.security.models.Issue": null, + "azure.mgmt.security.models.IssueCreationRequest": null, "azure.mgmt.security.models.JFrogEnvironmentData": null, "azure.mgmt.security.models.JitNetworkAccessPoliciesList": null, "azure.mgmt.security.models.JitNetworkAccessPolicy": null, @@ -328,9 +363,6 @@ "azure.mgmt.security.models.MqttC2DRejectedMessagesNotInAllowedRange": null, "azure.mgmt.security.models.MqttD2CMessagesNotInAllowedRange": null, "azure.mgmt.security.models.NodeIdentifier": null, - "azure.mgmt.security.models.NotificationsSource": null, - "azure.mgmt.security.models.NotificationsSourceAlert": null, - "azure.mgmt.security.models.NotificationsSourceAttackPath": null, "azure.mgmt.security.models.OnPremiseResourceDetails": null, "azure.mgmt.security.models.OnPremiseSqlResourceDetails": null, "azure.mgmt.security.models.OnUploadFilters": null, @@ -342,6 +374,7 @@ "azure.mgmt.security.models.OperationStatus": null, "azure.mgmt.security.models.OperationStatusAutoGenerated": null, "azure.mgmt.security.models.OperationStatusResult": null, + "azure.mgmt.security.models.OperationStatusResultAutoGenerated": null, "azure.mgmt.security.models.PartialAssessmentProperties": null, "azure.mgmt.security.models.Path": null, "azure.mgmt.security.models.Pricing": null, @@ -350,7 +383,7 @@ "azure.mgmt.security.models.PrivateEndpointConnection": null, "azure.mgmt.security.models.PrivateEndpointConnectionListResult": null, "azure.mgmt.security.models.PrivateLinkParameters": null, - "azure.mgmt.security.models.ResourceAutoGenerated2": null, + "azure.mgmt.security.models.ResourceAutoGenerated3": null, "azure.mgmt.security.models.TrackedResourceAutoGenerated": null, "azure.mgmt.security.models.PrivateLinkResource": null, "azure.mgmt.security.models.PrivateLinkResourceAutoGenerated": null, @@ -359,7 +392,6 @@ "azure.mgmt.security.models.PrivateLinksList": null, "azure.mgmt.security.models.PrivateLinkUpdate": null, "azure.mgmt.security.models.ProcessNotAllowed": null, - "azure.mgmt.security.models.ProxyServerProperties": null, "azure.mgmt.security.models.QueryCheck": null, "azure.mgmt.security.models.QueuePurgesNotInAllowedRange": null, "azure.mgmt.security.models.RecommendationConfigurationProperties": null, @@ -377,13 +409,13 @@ "azure.mgmt.security.models.RuleResultsProperties": null, "azure.mgmt.security.models.RulesResults": null, "azure.mgmt.security.models.RulesResultsInput": null, - "azure.mgmt.security.models.Scan": null, - "azure.mgmt.security.models.ScanProperties": null, + "azure.mgmt.security.models.ScanPropertiesV2": null, "azure.mgmt.security.models.ScanResult": null, "azure.mgmt.security.models.ScanResultProperties": null, "azure.mgmt.security.models.ScanResults": null, - "azure.mgmt.security.models.Scans": null, "azure.mgmt.security.models.ScanSummary": null, + "azure.mgmt.security.models.ScansV2": null, + "azure.mgmt.security.models.ScanV2": null, "azure.mgmt.security.models.ScopeElement": null, "azure.mgmt.security.models.SecureScoreControlDefinitionItem": null, "azure.mgmt.security.models.SecureScoreControlDefinitionList": null, @@ -412,9 +444,6 @@ "azure.mgmt.security.models.SecurityAssessmentResponse": null, "azure.mgmt.security.models.SecurityConnector": null, "azure.mgmt.security.models.SecurityConnectorsList": null, - "azure.mgmt.security.models.SecurityContact": null, - "azure.mgmt.security.models.SecurityContactList": null, - "azure.mgmt.security.models.SecurityContactPropertiesNotificationsByRole": null, "azure.mgmt.security.models.SecurityOperator": null, "azure.mgmt.security.models.SecurityOperatorList": null, "azure.mgmt.security.models.SecuritySolution": null, @@ -434,16 +463,20 @@ "azure.mgmt.security.models.ServerVulnerabilityAssessmentsList": null, "azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingsList": null, "azure.mgmt.security.models.ServerVulnerabilityProperties": null, - "azure.mgmt.security.models.ServicePrincipalProperties": null, "azure.mgmt.security.models.SettingsList": null, - "azure.mgmt.security.models.Software": null, - "azure.mgmt.security.models.SoftwaresList": null, "azure.mgmt.security.models.SqlServerVulnerabilityProperties": null, + "azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult": null, + "azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResultProperties": null, + "azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings": null, + "azure.mgmt.security.models.SqlVulnerabilityAssessmentSettingsProperties": null, + "azure.mgmt.security.models.Standard": null, "azure.mgmt.security.models.StandardAssignment": null, "azure.mgmt.security.models.StandardAssignmentMetadata": null, "azure.mgmt.security.models.StandardAssignmentPropertiesAttestationData": null, "azure.mgmt.security.models.StandardAssignmentPropertiesExemptionData": null, "azure.mgmt.security.models.StandardAssignmentsList": null, + "azure.mgmt.security.models.StandardComponentProperties": null, + "azure.mgmt.security.models.StandardList": null, "azure.mgmt.security.models.StandardMetadata": null, "azure.mgmt.security.models.StatusAutoGenerated": null, "azure.mgmt.security.models.SubAssessmentStatus": null, @@ -473,14 +506,6 @@ "azure.mgmt.security.models.Severity": null, "azure.mgmt.security.models.Source": null, "azure.mgmt.security.models.AssessedResourceType": null, - "azure.mgmt.security.models.PermissionProperty": null, - "azure.mgmt.security.models.HybridComputeProvisioningState": null, - "azure.mgmt.security.models.AuthenticationProvisioningState": null, - "azure.mgmt.security.models.AuthenticationType": null, - "azure.mgmt.security.models.EndOfSupportStatus": null, - "azure.mgmt.security.models.CreatedByType": null, - "azure.mgmt.security.models.SupportedCloudEnum": null, - "azure.mgmt.security.models.SeverityEnum": null, "azure.mgmt.security.models.GovernanceRuleType": null, "azure.mgmt.security.models.GovernanceRuleSourceResourceType": null, "azure.mgmt.security.models.GovernanceRuleOwnerSourceType": null, @@ -496,17 +521,25 @@ "azure.mgmt.security.models.Operator": null, "azure.mgmt.security.models.EventSource": null, "azure.mgmt.security.models.ActionType": null, - "azure.mgmt.security.models.SourceType": null, - "azure.mgmt.security.models.MinimalSeverity": null, - "azure.mgmt.security.models.MinimalRiskLevel": null, - "azure.mgmt.security.models.SecurityContactRole": null, "azure.mgmt.security.models.OfferingType": null, "azure.mgmt.security.models.ScanningMode": null, "azure.mgmt.security.models.Type": null, "azure.mgmt.security.models.SubPlan": null, + "azure.mgmt.security.models.CreatedByType": null, "azure.mgmt.security.models.CloudName": null, "azure.mgmt.security.models.EnvironmentType": null, "azure.mgmt.security.models.OrganizationMembershipType": null, + "azure.mgmt.security.models.AuthenticationType": null, + "azure.mgmt.security.models.RuleCategory": null, + "azure.mgmt.security.models.DevOpsProvisioningState": null, + "azure.mgmt.security.models.OnboardingState": null, + "azure.mgmt.security.models.ActionableRemediationState": null, + "azure.mgmt.security.models.AnnotateDefaultBranchState": null, + "azure.mgmt.security.models.InheritFromParentState": null, + "azure.mgmt.security.models.InventoryKind": null, + "azure.mgmt.security.models.AutoDiscovery": null, + "azure.mgmt.security.models.AgentlessEnablement": null, + "azure.mgmt.security.models.InventoryListKind": null, "azure.mgmt.security.models.Origin": null, "azure.mgmt.security.models.Tactics": null, "azure.mgmt.security.models.Techniques": null, @@ -517,9 +550,6 @@ "azure.mgmt.security.models.AssessmentType": null, "azure.mgmt.security.models.RiskLevel": null, "azure.mgmt.security.models.AssessmentStatusCode": null, - "azure.mgmt.security.models.PrivateEndpointServiceConnectionStatus": null, - "azure.mgmt.security.models.PrivateEndpointConnectionProvisioningState": null, - "azure.mgmt.security.models.ProvisioningState": null, "azure.mgmt.security.models.ResourceStatus": null, "azure.mgmt.security.models.ValueType": null, "azure.mgmt.security.models.ReportedSeverity": null, @@ -536,7 +566,7 @@ "azure.mgmt.security.models.ProtocolEnum": null, "azure.mgmt.security.models.Status": null, "azure.mgmt.security.models.StatusReason": null, - "azure.mgmt.security.models.ControlType": null, + "azure.mgmt.security.models.ProvisioningState": null, "azure.mgmt.security.models.ServerVulnerabilityAssessmentPropertiesProvisioningState": null, "azure.mgmt.security.models.ResourceIdentifierType": null, "azure.mgmt.security.models.AlertSeverity": null, @@ -557,34 +587,32 @@ "azure.mgmt.security.models.ExemptionCategory": null, "azure.mgmt.security.models.AttestationComplianceState": null, "azure.mgmt.security.models.RecommendationSupportedClouds": null, + "azure.mgmt.security.models.SeverityEnum": null, "azure.mgmt.security.models.SecurityIssue": null, - "azure.mgmt.security.models.RuleCategory": null, - "azure.mgmt.security.models.DevOpsProvisioningState": null, - "azure.mgmt.security.models.OnboardingState": null, - "azure.mgmt.security.models.ActionableRemediationState": null, - "azure.mgmt.security.models.AnnotateDefaultBranchState": null, - "azure.mgmt.security.models.InheritFromParentState": null, - "azure.mgmt.security.models.InventoryKind": null, - "azure.mgmt.security.models.AutoDiscovery": null, - "azure.mgmt.security.models.AgentlessEnablement": null, - "azure.mgmt.security.models.InventoryListKind": null, + "azure.mgmt.security.models.StandardSupportedClouds": null, + "azure.mgmt.security.models.BlobScanResultsOptions": null, + "azure.mgmt.security.models.AutomatedResponseType": null, + "azure.mgmt.security.models.PrivateEndpointServiceConnectionStatus": null, + "azure.mgmt.security.models.PrivateEndpointConnectionProvisioningState": null, + "azure.mgmt.security.models.PublicNetworkAccess": null, + "azure.mgmt.security.models.ControlType": null, "azure.mgmt.security.models.GovernanceRuleConditionOperator": null, "azure.mgmt.security.models.ApplicationConditionOperator": null, "azure.mgmt.security.models.BundleType": null, "azure.mgmt.security.models.TaskUpdateActionType": null, "azure.mgmt.security.models.InformationProtectionPolicyName": null, "azure.mgmt.security.models.OperationResult": null, - "azure.mgmt.security.models.SecurityContactName": null, - "azure.mgmt.security.models.SettingName": null, - "azure.mgmt.security.models.BlobScanResultsOptions": null, + "azure.mgmt.security.models.ScanOperationStatus": null, + "azure.mgmt.security.models.SqlVulnerabilityAssessmentState": null, "azure.mgmt.security.models.ExpandEnum": null, "azure.mgmt.security.models.ConnectionType": null, - "azure.mgmt.security.models.ExpandControlsEnum": null, "azure.mgmt.security.models.KindEnum": null, - "azure.mgmt.security.models.SettingNameAutoGenerated": null, + "azure.mgmt.security.models.SettingName": null, "azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName": null, - "azure.mgmt.security.models.AadConnectivityStateEnum": null, + "azure.mgmt.security.models.SettingNameAutoGenerated": null, + "azure.mgmt.security.models.ExpandControlsEnum": null, "azure.mgmt.security.models.DesiredOnboardingState": null, + "azure.mgmt.security.models.AadConnectivityStateEnum": null, "azure.mgmt.security.operations.LocationsOperations.list": null, "azure.mgmt.security.aio.operations.LocationsOperations.list": null, "azure.mgmt.security.operations.LocationsOperations.get": null, @@ -655,40 +683,6 @@ "azure.mgmt.security.aio.operations.SubAssessmentsOperations.list": null, "azure.mgmt.security.operations.SubAssessmentsOperations.get": null, "azure.mgmt.security.aio.operations.SubAssessmentsOperations.get": null, - "azure.mgmt.security.operations.ConnectorsOperations.list": null, - "azure.mgmt.security.aio.operations.ConnectorsOperations.list": null, - "azure.mgmt.security.operations.ConnectorsOperations.get": null, - "azure.mgmt.security.aio.operations.ConnectorsOperations.get": null, - "azure.mgmt.security.operations.ConnectorsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.ConnectorsOperations.create_or_update": null, - "azure.mgmt.security.operations.ConnectorsOperations.delete": null, - "azure.mgmt.security.aio.operations.ConnectorsOperations.delete": null, - "azure.mgmt.security.operations.SoftwareInventoriesOperations.list_by_extended_resource": null, - "azure.mgmt.security.aio.operations.SoftwareInventoriesOperations.list_by_extended_resource": null, - "azure.mgmt.security.operations.SoftwareInventoriesOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.SoftwareInventoriesOperations.list_by_subscription": null, - "azure.mgmt.security.operations.SoftwareInventoriesOperations.get": null, - "azure.mgmt.security.aio.operations.SoftwareInventoriesOperations.get": null, - "azure.mgmt.security.operations.CustomAssessmentAutomationsOperations.get": null, - "azure.mgmt.security.aio.operations.CustomAssessmentAutomationsOperations.get": null, - "azure.mgmt.security.operations.CustomAssessmentAutomationsOperations.create": null, - "azure.mgmt.security.aio.operations.CustomAssessmentAutomationsOperations.create": null, - "azure.mgmt.security.operations.CustomAssessmentAutomationsOperations.delete": null, - "azure.mgmt.security.aio.operations.CustomAssessmentAutomationsOperations.delete": null, - "azure.mgmt.security.operations.CustomAssessmentAutomationsOperations.list_by_resource_group": null, - "azure.mgmt.security.aio.operations.CustomAssessmentAutomationsOperations.list_by_resource_group": null, - "azure.mgmt.security.operations.CustomAssessmentAutomationsOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.CustomAssessmentAutomationsOperations.list_by_subscription": null, - "azure.mgmt.security.operations.CustomEntityStoreAssignmentsOperations.get": null, - "azure.mgmt.security.aio.operations.CustomEntityStoreAssignmentsOperations.get": null, - "azure.mgmt.security.operations.CustomEntityStoreAssignmentsOperations.create": null, - "azure.mgmt.security.aio.operations.CustomEntityStoreAssignmentsOperations.create": null, - "azure.mgmt.security.operations.CustomEntityStoreAssignmentsOperations.delete": null, - "azure.mgmt.security.aio.operations.CustomEntityStoreAssignmentsOperations.delete": null, - "azure.mgmt.security.operations.CustomEntityStoreAssignmentsOperations.list_by_resource_group": null, - "azure.mgmt.security.aio.operations.CustomEntityStoreAssignmentsOperations.list_by_resource_group": null, - "azure.mgmt.security.operations.CustomEntityStoreAssignmentsOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.CustomEntityStoreAssignmentsOperations.list_by_subscription": null, "azure.mgmt.security.operations.MdeOnboardingsOperations.list": null, "azure.mgmt.security.aio.operations.MdeOnboardingsOperations.list": null, "azure.mgmt.security.operations.MdeOnboardingsOperations.get": null, @@ -751,10 +745,20 @@ "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations.get": null, "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations.list": null, "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations.list": null, + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations.begin_initiate_scan": null, + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations.begin_initiate_scan": null, + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations.get_scan_operation_result": null, + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations.get_scan_operation_result": null, "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScanResultsOperations.get": null, "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScanResultsOperations.get": null, "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScanResultsOperations.list": null, "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScanResultsOperations.list": null, + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentSettingsOperations.get": null, + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentSettingsOperations.get": null, + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentSettingsOperations.create_or_update": null, + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentSettingsOperations.create_or_update": null, + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentSettingsOperations.delete": null, + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentSettingsOperations.delete": null, "azure.mgmt.security.operations.SensitivitySettingsOperations.create_or_update": null, "azure.mgmt.security.aio.operations.SensitivitySettingsOperations.create_or_update": null, "azure.mgmt.security.operations.SensitivitySettingsOperations.get": null, @@ -779,14 +783,6 @@ "azure.mgmt.security.aio.operations.AutomationsOperations.delete": null, "azure.mgmt.security.operations.AutomationsOperations.validate": null, "azure.mgmt.security.aio.operations.AutomationsOperations.validate": null, - "azure.mgmt.security.operations.SecurityContactsOperations.list": null, - "azure.mgmt.security.aio.operations.SecurityContactsOperations.list": null, - "azure.mgmt.security.operations.SecurityContactsOperations.get": null, - "azure.mgmt.security.aio.operations.SecurityContactsOperations.get": null, - "azure.mgmt.security.operations.SecurityContactsOperations.create": null, - "azure.mgmt.security.aio.operations.SecurityContactsOperations.create": null, - "azure.mgmt.security.operations.SecurityContactsOperations.delete": null, - "azure.mgmt.security.aio.operations.SecurityContactsOperations.delete": null, "azure.mgmt.security.operations.SecurityConnectorsOperations.list": null, "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.list": null, "azure.mgmt.security.operations.SecurityConnectorsOperations.list_by_resource_group": null, @@ -799,18 +795,74 @@ "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.update": null, "azure.mgmt.security.operations.SecurityConnectorsOperations.delete": null, "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.delete": null, - "azure.mgmt.security.operations.DefenderForStorageOperations.get": null, - "azure.mgmt.security.aio.operations.DefenderForStorageOperations.get": null, - "azure.mgmt.security.operations.DefenderForStorageOperations.create": null, - "azure.mgmt.security.aio.operations.DefenderForStorageOperations.create": null, - "azure.mgmt.security.operations.DefenderForStorageOperations.start_malware_scan": null, - "azure.mgmt.security.aio.operations.DefenderForStorageOperations.start_malware_scan": null, - "azure.mgmt.security.operations.DefenderForStorageOperations.cancel_malware_scan": null, - "azure.mgmt.security.aio.operations.DefenderForStorageOperations.cancel_malware_scan": null, - "azure.mgmt.security.operations.DefenderForStorageOperations.get_malware_scan": null, - "azure.mgmt.security.aio.operations.DefenderForStorageOperations.get_malware_scan": null, + "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.list_available": null, + "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.list_available": null, + "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.list": null, + "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.list": null, + "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.get": null, + "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.get": null, + "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.begin_create_or_update": null, + "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.begin_create_or_update": null, + "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.begin_update": null, + "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.begin_update": null, + "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.list": null, + "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.list": null, + "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.get": null, + "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.get": null, + "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.begin_create_or_update": null, + "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.begin_create_or_update": null, + "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.begin_update": null, + "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.begin_update": null, + "azure.mgmt.security.operations.AzureDevOpsReposOperations.list": null, + "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.list": null, + "azure.mgmt.security.operations.AzureDevOpsReposOperations.get": null, + "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.get": null, + "azure.mgmt.security.operations.AzureDevOpsReposOperations.begin_create_or_update": null, + "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.begin_create_or_update": null, + "azure.mgmt.security.operations.AzureDevOpsReposOperations.begin_update": null, + "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.begin_update": null, + "azure.mgmt.security.operations.DevOpsConfigurationsOperations.list": null, + "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.list": null, + "azure.mgmt.security.operations.DevOpsConfigurationsOperations.get": null, + "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.get": null, + "azure.mgmt.security.operations.DevOpsConfigurationsOperations.begin_create_or_update": null, + "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.begin_create_or_update": null, + "azure.mgmt.security.operations.DevOpsConfigurationsOperations.begin_update": null, + "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.begin_update": null, + "azure.mgmt.security.operations.DevOpsConfigurationsOperations.begin_delete": null, + "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.begin_delete": null, + "azure.mgmt.security.operations.GitHubOwnersOperations.list_available": null, + "azure.mgmt.security.aio.operations.GitHubOwnersOperations.list_available": null, + "azure.mgmt.security.operations.GitHubOwnersOperations.list": null, + "azure.mgmt.security.aio.operations.GitHubOwnersOperations.list": null, + "azure.mgmt.security.operations.GitHubOwnersOperations.get": null, + "azure.mgmt.security.aio.operations.GitHubOwnersOperations.get": null, + "azure.mgmt.security.operations.GitHubReposOperations.list": null, + "azure.mgmt.security.aio.operations.GitHubReposOperations.list": null, + "azure.mgmt.security.operations.GitHubReposOperations.get": null, + "azure.mgmt.security.aio.operations.GitHubReposOperations.get": null, + "azure.mgmt.security.operations.GitHubIssuesOperations.begin_create": null, + "azure.mgmt.security.aio.operations.GitHubIssuesOperations.begin_create": null, + "azure.mgmt.security.operations.GitLabGroupsOperations.list_available": null, + "azure.mgmt.security.aio.operations.GitLabGroupsOperations.list_available": null, + "azure.mgmt.security.operations.GitLabGroupsOperations.list": null, + "azure.mgmt.security.aio.operations.GitLabGroupsOperations.list": null, + "azure.mgmt.security.operations.GitLabGroupsOperations.get": null, + "azure.mgmt.security.aio.operations.GitLabGroupsOperations.get": null, + "azure.mgmt.security.operations.GitLabSubgroupsOperations.list": null, + "azure.mgmt.security.aio.operations.GitLabSubgroupsOperations.list": null, + "azure.mgmt.security.operations.GitLabProjectsOperations.list": null, + "azure.mgmt.security.aio.operations.GitLabProjectsOperations.list": null, + "azure.mgmt.security.operations.GitLabProjectsOperations.get": null, + "azure.mgmt.security.aio.operations.GitLabProjectsOperations.get": null, + "azure.mgmt.security.operations.DevOpsOperationResultsOperations.get": null, + "azure.mgmt.security.aio.operations.DevOpsOperationResultsOperations.get": null, "azure.mgmt.security.operations.Operations.list": null, "azure.mgmt.security.aio.operations.Operations.list": null, + "azure.mgmt.security.operations.OperationResultsOperations.get": null, + "azure.mgmt.security.aio.operations.OperationResultsOperations.get": null, + "azure.mgmt.security.operations.OperationStatusesOperations.get": null, + "azure.mgmt.security.aio.operations.OperationStatusesOperations.get": null, "azure.mgmt.security.operations.AssessmentsMetadataOperations.list": null, "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.list": null, "azure.mgmt.security.operations.AssessmentsMetadataOperations.get": null, @@ -831,32 +883,6 @@ "azure.mgmt.security.aio.operations.AssessmentsOperations.create_or_update": null, "azure.mgmt.security.operations.AssessmentsOperations.delete": null, "azure.mgmt.security.aio.operations.AssessmentsOperations.delete": null, - "azure.mgmt.security.operations.PrivateLinksOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.list_by_subscription": null, - "azure.mgmt.security.operations.PrivateLinksOperations.list": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.list": null, - "azure.mgmt.security.operations.PrivateLinksOperations.get": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.get": null, - "azure.mgmt.security.operations.PrivateLinksOperations.head": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.head": null, - "azure.mgmt.security.operations.PrivateLinksOperations.begin_create": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.begin_create": null, - "azure.mgmt.security.operations.PrivateLinksOperations.update": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.update": null, - "azure.mgmt.security.operations.PrivateLinksOperations.begin_delete": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.begin_delete": null, - "azure.mgmt.security.operations.PrivateLinkResourcesOperations.list": null, - "azure.mgmt.security.aio.operations.PrivateLinkResourcesOperations.list": null, - "azure.mgmt.security.operations.PrivateLinkResourcesOperations.get": null, - "azure.mgmt.security.aio.operations.PrivateLinkResourcesOperations.get": null, - "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.list": null, - "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.list": null, - "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.get": null, - "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.get": null, - "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.begin_create_or_update": null, - "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.begin_create_or_update": null, - "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.begin_delete": null, - "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.begin_delete": null, "azure.mgmt.security.operations.ComplianceResultsOperations.list": null, "azure.mgmt.security.aio.operations.ComplianceResultsOperations.list": null, "azure.mgmt.security.operations.ComplianceResultsOperations.get": null, @@ -933,18 +959,6 @@ "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.delete": null, "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.initiate": null, "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.initiate": null, - "azure.mgmt.security.operations.SecureScoresOperations.list": null, - "azure.mgmt.security.aio.operations.SecureScoresOperations.list": null, - "azure.mgmt.security.operations.SecureScoresOperations.get": null, - "azure.mgmt.security.aio.operations.SecureScoresOperations.get": null, - "azure.mgmt.security.operations.SecureScoreControlsOperations.list_by_secure_score": null, - "azure.mgmt.security.aio.operations.SecureScoreControlsOperations.list_by_secure_score": null, - "azure.mgmt.security.operations.SecureScoreControlsOperations.list": null, - "azure.mgmt.security.aio.operations.SecureScoreControlsOperations.list": null, - "azure.mgmt.security.operations.SecureScoreControlDefinitionsOperations.list": null, - "azure.mgmt.security.aio.operations.SecureScoreControlDefinitionsOperations.list": null, - "azure.mgmt.security.operations.SecureScoreControlDefinitionsOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.SecureScoreControlDefinitionsOperations.list_by_subscription": null, "azure.mgmt.security.operations.SecuritySolutionsOperations.list": null, "azure.mgmt.security.aio.operations.SecuritySolutionsOperations.list": null, "azure.mgmt.security.operations.SecuritySolutionsOperations.get": null, @@ -1055,65 +1069,75 @@ "azure.mgmt.security.aio.operations.CustomRecommendationsOperations.create_or_update": null, "azure.mgmt.security.operations.CustomRecommendationsOperations.delete": null, "azure.mgmt.security.aio.operations.CustomRecommendationsOperations.delete": null, - "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.list_available": null, - "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.list_available": null, - "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.list": null, - "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.list": null, - "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.get": null, - "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.get": null, - "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.begin_create_or_update": null, - "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.begin_create_or_update": null, - "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.begin_update": null, - "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.begin_update": null, - "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.list": null, - "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.list": null, - "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.get": null, - "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.get": null, - "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.begin_create_or_update": null, - "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.begin_create_or_update": null, - "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.begin_update": null, - "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.begin_update": null, - "azure.mgmt.security.operations.AzureDevOpsReposOperations.list": null, - "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.list": null, - "azure.mgmt.security.operations.AzureDevOpsReposOperations.get": null, - "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.get": null, - "azure.mgmt.security.operations.AzureDevOpsReposOperations.begin_create_or_update": null, - "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.begin_create_or_update": null, - "azure.mgmt.security.operations.AzureDevOpsReposOperations.begin_update": null, - "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.begin_update": null, - "azure.mgmt.security.operations.DevOpsConfigurationsOperations.list": null, - "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.list": null, - "azure.mgmt.security.operations.DevOpsConfigurationsOperations.get": null, - "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.get": null, - "azure.mgmt.security.operations.DevOpsConfigurationsOperations.begin_create_or_update": null, - "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.begin_create_or_update": null, - "azure.mgmt.security.operations.DevOpsConfigurationsOperations.begin_update": null, - "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.begin_update": null, - "azure.mgmt.security.operations.DevOpsConfigurationsOperations.begin_delete": null, - "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.begin_delete": null, - "azure.mgmt.security.operations.GitHubOwnersOperations.list_available": null, - "azure.mgmt.security.aio.operations.GitHubOwnersOperations.list_available": null, - "azure.mgmt.security.operations.GitHubOwnersOperations.list": null, - "azure.mgmt.security.aio.operations.GitHubOwnersOperations.list": null, - "azure.mgmt.security.operations.GitHubOwnersOperations.get": null, - "azure.mgmt.security.aio.operations.GitHubOwnersOperations.get": null, - "azure.mgmt.security.operations.GitHubReposOperations.list": null, - "azure.mgmt.security.aio.operations.GitHubReposOperations.list": null, - "azure.mgmt.security.operations.GitHubReposOperations.get": null, - "azure.mgmt.security.aio.operations.GitHubReposOperations.get": null, - "azure.mgmt.security.operations.GitLabGroupsOperations.list_available": null, - "azure.mgmt.security.aio.operations.GitLabGroupsOperations.list_available": null, - "azure.mgmt.security.operations.GitLabGroupsOperations.list": null, - "azure.mgmt.security.aio.operations.GitLabGroupsOperations.list": null, - "azure.mgmt.security.operations.GitLabGroupsOperations.get": null, - "azure.mgmt.security.aio.operations.GitLabGroupsOperations.get": null, - "azure.mgmt.security.operations.GitLabSubgroupsOperations.list": null, - "azure.mgmt.security.aio.operations.GitLabSubgroupsOperations.list": null, - "azure.mgmt.security.operations.GitLabProjectsOperations.list": null, - "azure.mgmt.security.aio.operations.GitLabProjectsOperations.list": null, - "azure.mgmt.security.operations.GitLabProjectsOperations.get": null, - "azure.mgmt.security.aio.operations.GitLabProjectsOperations.get": null, - "azure.mgmt.security.operations.DevOpsOperationResultsOperations.get": null, - "azure.mgmt.security.aio.operations.DevOpsOperationResultsOperations.get": null + "azure.mgmt.security.operations.StandardsOperations.list_by_subscription": null, + "azure.mgmt.security.aio.operations.StandardsOperations.list_by_subscription": null, + "azure.mgmt.security.operations.StandardsOperations.list": null, + "azure.mgmt.security.aio.operations.StandardsOperations.list": null, + "azure.mgmt.security.operations.StandardsOperations.get": null, + "azure.mgmt.security.aio.operations.StandardsOperations.get": null, + "azure.mgmt.security.operations.StandardsOperations.create_or_update": null, + "azure.mgmt.security.aio.operations.StandardsOperations.create_or_update": null, + "azure.mgmt.security.operations.StandardsOperations.delete": null, + "azure.mgmt.security.aio.operations.StandardsOperations.delete": null, + "azure.mgmt.security.operations.AssignmentsOperations.list_by_subscription": null, + "azure.mgmt.security.aio.operations.AssignmentsOperations.list_by_subscription": null, + "azure.mgmt.security.operations.AssignmentsOperations.list": null, + "azure.mgmt.security.aio.operations.AssignmentsOperations.list": null, + "azure.mgmt.security.operations.AssignmentsOperations.get": null, + "azure.mgmt.security.aio.operations.AssignmentsOperations.get": null, + "azure.mgmt.security.operations.AssignmentsOperations.create_or_update": null, + "azure.mgmt.security.aio.operations.AssignmentsOperations.create_or_update": null, + "azure.mgmt.security.operations.AssignmentsOperations.delete": null, + "azure.mgmt.security.aio.operations.AssignmentsOperations.delete": null, + "azure.mgmt.security.operations.DefenderForStorageOperations.list": null, + "azure.mgmt.security.aio.operations.DefenderForStorageOperations.list": null, + "azure.mgmt.security.operations.DefenderForStorageOperations.get": null, + "azure.mgmt.security.aio.operations.DefenderForStorageOperations.get": null, + "azure.mgmt.security.operations.DefenderForStorageOperations.create": null, + "azure.mgmt.security.aio.operations.DefenderForStorageOperations.create": null, + "azure.mgmt.security.operations.DefenderForStorageOperations.start_malware_scan": null, + "azure.mgmt.security.aio.operations.DefenderForStorageOperations.start_malware_scan": null, + "azure.mgmt.security.operations.DefenderForStorageOperations.cancel_malware_scan": null, + "azure.mgmt.security.aio.operations.DefenderForStorageOperations.cancel_malware_scan": null, + "azure.mgmt.security.operations.DefenderForStorageOperations.get_malware_scan": null, + "azure.mgmt.security.aio.operations.DefenderForStorageOperations.get_malware_scan": null, + "azure.mgmt.security.operations.PrivateLinksOperations.list_by_subscription": null, + "azure.mgmt.security.aio.operations.PrivateLinksOperations.list_by_subscription": null, + "azure.mgmt.security.operations.PrivateLinksOperations.list": null, + "azure.mgmt.security.aio.operations.PrivateLinksOperations.list": null, + "azure.mgmt.security.operations.PrivateLinksOperations.get": null, + "azure.mgmt.security.aio.operations.PrivateLinksOperations.get": null, + "azure.mgmt.security.operations.PrivateLinksOperations.head": null, + "azure.mgmt.security.aio.operations.PrivateLinksOperations.head": null, + "azure.mgmt.security.operations.PrivateLinksOperations.begin_create": null, + "azure.mgmt.security.aio.operations.PrivateLinksOperations.begin_create": null, + "azure.mgmt.security.operations.PrivateLinksOperations.update": null, + "azure.mgmt.security.aio.operations.PrivateLinksOperations.update": null, + "azure.mgmt.security.operations.PrivateLinksOperations.begin_delete": null, + "azure.mgmt.security.aio.operations.PrivateLinksOperations.begin_delete": null, + "azure.mgmt.security.operations.PrivateLinkResourcesOperations.list": null, + "azure.mgmt.security.aio.operations.PrivateLinkResourcesOperations.list": null, + "azure.mgmt.security.operations.PrivateLinkResourcesOperations.get": null, + "azure.mgmt.security.aio.operations.PrivateLinkResourcesOperations.get": null, + "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.list": null, + "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.list": null, + "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.get": null, + "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.get": null, + "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.begin_create_or_update": null, + "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.begin_create_or_update": null, + "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.begin_delete": null, + "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.begin_delete": null, + "azure.mgmt.security.operations.SecureScoresOperations.list": null, + "azure.mgmt.security.aio.operations.SecureScoresOperations.list": null, + "azure.mgmt.security.operations.SecureScoresOperations.get": null, + "azure.mgmt.security.aio.operations.SecureScoresOperations.get": null, + "azure.mgmt.security.operations.SecureScoreControlsOperations.list_by_secure_score": null, + "azure.mgmt.security.aio.operations.SecureScoreControlsOperations.list_by_secure_score": null, + "azure.mgmt.security.operations.SecureScoreControlsOperations.list": null, + "azure.mgmt.security.aio.operations.SecureScoreControlsOperations.list": null, + "azure.mgmt.security.operations.SecureScoreControlDefinitionsOperations.list": null, + "azure.mgmt.security.aio.operations.SecureScoreControlDefinitionsOperations.list": null, + "azure.mgmt.security.operations.SecureScoreControlDefinitionsOperations.list_by_subscription": null, + "azure.mgmt.security.aio.operations.SecureScoreControlDefinitionsOperations.list_by_subscription": null } } \ No newline at end of file diff --git a/sdk/security/azure-mgmt-security/azure/__init__.py b/sdk/security/azure-mgmt-security/azure/__init__.py index 8db66d3d0f0f..d55ccad1f573 100644 --- a/sdk/security/azure-mgmt-security/azure/__init__.py +++ b/sdk/security/azure-mgmt-security/azure/__init__.py @@ -1 +1 @@ -__path__ = __import__("pkgutil").extend_path(__path__, __name__) +__path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/__init__.py b/sdk/security/azure-mgmt-security/azure/mgmt/__init__.py index 8db66d3d0f0f..d55ccad1f573 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/__init__.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/__init__.py @@ -1 +1 @@ -__path__ = __import__("pkgutil").extend_path(__path__, __name__) +__path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/_configuration.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/_configuration.py index a34ecf537a42..0a2963f067ea 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/_configuration.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/_configuration.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -from typing import Any, TYPE_CHECKING +from typing import Any, Optional, TYPE_CHECKING from azure.core.pipeline import policies from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy @@ -14,6 +14,7 @@ from ._version import VERSION if TYPE_CHECKING: + from azure.core import AzureClouds from azure.core.credentials import TokenCredential @@ -27,9 +28,18 @@ class SecurityCenterConfiguration: # pylint: disable=too-many-instance-attribut :type credential: ~azure.core.credentials.TokenCredential :param subscription_id: Azure subscription ID. Required. :type subscription_id: str + :param cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is + None. + :type cloud_setting: ~azure.core.AzureClouds """ - def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any) -> None: + def __init__( + self, + credential: "TokenCredential", + subscription_id: str, + cloud_setting: Optional["AzureClouds"] = None, + **kwargs: Any + ) -> None: if credential is None: raise ValueError("Parameter 'credential' must not be None.") if subscription_id is None: @@ -37,6 +47,7 @@ def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs self.credential = credential self.subscription_id = subscription_id + self.cloud_setting = cloud_setting self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) kwargs.setdefault("sdk_moniker", "mgmt-security/{}".format(VERSION)) self.polling_interval = kwargs.get("polling_interval", 30) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/_security_center.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/_security_center.py index 94d2ca8ccc85..1ff7d1a60d36 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/_security_center.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/_security_center.py @@ -30,6 +30,7 @@ ApplicationsOperations, AssessmentsMetadataOperations, AssessmentsOperations, + AssignmentsOperations, AutoProvisioningSettingsOperations, AutomationsOperations, AzureDevOpsOrgsOperations, @@ -37,9 +38,6 @@ AzureDevOpsReposOperations, ComplianceResultsOperations, CompliancesOperations, - ConnectorsOperations, - CustomAssessmentAutomationsOperations, - CustomEntityStoreAssignmentsOperations, CustomRecommendationsOperations, DefenderForStorageOperations, DevOpsConfigurationsOperations, @@ -47,6 +45,7 @@ DeviceSecurityGroupsOperations, DiscoveredSecuritySolutionsOperations, ExternalSecuritySolutionsOperations, + GitHubIssuesOperations, GitHubOwnersOperations, GitHubReposOperations, GitLabGroupsOperations, @@ -63,6 +62,8 @@ JitNetworkAccessPoliciesOperations, LocationsOperations, MdeOnboardingsOperations, + OperationResultsOperations, + OperationStatusesOperations, Operations, PricingsOperations, PrivateEndpointConnectionsOperations, @@ -77,7 +78,6 @@ SecurityConnectorApplicationOperations, SecurityConnectorApplicationsOperations, SecurityConnectorsOperations, - SecurityContactsOperations, SecurityOperatorsOperations, SecuritySolutionsOperations, SecuritySolutionsReferenceDataOperations, @@ -86,11 +86,12 @@ ServerVulnerabilityAssessmentOperations, ServerVulnerabilityAssessmentsSettingsOperations, SettingsOperations, - SoftwareInventoriesOperations, SqlVulnerabilityAssessmentBaselineRulesOperations, SqlVulnerabilityAssessmentScanResultsOperations, SqlVulnerabilityAssessmentScansOperations, + SqlVulnerabilityAssessmentSettingsOperations, StandardAssignmentsOperations, + StandardsOperations, SubAssessmentsOperations, TasksOperations, TopologyOperations, @@ -98,6 +99,7 @@ ) if TYPE_CHECKING: + from azure.core import AzureClouds from azure.core.credentials import TokenCredential @@ -132,16 +134,6 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- azure.mgmt.security.operations.RegulatoryComplianceAssessmentsOperations :ivar sub_assessments: SubAssessmentsOperations operations :vartype sub_assessments: azure.mgmt.security.operations.SubAssessmentsOperations - :ivar connectors: ConnectorsOperations operations - :vartype connectors: azure.mgmt.security.operations.ConnectorsOperations - :ivar software_inventories: SoftwareInventoriesOperations operations - :vartype software_inventories: azure.mgmt.security.operations.SoftwareInventoriesOperations - :ivar custom_assessment_automations: CustomAssessmentAutomationsOperations operations - :vartype custom_assessment_automations: - azure.mgmt.security.operations.CustomAssessmentAutomationsOperations - :ivar custom_entity_store_assignments: CustomEntityStoreAssignmentsOperations operations - :vartype custom_entity_store_assignments: - azure.mgmt.security.operations.CustomEntityStoreAssignmentsOperations :ivar mde_onboardings: MdeOnboardingsOperations operations :vartype mde_onboardings: azure.mgmt.security.operations.MdeOnboardingsOperations :ivar governance_assignments: GovernanceAssignmentsOperations operations @@ -171,31 +163,51 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- SqlVulnerabilityAssessmentScanResultsOperations operations :vartype sql_vulnerability_assessment_scan_results: azure.mgmt.security.operations.SqlVulnerabilityAssessmentScanResultsOperations + :ivar sql_vulnerability_assessment_settings: SqlVulnerabilityAssessmentSettingsOperations + operations + :vartype sql_vulnerability_assessment_settings: + azure.mgmt.security.operations.SqlVulnerabilityAssessmentSettingsOperations :ivar sensitivity_settings: SensitivitySettingsOperations operations :vartype sensitivity_settings: azure.mgmt.security.operations.SensitivitySettingsOperations :ivar health_reports: HealthReportsOperations operations :vartype health_reports: azure.mgmt.security.operations.HealthReportsOperations :ivar automations: AutomationsOperations operations :vartype automations: azure.mgmt.security.operations.AutomationsOperations - :ivar security_contacts: SecurityContactsOperations operations - :vartype security_contacts: azure.mgmt.security.operations.SecurityContactsOperations :ivar security_connectors: SecurityConnectorsOperations operations :vartype security_connectors: azure.mgmt.security.operations.SecurityConnectorsOperations - :ivar defender_for_storage: DefenderForStorageOperations operations - :vartype defender_for_storage: azure.mgmt.security.operations.DefenderForStorageOperations + :ivar azure_dev_ops_orgs: AzureDevOpsOrgsOperations operations + :vartype azure_dev_ops_orgs: azure.mgmt.security.operations.AzureDevOpsOrgsOperations + :ivar azure_dev_ops_projects: AzureDevOpsProjectsOperations operations + :vartype azure_dev_ops_projects: azure.mgmt.security.operations.AzureDevOpsProjectsOperations + :ivar azure_dev_ops_repos: AzureDevOpsReposOperations operations + :vartype azure_dev_ops_repos: azure.mgmt.security.operations.AzureDevOpsReposOperations + :ivar dev_ops_configurations: DevOpsConfigurationsOperations operations + :vartype dev_ops_configurations: azure.mgmt.security.operations.DevOpsConfigurationsOperations + :ivar git_hub_owners: GitHubOwnersOperations operations + :vartype git_hub_owners: azure.mgmt.security.operations.GitHubOwnersOperations + :ivar git_hub_repos: GitHubReposOperations operations + :vartype git_hub_repos: azure.mgmt.security.operations.GitHubReposOperations + :ivar git_hub_issues: GitHubIssuesOperations operations + :vartype git_hub_issues: azure.mgmt.security.operations.GitHubIssuesOperations + :ivar git_lab_groups: GitLabGroupsOperations operations + :vartype git_lab_groups: azure.mgmt.security.operations.GitLabGroupsOperations + :ivar git_lab_subgroups: GitLabSubgroupsOperations operations + :vartype git_lab_subgroups: azure.mgmt.security.operations.GitLabSubgroupsOperations + :ivar git_lab_projects: GitLabProjectsOperations operations + :vartype git_lab_projects: azure.mgmt.security.operations.GitLabProjectsOperations + :ivar dev_ops_operation_results: DevOpsOperationResultsOperations operations + :vartype dev_ops_operation_results: + azure.mgmt.security.operations.DevOpsOperationResultsOperations :ivar operations: Operations operations :vartype operations: azure.mgmt.security.operations.Operations + :ivar operation_results: OperationResultsOperations operations + :vartype operation_results: azure.mgmt.security.operations.OperationResultsOperations + :ivar operation_statuses: OperationStatusesOperations operations + :vartype operation_statuses: azure.mgmt.security.operations.OperationStatusesOperations :ivar assessments_metadata: AssessmentsMetadataOperations operations :vartype assessments_metadata: azure.mgmt.security.operations.AssessmentsMetadataOperations :ivar assessments: AssessmentsOperations operations :vartype assessments: azure.mgmt.security.operations.AssessmentsOperations - :ivar private_links: PrivateLinksOperations operations - :vartype private_links: azure.mgmt.security.operations.PrivateLinksOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: azure.mgmt.security.operations.PrivateLinkResourcesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.security.operations.PrivateEndpointConnectionsOperations :ivar compliance_results: ComplianceResultsOperations operations :vartype compliance_results: azure.mgmt.security.operations.ComplianceResultsOperations :ivar advanced_threat_protection: AdvancedThreatProtectionOperations operations @@ -227,13 +239,6 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- :ivar jit_network_access_policies: JitNetworkAccessPoliciesOperations operations :vartype jit_network_access_policies: azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations - :ivar secure_scores: SecureScoresOperations operations - :vartype secure_scores: azure.mgmt.security.operations.SecureScoresOperations - :ivar secure_score_controls: SecureScoreControlsOperations operations - :vartype secure_score_controls: azure.mgmt.security.operations.SecureScoreControlsOperations - :ivar secure_score_control_definitions: SecureScoreControlDefinitionsOperations operations - :vartype secure_score_control_definitions: - azure.mgmt.security.operations.SecureScoreControlDefinitionsOperations :ivar security_solutions: SecuritySolutionsOperations operations :vartype security_solutions: azure.mgmt.security.operations.SecuritySolutionsOperations :ivar security_solutions_reference_data: SecuritySolutionsReferenceDataOperations operations @@ -262,47 +267,59 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- :vartype standard_assignments: azure.mgmt.security.operations.StandardAssignmentsOperations :ivar custom_recommendations: CustomRecommendationsOperations operations :vartype custom_recommendations: azure.mgmt.security.operations.CustomRecommendationsOperations - :ivar azure_dev_ops_orgs: AzureDevOpsOrgsOperations operations - :vartype azure_dev_ops_orgs: azure.mgmt.security.operations.AzureDevOpsOrgsOperations - :ivar azure_dev_ops_projects: AzureDevOpsProjectsOperations operations - :vartype azure_dev_ops_projects: azure.mgmt.security.operations.AzureDevOpsProjectsOperations - :ivar azure_dev_ops_repos: AzureDevOpsReposOperations operations - :vartype azure_dev_ops_repos: azure.mgmt.security.operations.AzureDevOpsReposOperations - :ivar dev_ops_configurations: DevOpsConfigurationsOperations operations - :vartype dev_ops_configurations: azure.mgmt.security.operations.DevOpsConfigurationsOperations - :ivar git_hub_owners: GitHubOwnersOperations operations - :vartype git_hub_owners: azure.mgmt.security.operations.GitHubOwnersOperations - :ivar git_hub_repos: GitHubReposOperations operations - :vartype git_hub_repos: azure.mgmt.security.operations.GitHubReposOperations - :ivar git_lab_groups: GitLabGroupsOperations operations - :vartype git_lab_groups: azure.mgmt.security.operations.GitLabGroupsOperations - :ivar git_lab_subgroups: GitLabSubgroupsOperations operations - :vartype git_lab_subgroups: azure.mgmt.security.operations.GitLabSubgroupsOperations - :ivar git_lab_projects: GitLabProjectsOperations operations - :vartype git_lab_projects: azure.mgmt.security.operations.GitLabProjectsOperations - :ivar dev_ops_operation_results: DevOpsOperationResultsOperations operations - :vartype dev_ops_operation_results: - azure.mgmt.security.operations.DevOpsOperationResultsOperations + :ivar standards: StandardsOperations operations + :vartype standards: azure.mgmt.security.operations.StandardsOperations + :ivar assignments: AssignmentsOperations operations + :vartype assignments: azure.mgmt.security.operations.AssignmentsOperations + :ivar defender_for_storage: DefenderForStorageOperations operations + :vartype defender_for_storage: azure.mgmt.security.operations.DefenderForStorageOperations + :ivar private_links: PrivateLinksOperations operations + :vartype private_links: azure.mgmt.security.operations.PrivateLinksOperations + :ivar private_link_resources: PrivateLinkResourcesOperations operations + :vartype private_link_resources: azure.mgmt.security.operations.PrivateLinkResourcesOperations + :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations + :vartype private_endpoint_connections: + azure.mgmt.security.operations.PrivateEndpointConnectionsOperations + :ivar secure_scores: SecureScoresOperations operations + :vartype secure_scores: azure.mgmt.security.operations.SecureScoresOperations + :ivar secure_score_controls: SecureScoreControlsOperations operations + :vartype secure_score_controls: azure.mgmt.security.operations.SecureScoreControlsOperations + :ivar secure_score_control_definitions: SecureScoreControlDefinitionsOperations operations + :vartype secure_score_control_definitions: + azure.mgmt.security.operations.SecureScoreControlDefinitionsOperations :param credential: Credential needed for the client to connect to Azure. Required. :type credential: ~azure.core.credentials.TokenCredential :param subscription_id: Azure subscription ID. Required. :type subscription_id: str :param base_url: Service URL. Default value is None. :type base_url: str + :keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is + None. + :paramtype cloud_setting: ~azure.core.AzureClouds :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. """ def __init__( - self, credential: "TokenCredential", subscription_id: str, base_url: Optional[str] = None, **kwargs: Any + self, + credential: "TokenCredential", + subscription_id: str, + base_url: Optional[str] = None, + *, + cloud_setting: Optional["AzureClouds"] = None, + **kwargs: Any ) -> None: - _cloud = kwargs.pop("cloud_setting", None) or settings.current.azure_cloud # type: ignore + _cloud = cloud_setting or settings.current.azure_cloud # type: ignore _endpoints = get_arm_endpoints(_cloud) if not base_url: base_url = _endpoints["resource_manager"] credential_scopes = kwargs.pop("credential_scopes", _endpoints["credential_scopes"]) self._config = SecurityCenterConfiguration( - credential=credential, subscription_id=subscription_id, credential_scopes=credential_scopes, **kwargs + credential=credential, + subscription_id=subscription_id, + cloud_setting=cloud_setting, + credential_scopes=credential_scopes, + **kwargs ) _policies = kwargs.pop("policies", None) @@ -354,16 +371,6 @@ def __init__( self._client, self._config, self._serialize, self._deserialize ) self.sub_assessments = SubAssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) - self.connectors = ConnectorsOperations(self._client, self._config, self._serialize, self._deserialize) - self.software_inventories = SoftwareInventoriesOperations( - self._client, self._config, self._serialize, self._deserialize - ) - self.custom_assessment_automations = CustomAssessmentAutomationsOperations( - self._client, self._config, self._serialize, self._deserialize - ) - self.custom_entity_store_assignments = CustomEntityStoreAssignmentsOperations( - self._client, self._config, self._serialize, self._deserialize - ) self.mde_onboardings = MdeOnboardingsOperations(self._client, self._config, self._serialize, self._deserialize) self.governance_assignments = GovernanceAssignmentsOperations( self._client, self._config, self._serialize, self._deserialize @@ -391,32 +398,51 @@ def __init__( self.sql_vulnerability_assessment_scan_results = SqlVulnerabilityAssessmentScanResultsOperations( self._client, self._config, self._serialize, self._deserialize ) + self.sql_vulnerability_assessment_settings = SqlVulnerabilityAssessmentSettingsOperations( + self._client, self._config, self._serialize, self._deserialize + ) self.sensitivity_settings = SensitivitySettingsOperations( self._client, self._config, self._serialize, self._deserialize ) self.health_reports = HealthReportsOperations(self._client, self._config, self._serialize, self._deserialize) self.automations = AutomationsOperations(self._client, self._config, self._serialize, self._deserialize) - self.security_contacts = SecurityContactsOperations( + self.security_connectors = SecurityConnectorsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.security_connectors = SecurityConnectorsOperations( + self.azure_dev_ops_orgs = AzureDevOpsOrgsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.defender_for_storage = DefenderForStorageOperations( + self.azure_dev_ops_projects = AzureDevOpsProjectsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.azure_dev_ops_repos = AzureDevOpsReposOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.dev_ops_configurations = DevOpsConfigurationsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.git_hub_owners = GitHubOwnersOperations(self._client, self._config, self._serialize, self._deserialize) + self.git_hub_repos = GitHubReposOperations(self._client, self._config, self._serialize, self._deserialize) + self.git_hub_issues = GitHubIssuesOperations(self._client, self._config, self._serialize, self._deserialize) + self.git_lab_groups = GitLabGroupsOperations(self._client, self._config, self._serialize, self._deserialize) + self.git_lab_subgroups = GitLabSubgroupsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.git_lab_projects = GitLabProjectsOperations(self._client, self._config, self._serialize, self._deserialize) + self.dev_ops_operation_results = DevOpsOperationResultsOperations( self._client, self._config, self._serialize, self._deserialize ) self.operations = Operations(self._client, self._config, self._serialize, self._deserialize) - self.assessments_metadata = AssessmentsMetadataOperations( + self.operation_results = OperationResultsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.assessments = AssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) - self.private_links = PrivateLinksOperations(self._client, self._config, self._serialize, self._deserialize) - self.private_link_resources = PrivateLinkResourcesOperations( + self.operation_statuses = OperationStatusesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( + self.assessments_metadata = AssessmentsMetadataOperations( self._client, self._config, self._serialize, self._deserialize ) + self.assessments = AssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) self.compliance_results = ComplianceResultsOperations( self._client, self._config, self._serialize, self._deserialize ) @@ -450,13 +476,6 @@ def __init__( self.jit_network_access_policies = JitNetworkAccessPoliciesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.secure_scores = SecureScoresOperations(self._client, self._config, self._serialize, self._deserialize) - self.secure_score_controls = SecureScoreControlsOperations( - self._client, self._config, self._serialize, self._deserialize - ) - self.secure_score_control_definitions = SecureScoreControlDefinitionsOperations( - self._client, self._config, self._serialize, self._deserialize - ) self.security_solutions = SecuritySolutionsOperations( self._client, self._config, self._serialize, self._deserialize ) @@ -483,26 +502,23 @@ def __init__( self.custom_recommendations = CustomRecommendationsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.azure_dev_ops_orgs = AzureDevOpsOrgsOperations( - self._client, self._config, self._serialize, self._deserialize - ) - self.azure_dev_ops_projects = AzureDevOpsProjectsOperations( + self.standards = StandardsOperations(self._client, self._config, self._serialize, self._deserialize) + self.assignments = AssignmentsOperations(self._client, self._config, self._serialize, self._deserialize) + self.defender_for_storage = DefenderForStorageOperations( self._client, self._config, self._serialize, self._deserialize ) - self.azure_dev_ops_repos = AzureDevOpsReposOperations( + self.private_links = PrivateLinksOperations(self._client, self._config, self._serialize, self._deserialize) + self.private_link_resources = PrivateLinkResourcesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.dev_ops_configurations = DevOpsConfigurationsOperations( + self.private_endpoint_connections = PrivateEndpointConnectionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.git_hub_owners = GitHubOwnersOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_hub_repos = GitHubReposOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_lab_groups = GitLabGroupsOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_lab_subgroups = GitLabSubgroupsOperations( + self.secure_scores = SecureScoresOperations(self._client, self._config, self._serialize, self._deserialize) + self.secure_score_controls = SecureScoreControlsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.git_lab_projects = GitLabProjectsOperations(self._client, self._config, self._serialize, self._deserialize) - self.dev_ops_operation_results = DevOpsOperationResultsOperations( + self.secure_score_control_definitions = SecureScoreControlDefinitionsOperations( self._client, self._config, self._serialize, self._deserialize ) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/serialization.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/serialization.py index f5187701d7be..6da830e0cf4a 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/serialization.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/serialization.py @@ -21,7 +21,6 @@ import sys import codecs from typing import ( - Dict, Any, cast, Optional, @@ -31,7 +30,6 @@ Mapping, Callable, MutableMapping, - List, ) try: @@ -229,12 +227,12 @@ class Model: serialization and deserialization. """ - _subtype_map: Dict[str, Dict[str, Any]] = {} - _attribute_map: Dict[str, Dict[str, Any]] = {} - _validation: Dict[str, Dict[str, Any]] = {} + _subtype_map: dict[str, dict[str, Any]] = {} + _attribute_map: dict[str, dict[str, Any]] = {} + _validation: dict[str, dict[str, Any]] = {} def __init__(self, **kwargs: Any) -> None: - self.additional_properties: Optional[Dict[str, Any]] = {} + self.additional_properties: Optional[dict[str, Any]] = {} for k in kwargs: # pylint: disable=consider-using-dict-items if k not in self._attribute_map: _LOGGER.warning("%s is not a known attribute of class %s and will be ignored", k, self.__class__) @@ -311,7 +309,7 @@ def serialize(self, keep_readonly: bool = False, **kwargs: Any) -> JSON: def as_dict( self, keep_readonly: bool = True, - key_transformer: Callable[[str, Dict[str, Any], Any], Any] = attribute_transformer, + key_transformer: Callable[[str, dict[str, Any], Any], Any] = attribute_transformer, **kwargs: Any ) -> JSON: """Return a dict that can be serialized using json.dump. @@ -380,7 +378,7 @@ def deserialize(cls, data: Any, content_type: Optional[str] = None) -> Self: def from_dict( cls, data: Any, - key_extractors: Optional[Callable[[str, Dict[str, Any], Any], Any]] = None, + key_extractors: Optional[Callable[[str, dict[str, Any], Any], Any]] = None, content_type: Optional[str] = None, ) -> Self: """Parse a dict using given key extractor return a model. @@ -414,7 +412,7 @@ def _flatten_subtype(cls, key, objects): return {} result = dict(cls._subtype_map[key]) for valuetype in cls._subtype_map[key].values(): - result.update(objects[valuetype]._flatten_subtype(key, objects)) # pylint: disable=protected-access + result |= objects[valuetype]._flatten_subtype(key, objects) # pylint: disable=protected-access return result @classmethod @@ -528,7 +526,7 @@ def __init__(self, classes: Optional[Mapping[str, type]] = None) -> None: "[]": self.serialize_iter, "{}": self.serialize_dict, } - self.dependencies: Dict[str, type] = dict(classes) if classes else {} + self.dependencies: dict[str, type] = dict(classes) if classes else {} self.key_transformer = full_restapi_key_transformer self.client_side_validation = True @@ -579,7 +577,7 @@ def _serialize( # pylint: disable=too-many-nested-blocks, too-many-branches, to if attr_name == "additional_properties" and attr_desc["key"] == "": if target_obj.additional_properties is not None: - serialized.update(target_obj.additional_properties) + serialized |= target_obj.additional_properties continue try: @@ -789,7 +787,7 @@ def serialize_data(self, data, data_type, **kwargs): # If dependencies is empty, try with current data class # It has to be a subclass of Enum anyway - enum_type = self.dependencies.get(data_type, data.__class__) + enum_type = self.dependencies.get(data_type, cast(type, data.__class__)) if issubclass(enum_type, Enum): return Serializer.serialize_enum(data, enum_obj=enum_type) @@ -823,13 +821,20 @@ def serialize_basic(cls, data, data_type, **kwargs): :param str data_type: Type of object in the iterable. :rtype: str, int, float, bool :return: serialized object + :raises TypeError: raise if data_type is not one of str, int, float, bool. """ custom_serializer = cls._get_custom_serializers(data_type, **kwargs) if custom_serializer: return custom_serializer(data) if data_type == "str": return cls.serialize_unicode(data) - return eval(data_type)(data) # nosec # pylint: disable=eval-used + if data_type == "int": + return int(data) + if data_type == "float": + return float(data) + if data_type == "bool": + return bool(data) + raise TypeError("Unknown basic data type: {}".format(data_type)) @classmethod def serialize_unicode(cls, data): @@ -1184,7 +1189,7 @@ def rest_key_extractor(attr, attr_desc, data): # pylint: disable=unused-argumen while "." in key: # Need the cast, as for some reasons "split" is typed as list[str | Any] - dict_keys = cast(List[str], _FLATTEN.split(key)) + dict_keys = cast(list[str], _FLATTEN.split(key)) if len(dict_keys) == 1: key = _decode_attribute_map_key(dict_keys[0]) break @@ -1386,7 +1391,7 @@ def __init__(self, classes: Optional[Mapping[str, type]] = None) -> None: "duration": (isodate.Duration, datetime.timedelta), "iso-8601": (datetime.datetime), } - self.dependencies: Dict[str, type] = dict(classes) if classes else {} + self.dependencies: dict[str, type] = dict(classes) if classes else {} self.key_extractors = [rest_key_extractor, xml_key_extractor] # Additional properties only works if the "rest_key_extractor" is used to # extract the keys. Making it to work whatever the key extractor is too much @@ -1759,7 +1764,7 @@ def deserialize_basic(self, attr, data_type): # pylint: disable=too-many-return :param str data_type: deserialization data type. :return: Deserialized basic type. :rtype: str, int, float or bool - :raises TypeError: if string format is not valid. + :raises TypeError: if string format is not valid or data_type is not one of str, int, float, bool. """ # If we're here, data is supposed to be a basic type. # If it's still an XML node, take the text @@ -1785,7 +1790,11 @@ def deserialize_basic(self, attr, data_type): # pylint: disable=too-many-return if data_type == "str": return self.deserialize_unicode(attr) - return eval(data_type)(attr) # nosec # pylint: disable=eval-used + if data_type == "int": + return int(attr) + if data_type == "float": + return float(attr) + raise TypeError("Unknown basic data type: {}".format(data_type)) @staticmethod def deserialize_unicode(data): diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/_version.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/_version.py index 82b28d01aba7..11a0f11e9cf7 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/_version.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/_version.py @@ -5,4 +5,4 @@ # license information. # -------------------------------------------------------------------------- -VERSION = "8.0.0b1" +VERSION = "8.0.0b2" diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_configuration.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_configuration.py index a05605c8d931..b304df95a16b 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_configuration.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_configuration.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -from typing import Any, TYPE_CHECKING +from typing import Any, Optional, TYPE_CHECKING from azure.core.pipeline import policies from azure.mgmt.core.policies import ARMHttpLoggingPolicy, AsyncARMChallengeAuthenticationPolicy @@ -14,6 +14,7 @@ from .._version import VERSION if TYPE_CHECKING: + from azure.core import AzureClouds from azure.core.credentials_async import AsyncTokenCredential @@ -27,9 +28,18 @@ class SecurityCenterConfiguration: # pylint: disable=too-many-instance-attribut :type credential: ~azure.core.credentials_async.AsyncTokenCredential :param subscription_id: Azure subscription ID. Required. :type subscription_id: str + :param cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is + None. + :type cloud_setting: ~azure.core.AzureClouds """ - def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **kwargs: Any) -> None: + def __init__( + self, + credential: "AsyncTokenCredential", + subscription_id: str, + cloud_setting: Optional["AzureClouds"] = None, + **kwargs: Any + ) -> None: if credential is None: raise ValueError("Parameter 'credential' must not be None.") if subscription_id is None: @@ -37,6 +47,7 @@ def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **k self.credential = credential self.subscription_id = subscription_id + self.cloud_setting = cloud_setting self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) kwargs.setdefault("sdk_moniker", "mgmt-security/{}".format(VERSION)) self.polling_interval = kwargs.get("polling_interval", 30) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_security_center.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_security_center.py index dea2813e28f4..68d6f9db4fab 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_security_center.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_security_center.py @@ -30,6 +30,7 @@ ApplicationsOperations, AssessmentsMetadataOperations, AssessmentsOperations, + AssignmentsOperations, AutoProvisioningSettingsOperations, AutomationsOperations, AzureDevOpsOrgsOperations, @@ -37,9 +38,6 @@ AzureDevOpsReposOperations, ComplianceResultsOperations, CompliancesOperations, - ConnectorsOperations, - CustomAssessmentAutomationsOperations, - CustomEntityStoreAssignmentsOperations, CustomRecommendationsOperations, DefenderForStorageOperations, DevOpsConfigurationsOperations, @@ -47,6 +45,7 @@ DeviceSecurityGroupsOperations, DiscoveredSecuritySolutionsOperations, ExternalSecuritySolutionsOperations, + GitHubIssuesOperations, GitHubOwnersOperations, GitHubReposOperations, GitLabGroupsOperations, @@ -63,6 +62,8 @@ JitNetworkAccessPoliciesOperations, LocationsOperations, MdeOnboardingsOperations, + OperationResultsOperations, + OperationStatusesOperations, Operations, PricingsOperations, PrivateEndpointConnectionsOperations, @@ -77,7 +78,6 @@ SecurityConnectorApplicationOperations, SecurityConnectorApplicationsOperations, SecurityConnectorsOperations, - SecurityContactsOperations, SecurityOperatorsOperations, SecuritySolutionsOperations, SecuritySolutionsReferenceDataOperations, @@ -86,11 +86,12 @@ ServerVulnerabilityAssessmentOperations, ServerVulnerabilityAssessmentsSettingsOperations, SettingsOperations, - SoftwareInventoriesOperations, SqlVulnerabilityAssessmentBaselineRulesOperations, SqlVulnerabilityAssessmentScanResultsOperations, SqlVulnerabilityAssessmentScansOperations, + SqlVulnerabilityAssessmentSettingsOperations, StandardAssignmentsOperations, + StandardsOperations, SubAssessmentsOperations, TasksOperations, TopologyOperations, @@ -98,6 +99,7 @@ ) if TYPE_CHECKING: + from azure.core import AzureClouds from azure.core.credentials_async import AsyncTokenCredential @@ -132,16 +134,6 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- azure.mgmt.security.aio.operations.RegulatoryComplianceAssessmentsOperations :ivar sub_assessments: SubAssessmentsOperations operations :vartype sub_assessments: azure.mgmt.security.aio.operations.SubAssessmentsOperations - :ivar connectors: ConnectorsOperations operations - :vartype connectors: azure.mgmt.security.aio.operations.ConnectorsOperations - :ivar software_inventories: SoftwareInventoriesOperations operations - :vartype software_inventories: azure.mgmt.security.aio.operations.SoftwareInventoriesOperations - :ivar custom_assessment_automations: CustomAssessmentAutomationsOperations operations - :vartype custom_assessment_automations: - azure.mgmt.security.aio.operations.CustomAssessmentAutomationsOperations - :ivar custom_entity_store_assignments: CustomEntityStoreAssignmentsOperations operations - :vartype custom_entity_store_assignments: - azure.mgmt.security.aio.operations.CustomEntityStoreAssignmentsOperations :ivar mde_onboardings: MdeOnboardingsOperations operations :vartype mde_onboardings: azure.mgmt.security.aio.operations.MdeOnboardingsOperations :ivar governance_assignments: GovernanceAssignmentsOperations operations @@ -172,32 +164,53 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- SqlVulnerabilityAssessmentScanResultsOperations operations :vartype sql_vulnerability_assessment_scan_results: azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScanResultsOperations + :ivar sql_vulnerability_assessment_settings: SqlVulnerabilityAssessmentSettingsOperations + operations + :vartype sql_vulnerability_assessment_settings: + azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentSettingsOperations :ivar sensitivity_settings: SensitivitySettingsOperations operations :vartype sensitivity_settings: azure.mgmt.security.aio.operations.SensitivitySettingsOperations :ivar health_reports: HealthReportsOperations operations :vartype health_reports: azure.mgmt.security.aio.operations.HealthReportsOperations :ivar automations: AutomationsOperations operations :vartype automations: azure.mgmt.security.aio.operations.AutomationsOperations - :ivar security_contacts: SecurityContactsOperations operations - :vartype security_contacts: azure.mgmt.security.aio.operations.SecurityContactsOperations :ivar security_connectors: SecurityConnectorsOperations operations :vartype security_connectors: azure.mgmt.security.aio.operations.SecurityConnectorsOperations - :ivar defender_for_storage: DefenderForStorageOperations operations - :vartype defender_for_storage: azure.mgmt.security.aio.operations.DefenderForStorageOperations + :ivar azure_dev_ops_orgs: AzureDevOpsOrgsOperations operations + :vartype azure_dev_ops_orgs: azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations + :ivar azure_dev_ops_projects: AzureDevOpsProjectsOperations operations + :vartype azure_dev_ops_projects: + azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations + :ivar azure_dev_ops_repos: AzureDevOpsReposOperations operations + :vartype azure_dev_ops_repos: azure.mgmt.security.aio.operations.AzureDevOpsReposOperations + :ivar dev_ops_configurations: DevOpsConfigurationsOperations operations + :vartype dev_ops_configurations: + azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations + :ivar git_hub_owners: GitHubOwnersOperations operations + :vartype git_hub_owners: azure.mgmt.security.aio.operations.GitHubOwnersOperations + :ivar git_hub_repos: GitHubReposOperations operations + :vartype git_hub_repos: azure.mgmt.security.aio.operations.GitHubReposOperations + :ivar git_hub_issues: GitHubIssuesOperations operations + :vartype git_hub_issues: azure.mgmt.security.aio.operations.GitHubIssuesOperations + :ivar git_lab_groups: GitLabGroupsOperations operations + :vartype git_lab_groups: azure.mgmt.security.aio.operations.GitLabGroupsOperations + :ivar git_lab_subgroups: GitLabSubgroupsOperations operations + :vartype git_lab_subgroups: azure.mgmt.security.aio.operations.GitLabSubgroupsOperations + :ivar git_lab_projects: GitLabProjectsOperations operations + :vartype git_lab_projects: azure.mgmt.security.aio.operations.GitLabProjectsOperations + :ivar dev_ops_operation_results: DevOpsOperationResultsOperations operations + :vartype dev_ops_operation_results: + azure.mgmt.security.aio.operations.DevOpsOperationResultsOperations :ivar operations: Operations operations :vartype operations: azure.mgmt.security.aio.operations.Operations + :ivar operation_results: OperationResultsOperations operations + :vartype operation_results: azure.mgmt.security.aio.operations.OperationResultsOperations + :ivar operation_statuses: OperationStatusesOperations operations + :vartype operation_statuses: azure.mgmt.security.aio.operations.OperationStatusesOperations :ivar assessments_metadata: AssessmentsMetadataOperations operations :vartype assessments_metadata: azure.mgmt.security.aio.operations.AssessmentsMetadataOperations :ivar assessments: AssessmentsOperations operations :vartype assessments: azure.mgmt.security.aio.operations.AssessmentsOperations - :ivar private_links: PrivateLinksOperations operations - :vartype private_links: azure.mgmt.security.aio.operations.PrivateLinksOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.security.aio.operations.PrivateLinkResourcesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations :ivar compliance_results: ComplianceResultsOperations operations :vartype compliance_results: azure.mgmt.security.aio.operations.ComplianceResultsOperations :ivar advanced_threat_protection: AdvancedThreatProtectionOperations operations @@ -231,14 +244,6 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- :ivar jit_network_access_policies: JitNetworkAccessPoliciesOperations operations :vartype jit_network_access_policies: azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations - :ivar secure_scores: SecureScoresOperations operations - :vartype secure_scores: azure.mgmt.security.aio.operations.SecureScoresOperations - :ivar secure_score_controls: SecureScoreControlsOperations operations - :vartype secure_score_controls: - azure.mgmt.security.aio.operations.SecureScoreControlsOperations - :ivar secure_score_control_definitions: SecureScoreControlDefinitionsOperations operations - :vartype secure_score_control_definitions: - azure.mgmt.security.aio.operations.SecureScoreControlDefinitionsOperations :ivar security_solutions: SecuritySolutionsOperations operations :vartype security_solutions: azure.mgmt.security.aio.operations.SecuritySolutionsOperations :ivar security_solutions_reference_data: SecuritySolutionsReferenceDataOperations operations @@ -268,49 +273,61 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- :ivar custom_recommendations: CustomRecommendationsOperations operations :vartype custom_recommendations: azure.mgmt.security.aio.operations.CustomRecommendationsOperations - :ivar azure_dev_ops_orgs: AzureDevOpsOrgsOperations operations - :vartype azure_dev_ops_orgs: azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations - :ivar azure_dev_ops_projects: AzureDevOpsProjectsOperations operations - :vartype azure_dev_ops_projects: - azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations - :ivar azure_dev_ops_repos: AzureDevOpsReposOperations operations - :vartype azure_dev_ops_repos: azure.mgmt.security.aio.operations.AzureDevOpsReposOperations - :ivar dev_ops_configurations: DevOpsConfigurationsOperations operations - :vartype dev_ops_configurations: - azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations - :ivar git_hub_owners: GitHubOwnersOperations operations - :vartype git_hub_owners: azure.mgmt.security.aio.operations.GitHubOwnersOperations - :ivar git_hub_repos: GitHubReposOperations operations - :vartype git_hub_repos: azure.mgmt.security.aio.operations.GitHubReposOperations - :ivar git_lab_groups: GitLabGroupsOperations operations - :vartype git_lab_groups: azure.mgmt.security.aio.operations.GitLabGroupsOperations - :ivar git_lab_subgroups: GitLabSubgroupsOperations operations - :vartype git_lab_subgroups: azure.mgmt.security.aio.operations.GitLabSubgroupsOperations - :ivar git_lab_projects: GitLabProjectsOperations operations - :vartype git_lab_projects: azure.mgmt.security.aio.operations.GitLabProjectsOperations - :ivar dev_ops_operation_results: DevOpsOperationResultsOperations operations - :vartype dev_ops_operation_results: - azure.mgmt.security.aio.operations.DevOpsOperationResultsOperations + :ivar standards: StandardsOperations operations + :vartype standards: azure.mgmt.security.aio.operations.StandardsOperations + :ivar assignments: AssignmentsOperations operations + :vartype assignments: azure.mgmt.security.aio.operations.AssignmentsOperations + :ivar defender_for_storage: DefenderForStorageOperations operations + :vartype defender_for_storage: azure.mgmt.security.aio.operations.DefenderForStorageOperations + :ivar private_links: PrivateLinksOperations operations + :vartype private_links: azure.mgmt.security.aio.operations.PrivateLinksOperations + :ivar private_link_resources: PrivateLinkResourcesOperations operations + :vartype private_link_resources: + azure.mgmt.security.aio.operations.PrivateLinkResourcesOperations + :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations + :vartype private_endpoint_connections: + azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations + :ivar secure_scores: SecureScoresOperations operations + :vartype secure_scores: azure.mgmt.security.aio.operations.SecureScoresOperations + :ivar secure_score_controls: SecureScoreControlsOperations operations + :vartype secure_score_controls: + azure.mgmt.security.aio.operations.SecureScoreControlsOperations + :ivar secure_score_control_definitions: SecureScoreControlDefinitionsOperations operations + :vartype secure_score_control_definitions: + azure.mgmt.security.aio.operations.SecureScoreControlDefinitionsOperations :param credential: Credential needed for the client to connect to Azure. Required. :type credential: ~azure.core.credentials_async.AsyncTokenCredential :param subscription_id: Azure subscription ID. Required. :type subscription_id: str :param base_url: Service URL. Default value is None. :type base_url: str + :keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is + None. + :paramtype cloud_setting: ~azure.core.AzureClouds :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. """ def __init__( - self, credential: "AsyncTokenCredential", subscription_id: str, base_url: Optional[str] = None, **kwargs: Any + self, + credential: "AsyncTokenCredential", + subscription_id: str, + base_url: Optional[str] = None, + *, + cloud_setting: Optional["AzureClouds"] = None, + **kwargs: Any ) -> None: - _cloud = kwargs.pop("cloud_setting", None) or settings.current.azure_cloud # type: ignore + _cloud = cloud_setting or settings.current.azure_cloud # type: ignore _endpoints = get_arm_endpoints(_cloud) if not base_url: base_url = _endpoints["resource_manager"] credential_scopes = kwargs.pop("credential_scopes", _endpoints["credential_scopes"]) self._config = SecurityCenterConfiguration( - credential=credential, subscription_id=subscription_id, credential_scopes=credential_scopes, **kwargs + credential=credential, + subscription_id=subscription_id, + cloud_setting=cloud_setting, + credential_scopes=credential_scopes, + **kwargs ) _policies = kwargs.pop("policies", None) @@ -364,16 +381,6 @@ def __init__( self._client, self._config, self._serialize, self._deserialize ) self.sub_assessments = SubAssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) - self.connectors = ConnectorsOperations(self._client, self._config, self._serialize, self._deserialize) - self.software_inventories = SoftwareInventoriesOperations( - self._client, self._config, self._serialize, self._deserialize - ) - self.custom_assessment_automations = CustomAssessmentAutomationsOperations( - self._client, self._config, self._serialize, self._deserialize - ) - self.custom_entity_store_assignments = CustomEntityStoreAssignmentsOperations( - self._client, self._config, self._serialize, self._deserialize - ) self.mde_onboardings = MdeOnboardingsOperations(self._client, self._config, self._serialize, self._deserialize) self.governance_assignments = GovernanceAssignmentsOperations( self._client, self._config, self._serialize, self._deserialize @@ -401,32 +408,51 @@ def __init__( self.sql_vulnerability_assessment_scan_results = SqlVulnerabilityAssessmentScanResultsOperations( self._client, self._config, self._serialize, self._deserialize ) + self.sql_vulnerability_assessment_settings = SqlVulnerabilityAssessmentSettingsOperations( + self._client, self._config, self._serialize, self._deserialize + ) self.sensitivity_settings = SensitivitySettingsOperations( self._client, self._config, self._serialize, self._deserialize ) self.health_reports = HealthReportsOperations(self._client, self._config, self._serialize, self._deserialize) self.automations = AutomationsOperations(self._client, self._config, self._serialize, self._deserialize) - self.security_contacts = SecurityContactsOperations( + self.security_connectors = SecurityConnectorsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.security_connectors = SecurityConnectorsOperations( + self.azure_dev_ops_orgs = AzureDevOpsOrgsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.defender_for_storage = DefenderForStorageOperations( + self.azure_dev_ops_projects = AzureDevOpsProjectsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.azure_dev_ops_repos = AzureDevOpsReposOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.dev_ops_configurations = DevOpsConfigurationsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.git_hub_owners = GitHubOwnersOperations(self._client, self._config, self._serialize, self._deserialize) + self.git_hub_repos = GitHubReposOperations(self._client, self._config, self._serialize, self._deserialize) + self.git_hub_issues = GitHubIssuesOperations(self._client, self._config, self._serialize, self._deserialize) + self.git_lab_groups = GitLabGroupsOperations(self._client, self._config, self._serialize, self._deserialize) + self.git_lab_subgroups = GitLabSubgroupsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.git_lab_projects = GitLabProjectsOperations(self._client, self._config, self._serialize, self._deserialize) + self.dev_ops_operation_results = DevOpsOperationResultsOperations( self._client, self._config, self._serialize, self._deserialize ) self.operations = Operations(self._client, self._config, self._serialize, self._deserialize) - self.assessments_metadata = AssessmentsMetadataOperations( + self.operation_results = OperationResultsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.assessments = AssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) - self.private_links = PrivateLinksOperations(self._client, self._config, self._serialize, self._deserialize) - self.private_link_resources = PrivateLinkResourcesOperations( + self.operation_statuses = OperationStatusesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( + self.assessments_metadata = AssessmentsMetadataOperations( self._client, self._config, self._serialize, self._deserialize ) + self.assessments = AssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) self.compliance_results = ComplianceResultsOperations( self._client, self._config, self._serialize, self._deserialize ) @@ -460,13 +486,6 @@ def __init__( self.jit_network_access_policies = JitNetworkAccessPoliciesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.secure_scores = SecureScoresOperations(self._client, self._config, self._serialize, self._deserialize) - self.secure_score_controls = SecureScoreControlsOperations( - self._client, self._config, self._serialize, self._deserialize - ) - self.secure_score_control_definitions = SecureScoreControlDefinitionsOperations( - self._client, self._config, self._serialize, self._deserialize - ) self.security_solutions = SecuritySolutionsOperations( self._client, self._config, self._serialize, self._deserialize ) @@ -493,26 +512,23 @@ def __init__( self.custom_recommendations = CustomRecommendationsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.azure_dev_ops_orgs = AzureDevOpsOrgsOperations( - self._client, self._config, self._serialize, self._deserialize - ) - self.azure_dev_ops_projects = AzureDevOpsProjectsOperations( + self.standards = StandardsOperations(self._client, self._config, self._serialize, self._deserialize) + self.assignments = AssignmentsOperations(self._client, self._config, self._serialize, self._deserialize) + self.defender_for_storage = DefenderForStorageOperations( self._client, self._config, self._serialize, self._deserialize ) - self.azure_dev_ops_repos = AzureDevOpsReposOperations( + self.private_links = PrivateLinksOperations(self._client, self._config, self._serialize, self._deserialize) + self.private_link_resources = PrivateLinkResourcesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.dev_ops_configurations = DevOpsConfigurationsOperations( + self.private_endpoint_connections = PrivateEndpointConnectionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.git_hub_owners = GitHubOwnersOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_hub_repos = GitHubReposOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_lab_groups = GitLabGroupsOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_lab_subgroups = GitLabSubgroupsOperations( + self.secure_scores = SecureScoresOperations(self._client, self._config, self._serialize, self._deserialize) + self.secure_score_controls = SecureScoreControlsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.git_lab_projects = GitLabProjectsOperations(self._client, self._config, self._serialize, self._deserialize) - self.dev_ops_operation_results = DevOpsOperationResultsOperations( + self.secure_score_control_definitions = SecureScoreControlDefinitionsOperations( self._client, self._config, self._serialize, self._deserialize ) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/__init__.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/__init__.py index 7cefa0cf68cd..c6ccdcb6b3c4 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/__init__.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/__init__.py @@ -24,10 +24,6 @@ from ._regulatory_compliance_controls_operations import RegulatoryComplianceControlsOperations # type: ignore from ._regulatory_compliance_assessments_operations import RegulatoryComplianceAssessmentsOperations # type: ignore from ._sub_assessments_operations import SubAssessmentsOperations # type: ignore -from ._connectors_operations import ConnectorsOperations # type: ignore -from ._software_inventories_operations import SoftwareInventoriesOperations # type: ignore -from ._custom_assessment_automations_operations import CustomAssessmentAutomationsOperations # type: ignore -from ._custom_entity_store_assignments_operations import CustomEntityStoreAssignmentsOperations # type: ignore from ._mde_onboardings_operations import MdeOnboardingsOperations # type: ignore from ._governance_assignments_operations import GovernanceAssignmentsOperations # type: ignore from ._governance_rules_operations import GovernanceRulesOperations # type: ignore @@ -39,18 +35,27 @@ from ._sql_vulnerability_assessment_baseline_rules_operations import SqlVulnerabilityAssessmentBaselineRulesOperations # type: ignore from ._sql_vulnerability_assessment_scans_operations import SqlVulnerabilityAssessmentScansOperations # type: ignore from ._sql_vulnerability_assessment_scan_results_operations import SqlVulnerabilityAssessmentScanResultsOperations # type: ignore +from ._sql_vulnerability_assessment_settings_operations import SqlVulnerabilityAssessmentSettingsOperations # type: ignore from ._sensitivity_settings_operations import SensitivitySettingsOperations # type: ignore from ._health_reports_operations import HealthReportsOperations # type: ignore from ._automations_operations import AutomationsOperations # type: ignore -from ._security_contacts_operations import SecurityContactsOperations # type: ignore from ._security_connectors_operations import SecurityConnectorsOperations # type: ignore -from ._defender_for_storage_operations import DefenderForStorageOperations # type: ignore +from ._azure_dev_ops_orgs_operations import AzureDevOpsOrgsOperations # type: ignore +from ._azure_dev_ops_projects_operations import AzureDevOpsProjectsOperations # type: ignore +from ._azure_dev_ops_repos_operations import AzureDevOpsReposOperations # type: ignore +from ._dev_ops_configurations_operations import DevOpsConfigurationsOperations # type: ignore +from ._git_hub_owners_operations import GitHubOwnersOperations # type: ignore +from ._git_hub_repos_operations import GitHubReposOperations # type: ignore +from ._git_hub_issues_operations import GitHubIssuesOperations # type: ignore +from ._git_lab_groups_operations import GitLabGroupsOperations # type: ignore +from ._git_lab_subgroups_operations import GitLabSubgroupsOperations # type: ignore +from ._git_lab_projects_operations import GitLabProjectsOperations # type: ignore +from ._dev_ops_operation_results_operations import DevOpsOperationResultsOperations # type: ignore from ._operations import Operations # type: ignore +from ._operation_results_operations import OperationResultsOperations # type: ignore +from ._operation_statuses_operations import OperationStatusesOperations # type: ignore from ._assessments_metadata_operations import AssessmentsMetadataOperations # type: ignore from ._assessments_operations import AssessmentsOperations # type: ignore -from ._private_links_operations import PrivateLinksOperations # type: ignore -from ._private_link_resources_operations import PrivateLinkResourcesOperations # type: ignore -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations # type: ignore from ._compliance_results_operations import ComplianceResultsOperations # type: ignore from ._advanced_threat_protection_operations import AdvancedThreatProtectionOperations # type: ignore from ._device_security_groups_operations import DeviceSecurityGroupsOperations # type: ignore @@ -62,9 +67,6 @@ from ._discovered_security_solutions_operations import DiscoveredSecuritySolutionsOperations # type: ignore from ._external_security_solutions_operations import ExternalSecuritySolutionsOperations # type: ignore from ._jit_network_access_policies_operations import JitNetworkAccessPoliciesOperations # type: ignore -from ._secure_scores_operations import SecureScoresOperations # type: ignore -from ._secure_score_controls_operations import SecureScoreControlsOperations # type: ignore -from ._secure_score_control_definitions_operations import SecureScoreControlDefinitionsOperations # type: ignore from ._security_solutions_operations import SecuritySolutionsOperations # type: ignore from ._security_solutions_reference_data_operations import SecuritySolutionsReferenceDataOperations # type: ignore from ._server_vulnerability_assessment_operations import ServerVulnerabilityAssessmentOperations # type: ignore @@ -77,16 +79,15 @@ from ._security_standards_operations import SecurityStandardsOperations # type: ignore from ._standard_assignments_operations import StandardAssignmentsOperations # type: ignore from ._custom_recommendations_operations import CustomRecommendationsOperations # type: ignore -from ._azure_dev_ops_orgs_operations import AzureDevOpsOrgsOperations # type: ignore -from ._azure_dev_ops_projects_operations import AzureDevOpsProjectsOperations # type: ignore -from ._azure_dev_ops_repos_operations import AzureDevOpsReposOperations # type: ignore -from ._dev_ops_configurations_operations import DevOpsConfigurationsOperations # type: ignore -from ._git_hub_owners_operations import GitHubOwnersOperations # type: ignore -from ._git_hub_repos_operations import GitHubReposOperations # type: ignore -from ._git_lab_groups_operations import GitLabGroupsOperations # type: ignore -from ._git_lab_subgroups_operations import GitLabSubgroupsOperations # type: ignore -from ._git_lab_projects_operations import GitLabProjectsOperations # type: ignore -from ._dev_ops_operation_results_operations import DevOpsOperationResultsOperations # type: ignore +from ._standards_operations import StandardsOperations # type: ignore +from ._assignments_operations import AssignmentsOperations # type: ignore +from ._defender_for_storage_operations import DefenderForStorageOperations # type: ignore +from ._private_links_operations import PrivateLinksOperations # type: ignore +from ._private_link_resources_operations import PrivateLinkResourcesOperations # type: ignore +from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations # type: ignore +from ._secure_scores_operations import SecureScoresOperations # type: ignore +from ._secure_score_controls_operations import SecureScoreControlsOperations # type: ignore +from ._secure_score_control_definitions_operations import SecureScoreControlDefinitionsOperations # type: ignore from ._patch import __all__ as _patch_all from ._patch import * @@ -104,10 +105,6 @@ "RegulatoryComplianceControlsOperations", "RegulatoryComplianceAssessmentsOperations", "SubAssessmentsOperations", - "ConnectorsOperations", - "SoftwareInventoriesOperations", - "CustomAssessmentAutomationsOperations", - "CustomEntityStoreAssignmentsOperations", "MdeOnboardingsOperations", "GovernanceAssignmentsOperations", "GovernanceRulesOperations", @@ -119,18 +116,27 @@ "SqlVulnerabilityAssessmentBaselineRulesOperations", "SqlVulnerabilityAssessmentScansOperations", "SqlVulnerabilityAssessmentScanResultsOperations", + "SqlVulnerabilityAssessmentSettingsOperations", "SensitivitySettingsOperations", "HealthReportsOperations", "AutomationsOperations", - "SecurityContactsOperations", "SecurityConnectorsOperations", - "DefenderForStorageOperations", + "AzureDevOpsOrgsOperations", + "AzureDevOpsProjectsOperations", + "AzureDevOpsReposOperations", + "DevOpsConfigurationsOperations", + "GitHubOwnersOperations", + "GitHubReposOperations", + "GitHubIssuesOperations", + "GitLabGroupsOperations", + "GitLabSubgroupsOperations", + "GitLabProjectsOperations", + "DevOpsOperationResultsOperations", "Operations", + "OperationResultsOperations", + "OperationStatusesOperations", "AssessmentsMetadataOperations", "AssessmentsOperations", - "PrivateLinksOperations", - "PrivateLinkResourcesOperations", - "PrivateEndpointConnectionsOperations", "ComplianceResultsOperations", "AdvancedThreatProtectionOperations", "DeviceSecurityGroupsOperations", @@ -142,9 +148,6 @@ "DiscoveredSecuritySolutionsOperations", "ExternalSecuritySolutionsOperations", "JitNetworkAccessPoliciesOperations", - "SecureScoresOperations", - "SecureScoreControlsOperations", - "SecureScoreControlDefinitionsOperations", "SecuritySolutionsOperations", "SecuritySolutionsReferenceDataOperations", "ServerVulnerabilityAssessmentOperations", @@ -157,16 +160,15 @@ "SecurityStandardsOperations", "StandardAssignmentsOperations", "CustomRecommendationsOperations", - "AzureDevOpsOrgsOperations", - "AzureDevOpsProjectsOperations", - "AzureDevOpsReposOperations", - "DevOpsConfigurationsOperations", - "GitHubOwnersOperations", - "GitHubReposOperations", - "GitLabGroupsOperations", - "GitLabSubgroupsOperations", - "GitLabProjectsOperations", - "DevOpsOperationResultsOperations", + "StandardsOperations", + "AssignmentsOperations", + "DefenderForStorageOperations", + "PrivateLinksOperations", + "PrivateLinkResourcesOperations", + "PrivateEndpointConnectionsOperations", + "SecureScoresOperations", + "SecureScoreControlsOperations", + "SecureScoreControlDefinitionsOperations", ] __all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore _patch_sdk() diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_advanced_threat_protection_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_advanced_threat_protection_operations.py index df9da295fa8f..493df0797677 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_advanced_threat_protection_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_advanced_threat_protection_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Literal, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Literal, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class AdvancedThreatProtectionOperations: @@ -95,7 +96,11 @@ async def get(self, resource_id: str, **kwargs: Any) -> _models.AdvancedThreatPr if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated13, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AdvancedThreatProtectionSetting", pipeline_response.http_response) @@ -215,7 +220,11 @@ async def create( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated13, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AdvancedThreatProtectionSetting", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_operations.py index 51c765090632..45861865dc42 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload +from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -53,7 +53,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class AlertsOperations: @@ -132,7 +133,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -199,7 +204,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -267,7 +276,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -341,7 +354,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -393,7 +410,11 @@ async def get_subscription_level(self, asc_location: str, alert_name: str, **kwa if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Alert", pipeline_response.http_response) @@ -454,7 +475,11 @@ async def get_resource_group_level( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Alert", pipeline_response.http_response) @@ -511,7 +536,11 @@ async def update_subscription_level_state_to_dismiss( # pylint: disable=name-to if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -564,7 +593,11 @@ async def update_subscription_level_state_to_resolve( # pylint: disable=name-to if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -617,7 +650,11 @@ async def update_subscription_level_state_to_activate( # pylint: disable=name-t if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -670,7 +707,11 @@ async def update_subscription_level_state_to_in_progress( # pylint: disable=nam if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -727,7 +768,11 @@ async def update_resource_group_level_state_to_resolve( # pylint: disable=name- if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -784,7 +829,11 @@ async def update_resource_group_level_state_to_dismiss( # pylint: disable=name- if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -841,7 +890,11 @@ async def update_resource_group_level_state_to_activate( # pylint: disable=name if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -898,7 +951,11 @@ async def update_resource_group_level_state_to_in_progress( # pylint: disable=n if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -958,7 +1015,11 @@ async def _simulate_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_suppression_rules_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_suppression_rules_operations.py index 34f673b1dce7..bfb1a302c26e 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_suppression_rules_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_suppression_rules_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -37,7 +37,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class AlertsSuppressionRulesOperations: @@ -121,7 +122,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -169,7 +174,11 @@ async def get(self, alerts_suppression_rule_name: str, **kwargs: Any) -> _models if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AlertsSuppressionRule", pipeline_response.http_response) @@ -286,7 +295,11 @@ async def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AlertsSuppressionRule", pipeline_response.http_response) @@ -337,7 +350,11 @@ async def delete(self, alerts_suppression_rule_name: str, **kwargs: Any) -> None if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_allowed_connections_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_allowed_connections_operations.py index d1ed4e31ede8..ed002f75ebea 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_allowed_connections_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_allowed_connections_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar, Union +from typing import Any, Callable, Optional, TypeVar, Union from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -35,7 +35,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class AllowedConnectionsOperations: @@ -116,7 +117,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -187,7 +192,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -251,7 +260,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AllowedConnectionsResource", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_api_collections_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_api_collections_operations.py index 5d09d70a2eef..fdf24edc0dcc 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_api_collections_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_api_collections_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, AsyncIterator, Callable, Dict, Optional, TypeVar, Union, cast +from typing import Any, AsyncIterator, Callable, Optional, TypeVar, Union, cast from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -42,7 +42,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class APICollectionsOperations: @@ -124,7 +125,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -197,7 +201,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -275,7 +282,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -339,7 +349,10 @@ async def get_by_azure_api_management_service( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ApiCollection", pipeline_response.http_response) @@ -391,7 +404,10 @@ async def _onboard_azure_api_management_api_initial( # pylint: disable=name-too except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -530,7 +546,10 @@ async def offboard_azure_api_management_api( if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_application_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_application_operations.py index 727a663980f0..9862c247c4a3 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_application_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_application_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -34,7 +34,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class ApplicationOperations: @@ -99,7 +100,11 @@ async def get(self, application_id: str, **kwargs: Any) -> _models.Application: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated5, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Application", pipeline_response.http_response) @@ -211,7 +216,11 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated5, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Application", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_applications_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_applications_operations.py index 4b1d8ad892cc..9c933929a16d 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_applications_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_applications_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -30,7 +30,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class ApplicationsOperations: @@ -109,7 +110,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated5, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_metadata_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_metadata_operations.py index 0170d3b1b77a..c7e960d31958 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_metadata_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_metadata_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -39,7 +39,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class AssessmentsMetadataOperations: @@ -74,7 +75,7 @@ def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecurityAssessmentMetad _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[_models.SecurityAssessmentMetadataResponseList] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -119,7 +120,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -147,7 +152,7 @@ async def get(self, assessment_metadata_name: str, **kwargs: Any) -> _models.Sec _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) _request = build_get_request( @@ -167,7 +172,11 @@ async def get(self, assessment_metadata_name: str, **kwargs: Any) -> _models.Sec if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityAssessmentMetadataResponse", pipeline_response.http_response) @@ -189,7 +198,7 @@ def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.Securit _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[_models.SecurityAssessmentMetadataResponseList] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -235,7 +244,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -265,7 +278,7 @@ async def get_in_subscription( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) _request = build_get_in_subscription_request( @@ -286,7 +299,11 @@ async def get_in_subscription( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityAssessmentMetadataResponse", pipeline_response.http_response) @@ -374,7 +391,7 @@ async def create_in_subscription( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) @@ -407,7 +424,11 @@ async def create_in_subscription( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityAssessmentMetadataResponse", pipeline_response.http_response) @@ -439,7 +460,7 @@ async def delete_in_subscription(self, assessment_metadata_name: str, **kwargs: _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[None] = kwargs.pop("cls", None) _request = build_delete_in_subscription_request( @@ -460,7 +481,11 @@ async def delete_in_subscription(self, assessment_metadata_name: str, **kwargs: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_operations.py index 220af1b63565..2ebc516ebec6 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -37,7 +37,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class AssessmentsOperations: @@ -76,7 +77,7 @@ def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.SecurityAss _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[_models.SecurityAssessmentList] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -122,7 +123,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -160,7 +165,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[_models.SecurityAssessmentResponse] = kwargs.pop("cls", None) _request = build_get_request( @@ -182,7 +187,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityAssessmentResponse", pipeline_response.http_response) @@ -278,7 +287,7 @@ async def create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.SecurityAssessmentResponse] = kwargs.pop("cls", None) @@ -311,7 +320,11 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityAssessmentResponse", pipeline_response.http_response) @@ -344,7 +357,7 @@ async def delete(self, resource_id: str, assessment_name: str, **kwargs: Any) -> _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[None] = kwargs.pop("cls", None) _request = build_delete_request( @@ -365,7 +378,11 @@ async def delete(self, resource_id: str, assessment_name: str, **kwargs: Any) -> if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_assessment_automations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assignments_operations.py similarity index 64% rename from sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_assessment_automations_operations.py rename to sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assignments_operations.py index 02e26c0342e0..56118766b811 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_assessment_automations_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assignments_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -28,27 +28,28 @@ from ... import models as _models from ..._utils.serialization import Deserializer, Serializer -from ...operations._custom_assessment_automations_operations import ( - build_create_request, +from ...operations._assignments_operations import ( + build_create_or_update_request, build_delete_request, build_get_request, - build_list_by_resource_group_request, build_list_by_subscription_request, + build_list_request, ) from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list -class CustomAssessmentAutomationsOperations: +class AssignmentsOperations: """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`custom_assessment_automations` attribute. + :attr:`assignments` attribute. """ models = _models @@ -60,22 +61,156 @@ def __init__(self, *args, **kwargs) -> None: self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - @distributed_trace_async - async def get( - self, resource_group_name: str, custom_assessment_automation_name: str, **kwargs: Any - ) -> _models.CustomAssessmentAutomation: - """Gets a custom assessment automation. + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.Assignment"]: + """Get a list of all relevant standardAssignments over a subscription level scope. + + :return: An iterator like instance of either Assignment or the result of cls(response) + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Assignment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.AssignmentList] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + async def extract_data(pipeline_response): + deserialized = self._deserialize("AssignmentList", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.next_link or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.Assignment"]: + """Get a list of all relevant standardAssignments available for scope. + + :param resource_group_name: The name of the resource group within the user's subscription. The + name is case insensitive. Required. + :type resource_group_name: str + :return: An iterator like instance of either Assignment or the result of cls(response) + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Assignment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.AssignmentList] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + async def extract_data(pipeline_response): + deserialized = self._deserialize("AssignmentList", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.next_link or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - Gets a single custom assessment automation by name for the provided subscription and resource - group. + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + async def get(self, resource_group_name: str, assignment_id: str, **kwargs: Any) -> _models.Assignment: + """Get a specific standard assignment for the requested scope by resourceId. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_assessment_automation_name: Name of the Custom Assessment Automation. Required. - :type custom_assessment_automation_name: str - :return: CustomAssessmentAutomation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomAssessmentAutomation + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :return: Assignment or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Assignment :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -89,12 +224,12 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - cls: ClsType[_models.CustomAssessmentAutomation] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.Assignment] = kwargs.pop("cls", None) _request = build_get_request( resource_group_name=resource_group_name, - custom_assessment_automation_name=custom_assessment_automation_name, + assignment_id=assignment_id, subscription_id=self._config.subscription_id, api_version=api_version, headers=_headers, @@ -111,9 +246,13 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("CustomAssessmentAutomation", pipeline_response.http_response) + deserialized = self._deserialize("Assignment", pipeline_response.http_response) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -121,90 +260,85 @@ async def get( return deserialized # type: ignore @overload - async def create( + async def create_or_update( self, resource_group_name: str, - custom_assessment_automation_name: str, - custom_assessment_automation_body: _models.CustomAssessmentAutomationRequest, + assignment_id: str, + assignment: _models.Assignment, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CustomAssessmentAutomation: - """Creates a custom assessment automation. - - Creates or updates a custom assessment automation for the provided subscription. Please note - that providing an existing custom assessment automation will replace the existing record. + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_assessment_automation_name: Name of the Custom Assessment Automation. Required. - :type custom_assessment_automation_name: str - :param custom_assessment_automation_body: Custom Assessment Automation body. Required. - :type custom_assessment_automation_body: - ~azure.mgmt.security.models.CustomAssessmentAutomationRequest + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Required. + :type assignment: ~azure.mgmt.security.models.Assignment :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: CustomAssessmentAutomation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomAssessmentAutomation + :return: Assignment or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Assignment :raises ~azure.core.exceptions.HttpResponseError: """ @overload - async def create( + async def create_or_update( self, resource_group_name: str, - custom_assessment_automation_name: str, - custom_assessment_automation_body: IO[bytes], + assignment_id: str, + assignment: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CustomAssessmentAutomation: - """Creates a custom assessment automation. - - Creates or updates a custom assessment automation for the provided subscription. Please note - that providing an existing custom assessment automation will replace the existing record. + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_assessment_automation_name: Name of the Custom Assessment Automation. Required. - :type custom_assessment_automation_name: str - :param custom_assessment_automation_body: Custom Assessment Automation body. Required. - :type custom_assessment_automation_body: IO[bytes] + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Required. + :type assignment: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: CustomAssessmentAutomation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomAssessmentAutomation + :return: Assignment or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Assignment :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace_async - async def create( + async def create_or_update( self, resource_group_name: str, - custom_assessment_automation_name: str, - custom_assessment_automation_body: Union[_models.CustomAssessmentAutomationRequest, IO[bytes]], + assignment_id: str, + assignment: Union[_models.Assignment, IO[bytes]], **kwargs: Any - ) -> _models.CustomAssessmentAutomation: - """Creates a custom assessment automation. - - Creates or updates a custom assessment automation for the provided subscription. Please note - that providing an existing custom assessment automation will replace the existing record. + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_assessment_automation_name: Name of the Custom Assessment Automation. Required. - :type custom_assessment_automation_name: str - :param custom_assessment_automation_body: Custom Assessment Automation body. Is either a - CustomAssessmentAutomationRequest type or a IO[bytes] type. Required. - :type custom_assessment_automation_body: - ~azure.mgmt.security.models.CustomAssessmentAutomationRequest or IO[bytes] - :return: CustomAssessmentAutomation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomAssessmentAutomation + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Is either a Assignment + type or a IO[bytes] type. Required. + :type assignment: ~azure.mgmt.security.models.Assignment or IO[bytes] + :return: Assignment or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Assignment :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -218,21 +352,21 @@ async def create( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CustomAssessmentAutomation] = kwargs.pop("cls", None) + cls: ClsType[_models.Assignment] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(custom_assessment_automation_body, (IOBase, bytes)): - _content = custom_assessment_automation_body + if isinstance(assignment, (IOBase, bytes)): + _content = assignment else: - _json = self._serialize.body(custom_assessment_automation_body, "CustomAssessmentAutomationRequest") + _json = self._serialize.body(assignment, "Assignment") - _request = build_create_request( + _request = build_create_or_update_request( resource_group_name=resource_group_name, - custom_assessment_automation_name=custom_assessment_automation_name, + assignment_id=assignment_id, subscription_id=self._config.subscription_id, api_version=api_version, content_type=content_type, @@ -252,9 +386,13 @@ async def create( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("CustomAssessmentAutomation", pipeline_response.http_response) + deserialized = self._deserialize("Assignment", pipeline_response.http_response) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -262,16 +400,15 @@ async def create( return deserialized # type: ignore @distributed_trace_async - async def delete(self, resource_group_name: str, custom_assessment_automation_name: str, **kwargs: Any) -> None: - """Deletes a custom assessment automation. - - Deletes a custom assessment automation by name for a provided subscription. + async def delete(self, resource_group_name: str, assignment_id: str, **kwargs: Any) -> None: + """Delete a standard assignment over a given scope. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_assessment_automation_name: Name of the Custom Assessment Automation. Required. - :type custom_assessment_automation_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str :return: None or the result of cls(response) :rtype: None :raises ~azure.core.exceptions.HttpResponseError: @@ -287,12 +424,12 @@ async def delete(self, resource_group_name: str, custom_assessment_automation_na _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) cls: ClsType[None] = kwargs.pop("cls", None) _request = build_delete_request( resource_group_name=resource_group_name, - custom_assessment_automation_name=custom_assessment_automation_name, + assignment_id=assignment_id, subscription_id=self._config.subscription_id, api_version=api_version, headers=_headers, @@ -313,143 +450,3 @@ async def delete(self, resource_group_name: str, custom_assessment_automation_na if cls: return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.CustomAssessmentAutomation"]: - """List custom assessment automations in a subscription and a resource group. - - List custom assessment automations by provided subscription and resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either CustomAssessmentAutomation or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.CustomAssessmentAutomation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - cls: ClsType[_models.CustomAssessmentAutomationsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("CustomAssessmentAutomationsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.CustomAssessmentAutomation"]: - """List custom assessment automations in a subscription. - - List custom assessment automations by provided subscription. - - :return: An iterator like instance of either CustomAssessmentAutomation or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.CustomAssessmentAutomation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - cls: ClsType[_models.CustomAssessmentAutomationsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("CustomAssessmentAutomationsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_auto_provisioning_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_auto_provisioning_settings_operations.py index b53c1e829dd6..24b42b005144 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_auto_provisioning_settings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_auto_provisioning_settings_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -36,7 +36,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class AutoProvisioningSettingsOperations: @@ -117,7 +118,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -165,7 +170,11 @@ async def get(self, setting_name: str, **kwargs: Any) -> _models.AutoProvisionin if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AutoProvisioningSetting", pipeline_response.http_response) @@ -274,7 +283,11 @@ async def create( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AutoProvisioningSetting", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_automations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_automations_operations.py index b53a47af4bd9..f5d29100d49d 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_automations_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_automations_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -40,7 +40,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class AutomationsOperations: @@ -120,7 +121,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -188,7 +193,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -240,7 +249,11 @@ async def get(self, resource_group_name: str, automation_name: str, **kwargs: An if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Automation", pipeline_response.http_response) @@ -373,7 +386,11 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Automation", pipeline_response.http_response) @@ -503,7 +520,11 @@ async def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Automation", pipeline_response.http_response) @@ -558,7 +579,11 @@ async def delete(self, resource_group_name: str, automation_name: str, **kwargs: if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -687,7 +712,11 @@ async def validate( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AutomationValidationStatus", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_orgs_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_orgs_operations.py index 6378fe16bfd4..069d296b6d63 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_orgs_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_orgs_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload +from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -42,7 +42,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class AzureDevOpsOrgsOperations: @@ -94,7 +95,7 @@ async def list_available( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsOrgListResponse] = kwargs.pop("cls", None) _request = build_list_available_request( @@ -116,7 +117,10 @@ async def list_available( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AzureDevOpsOrgListResponse", pipeline_response.http_response) @@ -146,7 +150,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsOrgListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -194,7 +198,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -231,7 +238,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) _request = build_get_request( @@ -254,7 +261,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AzureDevOpsOrg", pipeline_response.http_response) @@ -283,7 +293,7 @@ async def _create_or_update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) @@ -323,7 +333,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -430,7 +443,7 @@ async def begin_create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) @@ -497,7 +510,7 @@ async def _update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) @@ -537,7 +550,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -644,7 +660,7 @@ async def begin_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_projects_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_projects_operations.py index 80bc991c8f5c..d975cfbd845e 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_projects_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_projects_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload +from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -41,7 +41,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class AzureDevOpsProjectsOperations: @@ -85,7 +86,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsProjectListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -134,7 +135,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -173,7 +177,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) _request = build_get_request( @@ -197,7 +201,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AzureDevOpsProject", pipeline_response.http_response) @@ -227,7 +234,7 @@ async def _create_or_update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) @@ -268,7 +275,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -384,7 +394,7 @@ async def begin_create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) @@ -453,7 +463,7 @@ async def _update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) @@ -494,7 +504,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -610,7 +623,7 @@ async def begin_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_repos_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_repos_operations.py index efd6e745423f..7d894ea12bee 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_repos_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_repos_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload +from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -41,7 +41,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class AzureDevOpsReposOperations: @@ -89,7 +90,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsRepositoryListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -139,7 +140,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -186,7 +190,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) _request = build_get_request( @@ -211,7 +215,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AzureDevOpsRepository", pipeline_response.http_response) @@ -242,7 +249,7 @@ async def _create_or_update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) @@ -284,7 +291,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -409,7 +419,7 @@ async def begin_create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) @@ -480,7 +490,7 @@ async def _update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) @@ -522,7 +532,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -647,7 +660,7 @@ async def begin_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliance_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliance_results_operations.py index 849ab05b6e10..e1ffab80bf0b 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliance_results_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliance_results_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class ComplianceResultsOperations: @@ -114,7 +115,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated12, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -164,7 +169,11 @@ async def get(self, resource_id: str, compliance_result_name: str, **kwargs: Any if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated12, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ComplianceResult", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliances_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliances_operations.py index 1ddbc6583920..4189819d16e6 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliances_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliances_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class CompliancesOperations: @@ -114,7 +115,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -166,7 +171,11 @@ async def get(self, scope: str, compliance_name: str, **kwargs: Any) -> _models. if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Compliance", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_connectors_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_connectors_operations.py deleted file mode 100644 index 421bb631437c..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_connectors_operations.py +++ /dev/null @@ -1,341 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._connectors_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class ConnectorsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`connectors` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.ConnectorSetting"]: - """Cloud accounts connectors of a subscription. - - :return: An iterator like instance of either ConnectorSetting or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ConnectorSetting] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01-preview")) - cls: ClsType[_models.ConnectorSettingList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ConnectorSettingList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, connector_name: str, **kwargs: Any) -> _models.ConnectorSetting: - """Details of a specific cloud account connector. - - :param connector_name: Name of the cloud account connector. Required. - :type connector_name: str - :return: ConnectorSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ConnectorSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01-preview")) - cls: ClsType[_models.ConnectorSetting] = kwargs.pop("cls", None) - - _request = build_get_request( - connector_name=connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ConnectorSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - connector_name: str, - connector_setting: _models.ConnectorSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ConnectorSetting: - """Create a cloud account connector or update an existing one. Connect to your cloud account. For - AWS, use either account credentials or role-based authentication. For GCP, use account - organization credentials. - - :param connector_name: Name of the cloud account connector. Required. - :type connector_name: str - :param connector_setting: Settings for the cloud account connector. Required. - :type connector_setting: ~azure.mgmt.security.models.ConnectorSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ConnectorSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ConnectorSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - connector_name: str, - connector_setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ConnectorSetting: - """Create a cloud account connector or update an existing one. Connect to your cloud account. For - AWS, use either account credentials or role-based authentication. For GCP, use account - organization credentials. - - :param connector_name: Name of the cloud account connector. Required. - :type connector_name: str - :param connector_setting: Settings for the cloud account connector. Required. - :type connector_setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ConnectorSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ConnectorSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, connector_name: str, connector_setting: Union[_models.ConnectorSetting, IO[bytes]], **kwargs: Any - ) -> _models.ConnectorSetting: - """Create a cloud account connector or update an existing one. Connect to your cloud account. For - AWS, use either account credentials or role-based authentication. For GCP, use account - organization credentials. - - :param connector_name: Name of the cloud account connector. Required. - :type connector_name: str - :param connector_setting: Settings for the cloud account connector. Is either a - ConnectorSetting type or a IO[bytes] type. Required. - :type connector_setting: ~azure.mgmt.security.models.ConnectorSetting or IO[bytes] - :return: ConnectorSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ConnectorSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ConnectorSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(connector_setting, (IOBase, bytes)): - _content = connector_setting - else: - _json = self._serialize.body(connector_setting, "ConnectorSetting") - - _request = build_create_or_update_request( - connector_name=connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ConnectorSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, connector_name: str, **kwargs: Any) -> None: - """Delete a cloud account connector from a subscription. - - :param connector_name: Name of the cloud account connector. Required. - :type connector_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - connector_name=connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_recommendations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_recommendations_operations.py index 077c436ebe18..367277a7cc36 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_recommendations_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_recommendations_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -38,7 +38,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class CustomRecommendationsOperations: @@ -125,7 +126,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -180,7 +184,10 @@ async def get(self, scope: str, custom_recommendation_name: str, **kwargs: Any) if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("CustomRecommendation", pipeline_response.http_response) @@ -319,7 +326,10 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("CustomRecommendation", pipeline_response.http_response) @@ -377,7 +387,10 @@ async def delete(self, scope: str, custom_recommendation_name: str, **kwargs: An if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_defender_for_storage_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_defender_for_storage_operations.py index bdfadcf69ca3..4f3cdf719c63 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_defender_for_storage_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_defender_for_storage_operations.py @@ -7,9 +7,10 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient +from azure.core.async_paging import AsyncItemPaged, AsyncList from azure.core.exceptions import ( ClientAuthenticationError, HttpResponseError, @@ -20,6 +21,7 @@ ) from azure.core.pipeline import PipelineResponse from azure.core.rest import AsyncHttpResponse, HttpRequest +from azure.core.tracing.decorator import distributed_trace from azure.core.tracing.decorator_async import distributed_trace_async from azure.core.utils import case_insensitive_dict from azure.mgmt.core.exceptions import ARMErrorFormat @@ -31,12 +33,14 @@ build_create_request, build_get_malware_scan_request, build_get_request, + build_list_request, build_start_malware_scan_request, ) from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class DefenderForStorageOperations: @@ -58,16 +62,87 @@ def __init__(self, *args, **kwargs) -> None: self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + @distributed_trace + def list(self, resource_id: str, **kwargs: Any) -> AsyncItemPaged["_models.DefenderForStorageSetting"]: + """Lists the Defender for Storage settings for the specified storage account. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :return: An iterator like instance of either DefenderForStorageSetting or the result of + cls(response) + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.DefenderForStorageSetting] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + cls: ClsType[_models.DefenderForStorageSettingList] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + async def extract_data(pipeline_response): + deserialized = self._deserialize("DefenderForStorageSettingList", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated20, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + @distributed_trace_async async def get( - self, resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any + self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any ) -> _models.DefenderForStorageSetting: """Gets the Defender for Storage settings for the specified storage account. :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :return: DefenderForStorageSetting or the result of cls(response) :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting :raises ~azure.core.exceptions.HttpResponseError: @@ -83,7 +158,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) cls: ClsType[_models.DefenderForStorageSetting] = kwargs.pop("cls", None) _request = build_get_request( @@ -104,7 +179,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated20, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("DefenderForStorageSetting", pipeline_response.http_response) @@ -117,7 +196,7 @@ async def get( async def create( self, resource_id: str, - setting_name: Union[str, _models.SettingName], + setting_name: Union[str, _models.SettingNameAutoGenerated], defender_for_storage_setting: _models.DefenderForStorageSetting, *, content_type: str = "application/json", @@ -128,7 +207,7 @@ async def create( :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :param defender_for_storage_setting: Defender for Storage Settings. Required. :type defender_for_storage_setting: ~azure.mgmt.security.models.DefenderForStorageSetting :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. @@ -143,7 +222,7 @@ async def create( async def create( self, resource_id: str, - setting_name: Union[str, _models.SettingName], + setting_name: Union[str, _models.SettingNameAutoGenerated], defender_for_storage_setting: IO[bytes], *, content_type: str = "application/json", @@ -154,7 +233,7 @@ async def create( :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :param defender_for_storage_setting: Defender for Storage Settings. Required. :type defender_for_storage_setting: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. @@ -169,7 +248,7 @@ async def create( async def create( self, resource_id: str, - setting_name: Union[str, _models.SettingName], + setting_name: Union[str, _models.SettingNameAutoGenerated], defender_for_storage_setting: Union[_models.DefenderForStorageSetting, IO[bytes]], **kwargs: Any ) -> _models.DefenderForStorageSetting: @@ -178,7 +257,7 @@ async def create( :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :param defender_for_storage_setting: Defender for Storage Settings. Is either a DefenderForStorageSetting type or a IO[bytes] type. Required. :type defender_for_storage_setting: ~azure.mgmt.security.models.DefenderForStorageSetting or @@ -198,7 +277,7 @@ async def create( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.DefenderForStorageSetting] = kwargs.pop("cls", None) @@ -231,7 +310,11 @@ async def create( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated20, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("DefenderForStorageSetting", pipeline_response.http_response) @@ -242,14 +325,15 @@ async def create( @distributed_trace_async async def start_malware_scan( - self, resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any + self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any ) -> _models.MalwareScan: - """Initiate a Defender for Storage malware scan for the specified storage account. + """Initiate a Defender for Storage malware scan for the specified storage account. Blobs and Files + will be scanned for malware. :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :return: MalwareScan or the result of cls(response) :rtype: ~azure.mgmt.security.models.MalwareScan :raises ~azure.core.exceptions.HttpResponseError: @@ -265,7 +349,7 @@ async def start_malware_scan( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) _request = build_start_malware_scan_request( @@ -286,7 +370,11 @@ async def start_malware_scan( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated20, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("MalwareScan", pipeline_response.http_response) @@ -297,14 +385,14 @@ async def start_malware_scan( @distributed_trace_async async def cancel_malware_scan( - self, resource_id: str, setting_name: Union[str, _models.SettingName], scan_id: str, **kwargs: Any + self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], scan_id: str, **kwargs: Any ) -> _models.MalwareScan: """Cancels a Defender for Storage malware scan for the specified storage account. :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :param scan_id: The identifier of the scan. Can be either 'latest' or a GUID. Required. :type scan_id: str :return: MalwareScan or the result of cls(response) @@ -322,7 +410,7 @@ async def cancel_malware_scan( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) _request = build_cancel_malware_scan_request( @@ -344,7 +432,11 @@ async def cancel_malware_scan( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated20, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("MalwareScan", pipeline_response.http_response) @@ -355,14 +447,14 @@ async def cancel_malware_scan( @distributed_trace_async async def get_malware_scan( - self, resource_id: str, setting_name: Union[str, _models.SettingName], scan_id: str, **kwargs: Any + self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], scan_id: str, **kwargs: Any ) -> _models.MalwareScan: """Gets the Defender for Storage malware scan for the specified storage resource. :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :param scan_id: The identifier of the scan. Can be either 'latest' or a GUID. Required. :type scan_id: str :return: MalwareScan or the result of cls(response) @@ -380,7 +472,7 @@ async def get_malware_scan( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) _request = build_get_malware_scan_request( @@ -402,7 +494,11 @@ async def get_malware_scan( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated20, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("MalwareScan", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_configurations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_configurations_operations.py index ceddf6d45a7b..0c6ffadfd1fb 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_configurations_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_configurations_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload +from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -42,7 +42,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class DevOpsConfigurationsOperations: @@ -85,7 +86,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.DevOpsConfigurationListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -133,7 +134,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -168,7 +172,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) _request = build_get_request( @@ -190,7 +194,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("DevOpsConfiguration", pipeline_response.http_response) @@ -218,7 +225,7 @@ async def _create_or_update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) @@ -257,7 +264,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -355,7 +365,7 @@ async def begin_create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) @@ -420,7 +430,7 @@ async def _update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) @@ -459,7 +469,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -557,7 +570,7 @@ async def begin_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) @@ -618,7 +631,7 @@ async def _delete_initial( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) _request = build_delete_request( @@ -645,7 +658,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -675,7 +691,7 @@ async def begin_delete( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[None] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_operation_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_operation_results_operations.py index 81f0b7130326..9bf71271bb33 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_operation_results_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_operation_results_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class DevOpsOperationResultsOperations: @@ -81,7 +82,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.OperationStatusResult] = kwargs.pop("cls", None) _request = build_get_request( @@ -104,7 +105,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("OperationStatusResult", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_device_security_groups_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_device_security_groups_operations.py index 755899c73e92..f533ff637be4 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_device_security_groups_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_device_security_groups_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -37,7 +37,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class DeviceSecurityGroupsOperations: @@ -119,7 +120,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -172,7 +177,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("DeviceSecurityGroup", pipeline_response.http_response) @@ -304,7 +313,11 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("DeviceSecurityGroup", pipeline_response.http_response) @@ -358,7 +371,11 @@ async def delete(self, resource_id: str, device_security_group_name: str, **kwar if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_discovered_security_solutions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_discovered_security_solutions_operations.py index 988b182bcc78..bd4b07257b30 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_discovered_security_solutions_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_discovered_security_solutions_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -35,7 +35,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class DiscoveredSecuritySolutionsOperations: @@ -116,7 +117,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -187,7 +192,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -245,7 +254,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("DiscoveredSecuritySolution", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_external_security_solutions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_external_security_solutions_operations.py index 27b5477d2616..d14ce4df1b32 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_external_security_solutions_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_external_security_solutions_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -35,7 +35,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class ExternalSecuritySolutionsOperations: @@ -116,7 +117,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -187,7 +192,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -245,7 +254,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ExternalSecuritySolution", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_issues_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_issues_operations.py new file mode 100644 index 000000000000..b3333e6aeac0 --- /dev/null +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_issues_operations.py @@ -0,0 +1,287 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +from collections.abc import MutableMapping +from io import IOBase +from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload + +from azure.core import AsyncPipelineClient +from azure.core.exceptions import ( + ClientAuthenticationError, + HttpResponseError, + ResourceExistsError, + ResourceNotFoundError, + ResourceNotModifiedError, + StreamClosedError, + StreamConsumedError, + map_error, +) +from azure.core.pipeline import PipelineResponse +from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod +from azure.core.rest import AsyncHttpResponse, HttpRequest +from azure.core.tracing.decorator_async import distributed_trace_async +from azure.core.utils import case_insensitive_dict +from azure.mgmt.core.exceptions import ARMErrorFormat +from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling + +from ... import models as _models +from ..._utils.serialization import Deserializer, Serializer +from ...operations._git_hub_issues_operations import build_create_request +from .._configuration import SecurityCenterConfiguration + +T = TypeVar("T") +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list + + +class GitHubIssuesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityCenter`'s + :attr:`git_hub_issues` attribute. + """ + + models = _models + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + async def _create_initial( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[Union[_models.IssueCreationRequest, IO[bytes]]] = None, + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if create_issue_request else None + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if create_issue_request else None + _json = None + _content = None + if isinstance(create_issue_request, (IOBase, bytes)): + _content = create_issue_request + else: + if create_issue_request is not None: + _json = self._serialize.body(create_issue_request, "IssueCreationRequest") + else: + _json = None + + _request = build_create_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + repo_name=repo_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + json=_json, + content=_content, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[_models.IssueCreationRequest] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: The GitHub owner name. Required. + :type owner_name: str + :param repo_name: The repository name. Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Default value is None. + :type create_issue_request: ~azure.mgmt.security.models.IssueCreationRequest + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[IO[bytes]] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: The GitHub owner name. Required. + :type owner_name: str + :param repo_name: The repository name. Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Default value is None. + :type create_issue_request: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[Union[_models.IssueCreationRequest, IO[bytes]]] = None, + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: The GitHub owner name. Required. + :type owner_name: str + :param repo_name: The repository name. Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Is either a IssueCreationRequest type or a IO[bytes] type. Default value is None. + :type create_issue_request: ~azure.mgmt.security.models.IssueCreationRequest or IO[bytes] + :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if create_issue_request else None + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._create_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + repo_name=repo_name, + create_issue_request=create_issue_request, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, + AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_owners_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_owners_operations.py index 81e49b344ead..31426ab4c3e2 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_owners_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_owners_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class GitHubOwnersOperations: @@ -81,7 +82,7 @@ async def list_available( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitHubOwnerListResponse] = kwargs.pop("cls", None) _request = build_list_available_request( @@ -103,7 +104,10 @@ async def list_available( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitHubOwnerListResponse", pipeline_response.http_response) @@ -133,7 +137,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitHubOwnerListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -181,7 +185,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -218,7 +225,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitHubOwner] = kwargs.pop("cls", None) _request = build_get_request( @@ -241,7 +248,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitHubOwner", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_repos_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_repos_operations.py index 08d28dda80fd..d11f0816be95 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_repos_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_repos_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class GitHubReposOperations: @@ -75,7 +76,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitHubRepositoryListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -124,7 +125,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -163,7 +167,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitHubRepository] = kwargs.pop("cls", None) _request = build_get_request( @@ -187,7 +191,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitHubRepository", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_groups_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_groups_operations.py index a294c73b4ed4..15bf8d9a56cd 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_groups_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_groups_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class GitLabGroupsOperations: @@ -81,7 +82,7 @@ async def list_available( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) _request = build_list_available_request( @@ -103,7 +104,10 @@ async def list_available( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitLabGroupListResponse", pipeline_response.http_response) @@ -133,7 +137,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -181,7 +185,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -218,7 +225,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitLabGroup] = kwargs.pop("cls", None) _request = build_get_request( @@ -241,7 +248,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitLabGroup", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_projects_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_projects_operations.py index f15150b50d8a..e24f972ed17e 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_projects_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_projects_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class GitLabProjectsOperations: @@ -77,7 +78,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitLabProjectListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -126,7 +127,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -172,7 +176,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitLabProject] = kwargs.pop("cls", None) _request = build_get_request( @@ -196,7 +200,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitLabProject", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_subgroups_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_subgroups_operations.py index 81a2cf27225f..3155dda09cf5 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_subgroups_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_subgroups_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class GitLabSubgroupsOperations: @@ -81,7 +82,7 @@ async def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) _request = build_list_request( @@ -104,7 +105,10 @@ async def list( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitLabGroupListResponse", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_assignments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_assignments_operations.py index fe548dceb79a..e7164fb4b754 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_assignments_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_assignments_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -38,7 +38,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class GovernanceAssignmentsOperations: @@ -127,7 +128,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -186,7 +191,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GovernanceAssignment", pipeline_response.http_response) @@ -334,7 +343,11 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GovernanceAssignment", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_rules_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_rules_operations.py index 1d9e2b35a01d..0cf3a2609475 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_rules_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_rules_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload +from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -44,7 +44,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class GovernanceRulesOperations: @@ -129,7 +130,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -184,7 +189,11 @@ async def get(self, scope: str, rule_id: str, **kwargs: Any) -> _models.Governan if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GovernanceRule", pipeline_response.http_response) @@ -321,7 +330,11 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GovernanceRule", pipeline_response.http_response) @@ -460,9 +473,10 @@ async def _execute_initial( api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if execute_governance_rule_params else None cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - content_type = content_type or "application/json" + content_type = content_type or "application/json" if execute_governance_rule_params else None _json = None _content = None if isinstance(execute_governance_rule_params, (IOBase, bytes)): @@ -499,7 +513,11 @@ async def _execute_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} response_headers["location"] = self._deserialize("str", response.headers.get("location")) @@ -607,6 +625,7 @@ async def begin_execute( api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if execute_governance_rule_params else None cls: ClsType[None] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) @@ -702,7 +721,11 @@ async def operation_results( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = None response_headers = {} diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_health_reports_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_health_reports_operations.py index ab1928343eb2..7d361e668904 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_health_reports_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_health_reports_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -32,7 +32,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class HealthReportsOperations: @@ -115,7 +116,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -167,7 +171,10 @@ async def get(self, resource_id: str, health_report_name: str, **kwargs: Any) -> if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("HealthReport", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_information_protection_policies_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_information_protection_policies_operations.py index dabf0821b572..573a7f42763f 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_information_protection_policies_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_information_protection_policies_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -36,7 +36,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class InformationProtectionPoliciesOperations: @@ -111,7 +112,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("InformationProtectionPolicy", pipeline_response.http_response) @@ -250,7 +255,11 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("InformationProtectionPolicy", pipeline_response.http_response) @@ -322,7 +331,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_analytics_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_analytics_operations.py index baaa70f9c45e..592551c7e17e 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_analytics_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_analytics_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class IotSecuritySolutionAnalyticsOperations: @@ -99,7 +100,11 @@ async def list( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecuritySolutionAnalyticsModelList", pipeline_response.http_response) @@ -156,7 +161,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecuritySolutionAnalyticsModel", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_operations.py index 659c125ab7dc..ada5c6eaaf4d 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -39,7 +39,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class IotSecuritySolutionOperations: @@ -126,7 +127,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -201,7 +206,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -255,7 +264,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecuritySolutionModel", pipeline_response.http_response) @@ -386,7 +399,11 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecuritySolutionModel", pipeline_response.http_response) @@ -521,7 +538,11 @@ async def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecuritySolutionModel", pipeline_response.http_response) @@ -576,7 +597,11 @@ async def delete(self, resource_group_name: str, solution_name: str, **kwargs: A if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py index 3bbc9b36bf65..74582d9c65e2 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -35,7 +35,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class IotSecuritySolutionsAnalyticsAggregatedAlertOperations: # pylint: disable=name-too-long @@ -128,7 +129,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -186,7 +191,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecurityAggregatedAlert", pipeline_response.http_response) @@ -246,7 +255,11 @@ async def dismiss( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_recommendation_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_recommendation_operations.py index 002f070b11b6..3db996b68c99 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_recommendation_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_recommendation_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -34,7 +34,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class IotSecuritySolutionsAnalyticsRecommendationOperations: # pylint: disable=name-too-long @@ -109,7 +110,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecurityAggregatedRecommendation", pipeline_response.http_response) @@ -190,7 +195,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_jit_network_access_policies_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_jit_network_access_policies_operations.py index 90cecf0f5f7e..a0b912a9aa8a 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_jit_network_access_policies_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_jit_network_access_policies_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Literal, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Literal, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -41,7 +41,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class JitNetworkAccessPoliciesOperations: @@ -122,7 +123,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -192,7 +197,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -264,7 +273,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -340,7 +353,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -400,7 +417,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("JitNetworkAccessPolicy", pipeline_response.http_response) @@ -545,7 +566,11 @@ async def create_or_update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("JitNetworkAccessPolicy", pipeline_response.http_response) @@ -607,7 +632,11 @@ async def delete( if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -753,7 +782,11 @@ async def initiate( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("JitNetworkAccessRequest", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_locations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_locations_operations.py index 585d6fc29ff6..23246874d7b8 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_locations_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_locations_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class LocationsOperations: diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_mde_onboardings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_mde_onboardings_operations.py index 3c33b8222594..30388c0cde3b 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_mde_onboardings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_mde_onboardings_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class MdeOnboardingsOperations: @@ -90,7 +91,11 @@ async def list(self, **kwargs: Any) -> _models.MdeOnboardingDataList: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated3, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("MdeOnboardingDataList", pipeline_response.http_response) @@ -138,7 +143,11 @@ async def get(self, **kwargs: Any) -> _models.MdeOnboardingData: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated3, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("MdeOnboardingData", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_results_operations.py new file mode 100644 index 000000000000..15d3999b8fb2 --- /dev/null +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_results_operations.py @@ -0,0 +1,112 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +from collections.abc import MutableMapping +from typing import Any, Callable, Optional, TypeVar + +from azure.core import AsyncPipelineClient +from azure.core.exceptions import ( + ClientAuthenticationError, + HttpResponseError, + ResourceExistsError, + ResourceNotFoundError, + ResourceNotModifiedError, + map_error, +) +from azure.core.pipeline import PipelineResponse +from azure.core.rest import AsyncHttpResponse, HttpRequest +from azure.core.tracing.decorator_async import distributed_trace_async +from azure.core.utils import case_insensitive_dict +from azure.mgmt.core.exceptions import ARMErrorFormat + +from ... import models as _models +from ..._utils.serialization import Deserializer, Serializer +from ...operations._operation_results_operations import build_get_request +from .._configuration import SecurityCenterConfiguration + +T = TypeVar("T") +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list + + +class OperationResultsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityCenter`'s + :attr:`operation_results` attribute. + """ + + models = _models + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, location: str, operation_id: str, **kwargs: Any) -> None: + """Returns operation results for long running operations. + + :param location: The name of the Azure region. Required. + :type location: str + :param operation_id: The ID of an ongoing async operation. Required. + :type operation_id: str + :return: None or the result of cls(response) + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_get_request( + location=location, + operation_id=operation_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + if cls: + return cls(pipeline_response, None, response_headers) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_statuses_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_statuses_operations.py new file mode 100644 index 000000000000..d98e3ee814a9 --- /dev/null +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_statuses_operations.py @@ -0,0 +1,111 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +from collections.abc import MutableMapping +from typing import Any, Callable, Optional, TypeVar + +from azure.core import AsyncPipelineClient +from azure.core.exceptions import ( + ClientAuthenticationError, + HttpResponseError, + ResourceExistsError, + ResourceNotFoundError, + ResourceNotModifiedError, + map_error, +) +from azure.core.pipeline import PipelineResponse +from azure.core.rest import AsyncHttpResponse, HttpRequest +from azure.core.tracing.decorator_async import distributed_trace_async +from azure.core.utils import case_insensitive_dict +from azure.mgmt.core.exceptions import ARMErrorFormat + +from ... import models as _models +from ..._utils.serialization import Deserializer, Serializer +from ...operations._operation_statuses_operations import build_get_request +from .._configuration import SecurityCenterConfiguration + +T = TypeVar("T") +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list + + +class OperationStatusesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityCenter`'s + :attr:`operation_statuses` attribute. + """ + + models = _models + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, location: str, operation_id: str, **kwargs: Any) -> _models.OperationStatusResultAutoGenerated: + """Get the status of a long running azure asynchronous operation. + + :param location: The name of the Azure region. Required. + :type location: str + :param operation_id: The ID of an ongoing async operation. Required. + :type operation_id: str + :return: OperationStatusResultAutoGenerated or the result of cls(response) + :rtype: ~azure.mgmt.security.models.OperationStatusResultAutoGenerated + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + cls: ClsType[_models.OperationStatusResultAutoGenerated] = kwargs.pop("cls", None) + + _request = build_get_request( + location=location, + operation_id=operation_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize("OperationStatusResultAutoGenerated", pipeline_response.http_response) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operations.py index e351540e2ca2..9f65e4deb0d6 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -30,7 +30,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class Operations: @@ -63,7 +64,7 @@ def list(self, **kwargs: Any) -> AsyncItemPaged["_models.Operation"]: _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -108,7 +109,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_pricings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_pricings_operations.py index 1a8b2f3c211f..5158618fd491 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_pricings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_pricings_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -36,7 +36,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class PricingsOperations: @@ -107,7 +108,11 @@ async def get(self, scope_id: str, pricing_name: str, **kwargs: Any) -> _models. if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated18, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Pricing", pipeline_response.http_response) @@ -243,7 +248,11 @@ async def update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated18, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Pricing", pipeline_response.http_response) @@ -255,8 +264,8 @@ async def update( @distributed_trace_async async def delete(self, scope_id: str, pricing_name: str, **kwargs: Any) -> None: """Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. - Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS and ARC - MachinesS'). + Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS, ARC Machines, + and Containers'). :param scope_id: The identifier of the resource, (format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}). @@ -300,7 +309,11 @@ async def delete(self, scope_id: str, pricing_name: str, **kwargs: Any) -> None: if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated18, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -357,7 +370,11 @@ async def list(self, scope_id: str, filter: Optional[str] = None, **kwargs: Any) if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated18, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("PricingList", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_endpoint_connections_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_endpoint_connections_operations.py index 11f069dd6c84..dd66a16461f8 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_endpoint_connections_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_endpoint_connections_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload +from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -41,7 +41,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class PrivateEndpointConnectionsOperations: @@ -84,7 +85,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -135,7 +136,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -176,7 +180,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) _private_link_name = None @@ -203,7 +207,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) @@ -232,7 +239,7 @@ async def _create_or_update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) @@ -275,7 +282,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -386,7 +396,7 @@ async def begin_create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) @@ -452,7 +462,7 @@ async def _delete_initial( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) _private_link_name = None @@ -484,7 +494,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -527,7 +540,7 @@ async def begin_delete( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[None] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_link_resources_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_link_resources_operations.py index 0325c6c3b054..3ec270ce397c 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_link_resources_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_link_resources_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class PrivateLinkResourcesOperations: @@ -73,7 +74,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateLinkResourceListResult] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -124,7 +125,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -163,7 +167,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateLinkResourceAutoGenerated] = kwargs.pop("cls", None) _private_link_name = None @@ -190,7 +194,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("PrivateLinkResourceAutoGenerated", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_links_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_links_operations.py index 104606f9204c..6eae5ff621e3 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_links_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_links_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload +from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -44,7 +44,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class PrivateLinksOperations: @@ -81,7 +82,7 @@ def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.Private _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateLinksList] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -127,7 +128,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -152,7 +156,7 @@ def list(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_mode _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateLinksList] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -199,7 +203,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -233,7 +240,7 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) _private_link_name = None @@ -259,7 +266,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("PrivateLinkResource", pipeline_response.http_response) @@ -295,7 +305,7 @@ async def head( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[None] = kwargs.pop("cls", None) _private_link_name = None @@ -321,7 +331,10 @@ async def head( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: @@ -346,7 +359,7 @@ async def _create_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) @@ -388,7 +401,10 @@ async def _create_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -491,7 +507,7 @@ async def begin_create( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) @@ -630,7 +646,7 @@ async def update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) @@ -667,7 +683,10 @@ async def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("PrivateLinkResource", pipeline_response.http_response) @@ -691,7 +710,7 @@ async def _delete_initial( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) _private_link_name = None @@ -722,7 +741,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -759,7 +781,7 @@ async def begin_delete( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[None] = kwargs.pop("cls", None) polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_assessments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_assessments_operations.py index 958b69e49da5..559425c27750 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_assessments_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_assessments_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class RegulatoryComplianceAssessmentsOperations: # pylint: disable=name-too-long @@ -129,7 +130,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -192,7 +197,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("RegulatoryComplianceAssessment", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_controls_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_controls_operations.py index 48b07e681554..c786bd28e789 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_controls_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_controls_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class RegulatoryComplianceControlsOperations: @@ -121,7 +122,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -176,7 +181,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("RegulatoryComplianceControl", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_standards_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_standards_operations.py index 32dcbf709dcf..8cd620a79a50 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_standards_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_standards_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class RegulatoryComplianceStandardsOperations: @@ -117,7 +118,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -168,7 +173,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("RegulatoryComplianceStandard", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_control_definitions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_control_definitions_operations.py index 13a6f340d7b0..d86dda8975eb 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_control_definitions_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_control_definitions_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -33,7 +33,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SecureScoreControlDefinitionsOperations: @@ -113,7 +114,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -179,7 +184,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_controls_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_controls_operations.py index 169db688e4c9..bd5927b9243f 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_controls_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_controls_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar, Union +from typing import Any, Callable, Optional, TypeVar, Union from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -30,7 +30,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SecureScoreControlsOperations: @@ -120,7 +121,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -190,7 +195,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_scores_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_scores_operations.py index 9a0a65334e0c..e812644100d9 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_scores_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_scores_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SecureScoresOperations: @@ -111,7 +112,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -161,7 +166,11 @@ async def get(self, secure_score_name: str, **kwargs: Any) -> _models.SecureScor if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecureScoreItem", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_application_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_application_operations.py index 702b0e323350..2f8f98271fae 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_application_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_application_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -34,7 +34,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SecurityConnectorApplicationOperations: @@ -108,7 +109,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated5, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Application", pipeline_response.http_response) @@ -251,7 +256,11 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated5, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Application", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_applications_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_applications_operations.py index 93431f541dbe..10d3460b45e1 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_applications_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_applications_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -30,7 +30,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SecurityConnectorApplicationsOperations: @@ -118,7 +119,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated5, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connectors_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connectors_operations.py index ddc4a2512565..256b3d83b8c4 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connectors_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connectors_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -39,7 +39,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SecurityConnectorsOperations: @@ -119,7 +120,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated10, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -189,7 +194,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated10, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -243,7 +252,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated10, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityConnector", pipeline_response.http_response) @@ -376,7 +389,11 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated10, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityConnector", pipeline_response.http_response) @@ -506,7 +523,11 @@ async def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated10, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityConnector", pipeline_response.http_response) @@ -561,7 +582,11 @@ async def delete(self, resource_group_name: str, security_connector_name: str, * if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated10, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_contacts_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_contacts_operations.py deleted file mode 100644 index c3afc05645af..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_contacts_operations.py +++ /dev/null @@ -1,340 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._security_contacts_operations import ( - build_create_request, - build_delete_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class SecurityContactsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`security_contacts` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecurityContact"]: - """List all security contact configurations for the subscription. - - :return: An iterator like instance of either SecurityContact or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityContact] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[_models.SecurityContactList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityContactList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, security_contact_name: Union[str, _models.SecurityContactName], **kwargs: Any - ) -> _models.SecurityContact: - """Get Default Security contact configurations for the subscription. - - :param security_contact_name: Name of the security contact object. "default" Required. - :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName - :return: SecurityContact or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityContact - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[_models.SecurityContact] = kwargs.pop("cls", None) - - _request = build_get_request( - security_contact_name=security_contact_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityContact", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create( - self, - security_contact_name: Union[str, _models.SecurityContactName], - security_contact: _models.SecurityContact, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityContact: - """Create security contact configurations for the subscription. - - :param security_contact_name: Name of the security contact object. "default" Required. - :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName - :param security_contact: Security contact object. Required. - :type security_contact: ~azure.mgmt.security.models.SecurityContact - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityContact or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityContact - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create( - self, - security_contact_name: Union[str, _models.SecurityContactName], - security_contact: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityContact: - """Create security contact configurations for the subscription. - - :param security_contact_name: Name of the security contact object. "default" Required. - :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName - :param security_contact: Security contact object. Required. - :type security_contact: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityContact or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityContact - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create( - self, - security_contact_name: Union[str, _models.SecurityContactName], - security_contact: Union[_models.SecurityContact, IO[bytes]], - **kwargs: Any - ) -> _models.SecurityContact: - """Create security contact configurations for the subscription. - - :param security_contact_name: Name of the security contact object. "default" Required. - :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName - :param security_contact: Security contact object. Is either a SecurityContact type or a - IO[bytes] type. Required. - :type security_contact: ~azure.mgmt.security.models.SecurityContact or IO[bytes] - :return: SecurityContact or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityContact - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SecurityContact] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(security_contact, (IOBase, bytes)): - _content = security_contact - else: - _json = self._serialize.body(security_contact, "SecurityContact") - - _request = build_create_request( - security_contact_name=security_contact_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityContact", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, security_contact_name: Union[str, _models.SecurityContactName], **kwargs: Any) -> None: - """Delete security contact configurations for the subscription. - - :param security_contact_name: Name of the security contact object. "default" Required. - :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - security_contact_name=security_contact_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_operators_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_operators_operations.py index b74b2ceba345..a800cd0651a2 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_operators_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_operators_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -34,7 +34,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SecurityOperatorsOperations: @@ -98,7 +99,11 @@ async def list(self, pricing_name: str, **kwargs: Any) -> _models.SecurityOperat if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated6, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityOperatorList", pipeline_response.http_response) @@ -152,7 +157,11 @@ async def get(self, pricing_name: str, security_operator_name: str, **kwargs: An if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated6, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityOperator", pipeline_response.http_response) @@ -208,7 +217,11 @@ async def create_or_update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated6, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityOperator", pipeline_response.http_response) @@ -262,7 +275,11 @@ async def delete(self, pricing_name: str, security_operator_name: str, **kwargs: if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated6, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_operations.py index cd25e4bbe951..1d627618fb8e 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SecuritySolutionsOperations: @@ -110,7 +111,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -168,7 +173,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecuritySolution", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_reference_data_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_reference_data_operations.py index a8ff0a2c3415..3470bec9b4c5 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_reference_data_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_reference_data_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -32,7 +32,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SecuritySolutionsReferenceDataOperations: @@ -93,7 +94,11 @@ async def list(self, **kwargs: Any) -> _models.SecuritySolutionsReferenceDataLis if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecuritySolutionsReferenceDataList", pipeline_response.http_response) @@ -145,7 +150,11 @@ async def list_by_home_region(self, asc_location: str, **kwargs: Any) -> _models if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecuritySolutionsReferenceDataList", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_standards_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_standards_operations.py index 160aeec0896f..9f7a6fd5a587 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_standards_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_standards_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -38,7 +38,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SecurityStandardsOperations: @@ -123,7 +124,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -178,7 +182,10 @@ async def get(self, scope: str, standard_id: str, **kwargs: Any) -> _models.Secu if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityStandard", pipeline_response.http_response) @@ -313,7 +320,10 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityStandard", pipeline_response.http_response) @@ -371,7 +381,10 @@ async def delete(self, scope: str, standard_id: str, **kwargs: Any) -> None: if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sensitivity_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sensitivity_settings_operations.py index 5bb96346729d..9f3af2d7b4e3 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sensitivity_settings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sensitivity_settings_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -34,7 +34,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SensitivitySettingsOperations: @@ -148,7 +149,11 @@ async def create_or_update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated8, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GetSensitivitySettingsResponse", pipeline_response.http_response) @@ -195,7 +200,11 @@ async def get(self, **kwargs: Any) -> _models.GetSensitivitySettingsResponse: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated8, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GetSensitivitySettingsResponse", pipeline_response.http_response) @@ -242,7 +251,11 @@ async def list(self, **kwargs: Any) -> _models.GetSensitivitySettingsListRespons if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated8, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GetSensitivitySettingsListResponse", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessment_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessment_operations.py index 947833f36879..9ba25e2fde07 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessment_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessment_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, AsyncIterator, Callable, Dict, Literal, Optional, TypeVar, Union, cast +from typing import Any, AsyncIterator, Callable, Literal, Optional, TypeVar, Union, cast from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -38,7 +38,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class ServerVulnerabilityAssessmentOperations: @@ -114,7 +115,11 @@ async def list_by_extended_resource( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ServerVulnerabilityAssessmentsList", pipeline_response.http_response) @@ -179,7 +184,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ServerVulnerabilityAssessment", pipeline_response.http_response) @@ -245,7 +254,11 @@ async def create_or_update( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ServerVulnerabilityAssessment", pipeline_response.http_response) @@ -299,7 +312,11 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessments_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessments_settings_operations.py index 773a817cd7b9..0822d2315876 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessments_settings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessments_settings_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -37,7 +37,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class ServerVulnerabilityAssessmentsSettingsOperations: # pylint: disable=name-too-long @@ -119,7 +120,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -173,7 +177,10 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ServerVulnerabilityAssessmentsSetting", pipeline_response.http_response) @@ -307,7 +314,10 @@ async def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ServerVulnerabilityAssessmentsSetting", pipeline_response.http_response) @@ -364,7 +374,10 @@ async def delete( if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_settings_operations.py index abbbef19ed49..9b386e797f9b 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_settings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_settings_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -32,7 +32,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SettingsOperations: @@ -111,19 +112,23 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated17, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response return AsyncItemPaged(get_next, extract_data) @distributed_trace_async - async def get(self, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any) -> _models.Setting: + async def get(self, setting_name: Union[str, _models.SettingName], **kwargs: Any) -> _models.Setting: """Settings of different configurations in Microsoft Defender for Cloud. :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated + :type setting_name: str or ~azure.mgmt.security.models.SettingName :return: Setting or the result of cls(response) :rtype: ~azure.mgmt.security.models.Setting :raises ~azure.core.exceptions.HttpResponseError: @@ -160,7 +165,11 @@ async def get(self, setting_name: Union[str, _models.SettingNameAutoGenerated], if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated17, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Setting", pipeline_response.http_response) @@ -172,7 +181,7 @@ async def get(self, setting_name: Union[str, _models.SettingNameAutoGenerated], @overload async def update( self, - setting_name: Union[str, _models.SettingNameAutoGenerated], + setting_name: Union[str, _models.SettingName], setting: _models.Setting, *, content_type: str = "application/json", @@ -182,7 +191,7 @@ async def update( :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated + :type setting_name: str or ~azure.mgmt.security.models.SettingName :param setting: Setting object. Required. :type setting: ~azure.mgmt.security.models.Setting :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. @@ -196,7 +205,7 @@ async def update( @overload async def update( self, - setting_name: Union[str, _models.SettingNameAutoGenerated], + setting_name: Union[str, _models.SettingName], setting: IO[bytes], *, content_type: str = "application/json", @@ -206,7 +215,7 @@ async def update( :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated + :type setting_name: str or ~azure.mgmt.security.models.SettingName :param setting: Setting object. Required. :type setting: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. @@ -219,16 +228,13 @@ async def update( @distributed_trace_async async def update( - self, - setting_name: Union[str, _models.SettingNameAutoGenerated], - setting: Union[_models.Setting, IO[bytes]], - **kwargs: Any + self, setting_name: Union[str, _models.SettingName], setting: Union[_models.Setting, IO[bytes]], **kwargs: Any ) -> _models.Setting: """updating settings about different configurations in Microsoft Defender for Cloud. :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated + :type setting_name: str or ~azure.mgmt.security.models.SettingName :param setting: Setting object. Is either a Setting type or a IO[bytes] type. Required. :type setting: ~azure.mgmt.security.models.Setting or IO[bytes] :return: Setting or the result of cls(response) @@ -279,7 +285,11 @@ async def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated17, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Setting", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_software_inventories_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_software_inventories_operations.py deleted file mode 100644 index 5f0a3446d202..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_software_inventories_operations.py +++ /dev/null @@ -1,271 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._software_inventories_operations import ( - build_get_request, - build_list_by_extended_resource_request, - build_list_by_subscription_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class SoftwareInventoriesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`software_inventories` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_extended_resource( - self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.Software"]: - """Gets the software inventory of the virtual machine. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param resource_namespace: The namespace of the resource. Required. - :type resource_namespace: str - :param resource_type: The type of the resource. Required. - :type resource_type: str - :param resource_name: Name of the resource. Required. - :type resource_name: str - :return: An iterator like instance of either Software or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Software] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-05-01-preview")) - cls: ClsType[_models.SoftwaresList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_extended_resource_request( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SoftwaresList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.Software"]: - """Gets the software inventory of all virtual machines in the subscriptions. - - :return: An iterator like instance of either Software or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Software] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-05-01-preview")) - cls: ClsType[_models.SoftwaresList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SoftwaresList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - resource_namespace: str, - resource_type: str, - resource_name: str, - software_name: str, - **kwargs: Any - ) -> _models.Software: - """Gets a single software data of the virtual machine. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param resource_namespace: The namespace of the resource. Required. - :type resource_namespace: str - :param resource_type: The type of the resource. Required. - :type resource_type: str - :param resource_name: Name of the resource. Required. - :type resource_name: str - :param software_name: Name of the installed software. Required. - :type software_name: str - :return: Software or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Software - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-05-01-preview")) - cls: ClsType[_models.Software] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - software_name=software_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Software", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_baseline_rules_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_baseline_rules_operations.py index 00df2e64c9a4..9bcf86cf5730 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_baseline_rules_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_baseline_rules_operations.py @@ -7,9 +7,10 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient +from azure.core.async_paging import AsyncItemPaged, AsyncList from azure.core.exceptions import ( ClientAuthenticationError, HttpResponseError, @@ -20,6 +21,7 @@ ) from azure.core.pipeline import PipelineResponse from azure.core.rest import AsyncHttpResponse, HttpRequest +from azure.core.tracing.decorator import distributed_trace from azure.core.tracing.decorator_async import distributed_trace_async from azure.core.utils import case_insensitive_dict from azure.mgmt.core.exceptions import ARMErrorFormat @@ -36,7 +38,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SqlVulnerabilityAssessmentBaselineRulesOperations: # pylint: disable=name-too-long @@ -61,9 +64,9 @@ def __init__(self, *args, **kwargs) -> None: @overload async def create_or_update( self, - rule_id: str, - workspace_id: str, resource_id: str, + rule_id: str, + database_name: Optional[str] = None, body: Optional[_models.RuleResultsInput] = None, *, content_type: str = "application/json", @@ -73,12 +76,15 @@ async def create_or_update( Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - :param rule_id: The rule Id. Required. - :type rule_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :param body: The baseline results for this rule. Default value is None. :type body: ~azure.mgmt.security.models.RuleResultsInput :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. @@ -92,9 +98,9 @@ async def create_or_update( @overload async def create_or_update( self, - rule_id: str, - workspace_id: str, resource_id: str, + rule_id: str, + database_name: Optional[str] = None, body: Optional[IO[bytes]] = None, *, content_type: str = "application/json", @@ -104,12 +110,15 @@ async def create_or_update( Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - :param rule_id: The rule Id. Required. - :type rule_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :param body: The baseline results for this rule. Default value is None. :type body: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. @@ -123,9 +132,9 @@ async def create_or_update( @distributed_trace_async async def create_or_update( self, - rule_id: str, - workspace_id: str, resource_id: str, + rule_id: str, + database_name: Optional[str] = None, body: Optional[Union[_models.RuleResultsInput, IO[bytes]]] = None, **kwargs: Any ) -> _models.RuleResults: @@ -133,12 +142,15 @@ async def create_or_update( Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - :param rule_id: The rule Id. Required. - :type rule_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :param body: The baseline results for this rule. Is either a RuleResultsInput type or a IO[bytes] type. Default value is None. :type body: ~azure.mgmt.security.models.RuleResultsInput or IO[bytes] @@ -157,11 +169,12 @@ async def create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if body else None cls: ClsType[_models.RuleResults] = kwargs.pop("cls", None) - content_type = content_type or "application/json" + content_type = content_type or "application/json" if body else None _json = None _content = None if isinstance(body, (IOBase, bytes)): @@ -173,9 +186,9 @@ async def create_or_update( _json = None _request = build_create_or_update_request( - rule_id=rule_id, resource_id=resource_id, - workspace_id=workspace_id, + rule_id=rule_id, + database_name=database_name, api_version=api_version, content_type=content_type, json=_json, @@ -192,9 +205,13 @@ async def create_or_update( response = pipeline_response.http_response - if response.status_code not in [200]: + if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("RuleResults", pipeline_response.http_response) @@ -204,17 +221,22 @@ async def create_or_update( return deserialized # type: ignore @distributed_trace_async - async def get(self, rule_id: str, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.RuleResults: + async def get( + self, resource_id: str, rule_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> _models.RuleResults: """Gets the results for a given rule in the Baseline. Gets the results for a given rule in the Baseline. - :param rule_id: The rule Id. Required. - :type rule_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :return: RuleResults or the result of cls(response) :rtype: ~azure.mgmt.security.models.RuleResults :raises ~azure.core.exceptions.HttpResponseError: @@ -230,13 +252,13 @@ async def get(self, rule_id: str, workspace_id: str, resource_id: str, **kwargs: _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) cls: ClsType[_models.RuleResults] = kwargs.pop("cls", None) _request = build_get_request( - rule_id=rule_id, resource_id=resource_id, - workspace_id=workspace_id, + rule_id=rule_id, + database_name=database_name, api_version=api_version, headers=_headers, params=_params, @@ -252,7 +274,11 @@ async def get(self, rule_id: str, workspace_id: str, resource_id: str, **kwargs: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("RuleResults", pipeline_response.http_response) @@ -262,17 +288,20 @@ async def get(self, rule_id: str, workspace_id: str, resource_id: str, **kwargs: return deserialized # type: ignore @distributed_trace_async - async def delete(self, rule_id: str, workspace_id: str, resource_id: str, **kwargs: Any) -> None: + async def delete(self, resource_id: str, rule_id: str, database_name: Optional[str] = None, **kwargs: Any) -> None: """Deletes a rule from the Baseline of a given database. Deletes a rule from the Baseline of a given database. - :param rule_id: The rule Id. Required. - :type rule_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :return: None or the result of cls(response) :rtype: None :raises ~azure.core.exceptions.HttpResponseError: @@ -288,13 +317,13 @@ async def delete(self, rule_id: str, workspace_id: str, resource_id: str, **kwar _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) cls: ClsType[None] = kwargs.pop("cls", None) _request = build_delete_request( - rule_id=rule_id, resource_id=resource_id, - workspace_id=workspace_id, + rule_id=rule_id, + database_name=database_name, api_version=api_version, headers=_headers, params=_params, @@ -310,25 +339,40 @@ async def delete(self, rule_id: str, workspace_id: str, resource_id: str, **kwar if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore - @distributed_trace_async - async def list(self, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.RulesResults: + @distributed_trace + def list( + self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.RuleResults"]: """Gets the results for all rules in the Baseline. Gets the results for all rules in the Baseline. - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str - :return: RulesResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RulesResults + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str + :return: An iterator like instance of either RuleResults or the result of cls(response) + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.RuleResults] :raises ~azure.core.exceptions.HttpResponseError: """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.RulesResults] = kwargs.pop("cls", None) + error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -337,57 +381,73 @@ async def list(self, workspace_id: str, resource_id: str, **kwargs: Any) -> _mod } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) - cls: ClsType[_models.RulesResults] = kwargs.pop("cls", None) - - _request = build_list_request( - resource_id=resource_id, - workspace_id=workspace_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) + def prepare_request(next_link=None): + if not next_link: - response = pipeline_response.http_response + _request = build_list_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RulesResults", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + async def extract_data(pipeline_response): + deserialized = self._deserialize("RulesResults", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) @overload async def add( self, - workspace_id: str, resource_id: str, + database_name: Optional[str] = None, body: Optional[_models.RulesResultsInput] = None, *, content_type: str = "application/json", **kwargs: Any ) -> _models.RulesResults: - """Add a list of baseline rules. Will overwrite any previously existing results (for all rules). + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - Add a list of baseline rules. Will overwrite any previously existing results (for all rules). + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :param body: The baseline rules. Default value is None. :type body: ~azure.mgmt.security.models.RulesResultsInput :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. @@ -401,21 +461,24 @@ async def add( @overload async def add( self, - workspace_id: str, resource_id: str, + database_name: Optional[str] = None, body: Optional[IO[bytes]] = None, *, content_type: str = "application/json", **kwargs: Any ) -> _models.RulesResults: - """Add a list of baseline rules. Will overwrite any previously existing results (for all rules). + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - Add a list of baseline rules. Will overwrite any previously existing results (for all rules). + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :param body: The baseline rules. Default value is None. :type body: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. @@ -429,19 +492,22 @@ async def add( @distributed_trace_async async def add( self, - workspace_id: str, resource_id: str, + database_name: Optional[str] = None, body: Optional[Union[_models.RulesResultsInput, IO[bytes]]] = None, **kwargs: Any ) -> _models.RulesResults: - """Add a list of baseline rules. Will overwrite any previously existing results (for all rules). + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - Add a list of baseline rules. Will overwrite any previously existing results (for all rules). + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :param body: The baseline rules. Is either a RulesResultsInput type or a IO[bytes] type. Default value is None. :type body: ~azure.mgmt.security.models.RulesResultsInput or IO[bytes] @@ -460,11 +526,12 @@ async def add( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if body else None cls: ClsType[_models.RulesResults] = kwargs.pop("cls", None) - content_type = content_type or "application/json" + content_type = content_type or "application/json" if body else None _json = None _content = None if isinstance(body, (IOBase, bytes)): @@ -477,7 +544,7 @@ async def add( _request = build_add_request( resource_id=resource_id, - workspace_id=workspace_id, + database_name=database_name, api_version=api_version, content_type=content_type, json=_json, @@ -496,7 +563,11 @@ async def add( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("RulesResults", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scan_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scan_results_operations.py index e921cc34e6fa..0eac9972fd94 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scan_results_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scan_results_operations.py @@ -6,9 +6,10 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient +from azure.core.async_paging import AsyncItemPaged, AsyncList from azure.core.exceptions import ( ClientAuthenticationError, HttpResponseError, @@ -19,6 +20,7 @@ ) from azure.core.pipeline import PipelineResponse from azure.core.rest import AsyncHttpResponse, HttpRequest +from azure.core.tracing.decorator import distributed_trace from azure.core.tracing.decorator_async import distributed_trace_async from azure.core.utils import case_insensitive_dict from azure.mgmt.core.exceptions import ARMErrorFormat @@ -29,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SqlVulnerabilityAssessmentScanResultsOperations: # pylint: disable=name-too-long @@ -53,7 +56,7 @@ def __init__(self, *args, **kwargs) -> None: @distributed_trace_async async def get( - self, scan_id: str, scan_result_id: str, workspace_id: str, resource_id: str, **kwargs: Any + self, scan_id: str, scan_result_id: str, resource_id: str, database_name: Optional[str] = None, **kwargs: Any ) -> _models.ScanResult: """Gets the scan results of a single rule in a scan record. @@ -64,10 +67,13 @@ async def get( :type scan_id: str :param scan_result_id: The rule Id of the results. Required. :type scan_result_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :return: ScanResult or the result of cls(response) :rtype: ~azure.mgmt.security.models.ScanResult :raises ~azure.core.exceptions.HttpResponseError: @@ -83,14 +89,14 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) cls: ClsType[_models.ScanResult] = kwargs.pop("cls", None) _request = build_get_request( scan_id=scan_id, scan_result_id=scan_result_id, resource_id=resource_id, - workspace_id=workspace_id, + database_name=database_name, api_version=api_version, headers=_headers, params=_params, @@ -106,7 +112,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ScanResult", pipeline_response.http_response) @@ -115,8 +125,10 @@ async def get( return deserialized # type: ignore - @distributed_trace_async - async def list(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.ScanResults: + @distributed_trace + def list( + self, scan_id: str, resource_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.ScanResult"]: """Gets a list of scan results for a single scan record. Gets a list of scan results for a single scan record. @@ -124,14 +136,23 @@ async def list(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs :param scan_id: The scan Id. Type 'latest' to get the scan results for the latest scan. Required. :type scan_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str - :return: ScanResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ScanResults + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str + :return: An iterator like instance of either ScanResult or the result of cls(response) + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ScanResult] :raises ~azure.core.exceptions.HttpResponseError: """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.ScanResults] = kwargs.pop("cls", None) + error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -140,36 +161,49 @@ async def list(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) - cls: ClsType[_models.ScanResults] = kwargs.pop("cls", None) - - _request = build_list_request( - scan_id=scan_id, - resource_id=resource_id, - workspace_id=workspace_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ScanResults", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_request( + scan_id=scan_id, + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + async def extract_data(pipeline_response): + deserialized = self._deserialize("ScanResults", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scans_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scans_operations.py index 496d0a33ddf0..25403abd831c 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scans_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scans_operations.py @@ -6,30 +6,42 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, AsyncIterator, Callable, Optional, TypeVar, Union, cast from azure.core import AsyncPipelineClient +from azure.core.async_paging import AsyncItemPaged, AsyncList from azure.core.exceptions import ( ClientAuthenticationError, HttpResponseError, ResourceExistsError, ResourceNotFoundError, ResourceNotModifiedError, + StreamClosedError, + StreamConsumedError, map_error, ) from azure.core.pipeline import PipelineResponse +from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod from azure.core.rest import AsyncHttpResponse, HttpRequest +from azure.core.tracing.decorator import distributed_trace from azure.core.tracing.decorator_async import distributed_trace_async from azure.core.utils import case_insensitive_dict from azure.mgmt.core.exceptions import ARMErrorFormat +from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling from ... import models as _models from ..._utils.serialization import Deserializer, Serializer -from ...operations._sql_vulnerability_assessment_scans_operations import build_get_request, build_list_request +from ...operations._sql_vulnerability_assessment_scans_operations import ( + build_get_request, + build_get_scan_operation_result_request, + build_initiate_scan_request, + build_list_request, +) from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SqlVulnerabilityAssessmentScansOperations: # pylint: disable=name-too-long @@ -52,7 +64,9 @@ def __init__(self, *args, **kwargs) -> None: self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace_async - async def get(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.Scan: + async def get( + self, scan_id: str, resource_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> _models.ScanV2: """Gets the scan details of a single scan record. Gets the scan details of a single scan record. @@ -60,12 +74,15 @@ async def get(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: :param scan_id: The scan Id. Type 'latest' to get the scan record for the latest scan. Required. :type scan_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str - :return: Scan or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Scan + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str + :return: ScanV2 or the result of cls(response) + :rtype: ~azure.mgmt.security.models.ScanV2 :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -79,13 +96,13 @@ async def get(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) - cls: ClsType[_models.Scan] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.ScanV2] = kwargs.pop("cls", None) _request = build_get_request( scan_id=scan_id, resource_id=resource_id, - workspace_id=workspace_id, + database_name=database_name, api_version=api_version, headers=_headers, params=_params, @@ -101,27 +118,243 @@ async def get(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("Scan", pipeline_response.http_response) + deserialized = self._deserialize("ScanV2", pipeline_response.http_response) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore - @distributed_trace_async - async def list(self, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.Scans: + @distributed_trace + def list( + self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.ScanV2"]: """Gets a list of scan records. Gets a list of scan records. - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str - :return: Scans or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Scans + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str + :return: An iterator like instance of either ScanV2 or the result of cls(response) + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ScanV2] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.ScansV2] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + async def extract_data(pipeline_response): + deserialized = self._deserialize("ScansV2", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + async def _initiate_scan_initial( + self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + _request = build_initiate_scan_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + + deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def begin_initiate_scan( + self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> AsyncLROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult]: + """Initiates a vulnerability assessment scan. + + Initiates a vulnerability assessment scan. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str + :return: An instance of AsyncLROPoller that returns either + SqlVulnerabilityAssessmentScanOperationResult or the result of cls(response) + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.SqlVulnerabilityAssessmentScanOperationResult] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._initiate_scan_initial( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + deserialized = self._deserialize( + "SqlVulnerabilityAssessmentScanOperationResult", pipeline_response.http_response + ) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace_async + async def get_scan_operation_result( + self, resource_id: str, operation_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentScanOperationResult: + """Gets the result of a scan operation initiated by the InitiateScan action. + + Gets the result of a scan operation initiated by the InitiateScan action. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :param operation_id: The operation id. Required. + :type operation_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str + :return: SqlVulnerabilityAssessmentScanOperationResult or the result of cls(response) + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -135,12 +368,13 @@ async def list(self, workspace_id: str, resource_id: str, **kwargs: Any) -> _mod _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) - cls: ClsType[_models.Scans] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.SqlVulnerabilityAssessmentScanOperationResult] = kwargs.pop("cls", None) - _request = build_list_request( + _request = build_get_scan_operation_result_request( resource_id=resource_id, - workspace_id=workspace_id, + operation_id=operation_id, + database_name=database_name, api_version=api_version, headers=_headers, params=_params, @@ -156,9 +390,15 @@ async def list(self, workspace_id: str, resource_id: str, **kwargs: Any) -> _mod if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Scans", pipeline_response.http_response) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize( + "SqlVulnerabilityAssessmentScanOperationResult", pipeline_response.http_response + ) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_settings_operations.py new file mode 100644 index 000000000000..5af8e8b81fbe --- /dev/null +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_settings_operations.py @@ -0,0 +1,296 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +from collections.abc import MutableMapping +from io import IOBase +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload + +from azure.core import AsyncPipelineClient +from azure.core.exceptions import ( + ClientAuthenticationError, + HttpResponseError, + ResourceExistsError, + ResourceNotFoundError, + ResourceNotModifiedError, + map_error, +) +from azure.core.pipeline import PipelineResponse +from azure.core.rest import AsyncHttpResponse, HttpRequest +from azure.core.tracing.decorator_async import distributed_trace_async +from azure.core.utils import case_insensitive_dict +from azure.mgmt.core.exceptions import ARMErrorFormat + +from ... import models as _models +from ..._utils.serialization import Deserializer, Serializer +from ...operations._sql_vulnerability_assessment_settings_operations import ( + build_create_or_update_request, + build_delete_request, + build_get_request, +) +from .._configuration import SecurityCenterConfiguration + +T = TypeVar("T") +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list + + +class SqlVulnerabilityAssessmentSettingsOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityCenter`'s + :attr:`sql_vulnerability_assessment_settings` attribute. + """ + + models = _models + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, resource_id: str, **kwargs: Any) -> _models.SqlVulnerabilityAssessmentSettings: + """Gets the SQL Vulnerability Assessment settings. + + Gets the SQL Vulnerability Assessment settings. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.SqlVulnerabilityAssessmentSettings] = kwargs.pop("cls", None) + + _request = build_get_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize("SqlVulnerabilityAssessmentSettings", pipeline_response.http_response) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + resource_id: str, + body: Optional[_models.SqlVulnerabilityAssessmentSettings] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Default value is None. + :type body: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_id: str, + body: Optional[IO[bytes]] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Default value is None. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_id: str, + body: Optional[Union[_models.SqlVulnerabilityAssessmentSettings, IO[bytes]]] = None, + **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Is either a + SqlVulnerabilityAssessmentSettings type or a IO[bytes] type. Default value is None. + :type body: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings or IO[bytes] + :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if body else None + cls: ClsType[_models.SqlVulnerabilityAssessmentSettings] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if body else None + _json = None + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + if body is not None: + _json = self._serialize.body(body, "SqlVulnerabilityAssessmentSettings") + else: + _json = None + + _request = build_create_or_update_request( + resource_id=resource_id, + api_version=api_version, + content_type=content_type, + json=_json, + content=_content, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize("SqlVulnerabilityAssessmentSettings", pipeline_response.http_response) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, resource_id: str, **kwargs: Any) -> None: + """Deletes the SQL Vulnerability Assessment settings. + + Deletes the SQL Vulnerability Assessment settings. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :return: None or the result of cls(response) + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_delete_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standard_assignments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standard_assignments_operations.py index 2933d23d2a71..090008315c83 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standard_assignments_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standard_assignments_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -38,7 +38,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class StandardAssignmentsOperations: @@ -108,7 +109,10 @@ async def get(self, resource_id: str, standard_assignment_name: str, **kwargs: A if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("StandardAssignment", pipeline_response.http_response) @@ -250,7 +254,10 @@ async def create( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("StandardAssignment", pipeline_response.http_response) @@ -309,7 +316,10 @@ async def delete(self, resource_id: str, standard_assignment_name: str, **kwargs if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: @@ -378,7 +388,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_entity_store_assignments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standards_operations.py similarity index 63% rename from sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_entity_store_assignments_operations.py rename to sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standards_operations.py index ac9b8b6c9b9c..a0f2a649c06c 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_entity_store_assignments_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standards_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -28,27 +28,28 @@ from ... import models as _models from ..._utils.serialization import Deserializer, Serializer -from ...operations._custom_entity_store_assignments_operations import ( - build_create_request, +from ...operations._standards_operations import ( + build_create_or_update_request, build_delete_request, build_get_request, - build_list_by_resource_group_request, build_list_by_subscription_request, + build_list_request, ) from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list -class CustomEntityStoreAssignmentsOperations: +class StandardsOperations: """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`custom_entity_store_assignments` attribute. + :attr:`standards` attribute. """ models = _models @@ -60,23 +61,155 @@ def __init__(self, *args, **kwargs) -> None: self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - @distributed_trace_async - async def get( - self, resource_group_name: str, custom_entity_store_assignment_name: str, **kwargs: Any - ) -> _models.CustomEntityStoreAssignment: - """Gets a custom entity store assignment. + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.Standard"]: + """Get a list of all relevant security standards over a subscription level scope. + + :return: An iterator like instance of either Standard or the result of cls(response) + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Standard] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.StandardList] = kwargs.pop("cls", None) - Gets a single custom entity store assignment by name for the provided subscription and resource - group. + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + async def extract_data(pipeline_response): + deserialized = self._deserialize("StandardList", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.next_link or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.Standard"]: + """Get security standards on all your resources inside a scope. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_entity_store_assignment_name: Name of the custom entity store assignment. - Generated name is GUID. Required. - :type custom_entity_store_assignment_name: str - :return: CustomEntityStoreAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomEntityStoreAssignment + :return: An iterator like instance of either Standard or the result of cls(response) + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Standard] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.StandardList] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + async def extract_data(pipeline_response): + deserialized = self._deserialize("StandardList", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.next_link or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + async def get(self, resource_group_name: str, standard_id: str, **kwargs: Any) -> _models.Standard: + """Get a specific security standard for the requested scope. + + :param resource_group_name: The name of the resource group within the user's subscription. The + name is case insensitive. Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :return: Standard or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Standard :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -90,12 +223,12 @@ async def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - cls: ClsType[_models.CustomEntityStoreAssignment] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.Standard] = kwargs.pop("cls", None) _request = build_get_request( resource_group_name=resource_group_name, - custom_entity_store_assignment_name=custom_entity_store_assignment_name, + standard_id=standard_id, subscription_id=self._config.subscription_id, api_version=api_version, headers=_headers, @@ -112,9 +245,13 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("CustomEntityStoreAssignment", pipeline_response.http_response) + deserialized = self._deserialize("Standard", pipeline_response.http_response) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -122,92 +259,78 @@ async def get( return deserialized # type: ignore @overload - async def create( + async def create_or_update( self, resource_group_name: str, - custom_entity_store_assignment_name: str, - custom_entity_store_assignment_request_body: _models.CustomEntityStoreAssignmentRequest, + standard_id: str, + standard: _models.Standard, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CustomEntityStoreAssignment: - """Creates a custom entity store assignment. - - Creates a custom entity store assignment for the provided subscription, if not already exists. + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_entity_store_assignment_name: Name of the custom entity store assignment. - Generated name is GUID. Required. - :type custom_entity_store_assignment_name: str - :param custom_entity_store_assignment_request_body: Custom entity store assignment body. - Required. - :type custom_entity_store_assignment_request_body: - ~azure.mgmt.security.models.CustomEntityStoreAssignmentRequest + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: ~azure.mgmt.security.models.Standard :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: CustomEntityStoreAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomEntityStoreAssignment + :return: Standard or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Standard :raises ~azure.core.exceptions.HttpResponseError: """ @overload - async def create( + async def create_or_update( self, resource_group_name: str, - custom_entity_store_assignment_name: str, - custom_entity_store_assignment_request_body: IO[bytes], + standard_id: str, + standard: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CustomEntityStoreAssignment: - """Creates a custom entity store assignment. - - Creates a custom entity store assignment for the provided subscription, if not already exists. + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_entity_store_assignment_name: Name of the custom entity store assignment. - Generated name is GUID. Required. - :type custom_entity_store_assignment_name: str - :param custom_entity_store_assignment_request_body: Custom entity store assignment body. - Required. - :type custom_entity_store_assignment_request_body: IO[bytes] + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: CustomEntityStoreAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomEntityStoreAssignment + :return: Standard or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Standard :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace_async - async def create( - self, - resource_group_name: str, - custom_entity_store_assignment_name: str, - custom_entity_store_assignment_request_body: Union[_models.CustomEntityStoreAssignmentRequest, IO[bytes]], - **kwargs: Any - ) -> _models.CustomEntityStoreAssignment: - """Creates a custom entity store assignment. - - Creates a custom entity store assignment for the provided subscription, if not already exists. + async def create_or_update( + self, resource_group_name: str, standard_id: str, standard: Union[_models.Standard, IO[bytes]], **kwargs: Any + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_entity_store_assignment_name: Name of the custom entity store assignment. - Generated name is GUID. Required. - :type custom_entity_store_assignment_name: str - :param custom_entity_store_assignment_request_body: Custom entity store assignment body. Is - either a CustomEntityStoreAssignmentRequest type or a IO[bytes] type. Required. - :type custom_entity_store_assignment_request_body: - ~azure.mgmt.security.models.CustomEntityStoreAssignmentRequest or IO[bytes] - :return: CustomEntityStoreAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomEntityStoreAssignment + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Is either a Standard type + or a IO[bytes] type. Required. + :type standard: ~azure.mgmt.security.models.Standard or IO[bytes] + :return: Standard or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Standard :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -221,23 +344,21 @@ async def create( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CustomEntityStoreAssignment] = kwargs.pop("cls", None) + cls: ClsType[_models.Standard] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(custom_entity_store_assignment_request_body, (IOBase, bytes)): - _content = custom_entity_store_assignment_request_body + if isinstance(standard, (IOBase, bytes)): + _content = standard else: - _json = self._serialize.body( - custom_entity_store_assignment_request_body, "CustomEntityStoreAssignmentRequest" - ) + _json = self._serialize.body(standard, "Standard") - _request = build_create_request( + _request = build_create_or_update_request( resource_group_name=resource_group_name, - custom_entity_store_assignment_name=custom_entity_store_assignment_name, + standard_id=standard_id, subscription_id=self._config.subscription_id, api_version=api_version, content_type=content_type, @@ -257,9 +378,13 @@ async def create( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("CustomEntityStoreAssignment", pipeline_response.http_response) + deserialized = self._deserialize("Standard", pipeline_response.http_response) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -267,17 +392,14 @@ async def create( return deserialized # type: ignore @distributed_trace_async - async def delete(self, resource_group_name: str, custom_entity_store_assignment_name: str, **kwargs: Any) -> None: - """Deleted a custom entity store assignment. - - Delete a custom entity store assignment by name for a provided subscription. + async def delete(self, resource_group_name: str, standard_id: str, **kwargs: Any) -> None: + """Delete a security standard on a scope. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_entity_store_assignment_name: Name of the custom entity store assignment. - Generated name is GUID. Required. - :type custom_entity_store_assignment_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str :return: None or the result of cls(response) :rtype: None :raises ~azure.core.exceptions.HttpResponseError: @@ -293,12 +415,12 @@ async def delete(self, resource_group_name: str, custom_entity_store_assignment_ _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) cls: ClsType[None] = kwargs.pop("cls", None) _request = build_delete_request( resource_group_name=resource_group_name, - custom_entity_store_assignment_name=custom_entity_store_assignment_name, + standard_id=standard_id, subscription_id=self._config.subscription_id, api_version=api_version, headers=_headers, @@ -315,147 +437,11 @@ async def delete(self, resource_group_name: str, custom_entity_store_assignment_ if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.CustomEntityStoreAssignment"]: - """List custom entity store assignments in a subscription and a resource group. - - List custom entity store assignments by a provided subscription and resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either CustomEntityStoreAssignment or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.CustomEntityStoreAssignment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - cls: ClsType[_models.CustomEntityStoreAssignmentsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("CustomEntityStoreAssignmentsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.CustomEntityStoreAssignment"]: - """List custom entity store assignments in a subscription. - - List custom entity store assignments by provided subscription. - - :return: An iterator like instance of either CustomEntityStoreAssignment or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.CustomEntityStoreAssignment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - cls: ClsType[_models.CustomEntityStoreAssignmentsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("CustomEntityStoreAssignmentsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sub_assessments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sub_assessments_operations.py index afa82ffff453..f4aef9d59843 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sub_assessments_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sub_assessments_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class SubAssessmentsOperations: @@ -116,7 +117,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -188,7 +193,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -246,7 +255,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecuritySubAssessment", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_tasks_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_tasks_operations.py index c8db382bb11e..02923857ce43 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_tasks_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_tasks_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar, Union +from typing import Any, Callable, Optional, TypeVar, Union from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -39,7 +39,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class TasksOperations: diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_topology_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_topology_operations.py index 926886fdc27d..64d14ff808b4 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_topology_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_topology_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -31,7 +31,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class TopologyOperations: @@ -110,7 +111,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -177,7 +182,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -235,7 +244,11 @@ async def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("TopologyResource", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_workspace_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_workspace_settings_operations.py index 0d4a67bdd196..420a6a217f93 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_workspace_settings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_workspace_settings_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -38,7 +38,8 @@ from .._configuration import SecurityCenterConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class WorkspaceSettingsOperations: @@ -118,7 +119,11 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -167,7 +172,11 @@ async def get(self, workspace_setting_name: str, **kwargs: Any) -> _models.Works if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("WorkspaceSetting", pipeline_response.http_response) @@ -281,7 +290,11 @@ async def create( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("WorkspaceSetting", pipeline_response.http_response) @@ -395,7 +408,11 @@ async def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("WorkspaceSetting", pipeline_response.http_response) @@ -447,7 +464,11 @@ async def delete(self, workspace_setting_name: str, **kwargs: Any) -> None: if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/__init__.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/__init__.py index 75f264d7ef57..c926df57234a 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/__init__.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/__init__.py @@ -56,12 +56,16 @@ AssessmentStatus, AssessmentStatusResponse, AssignedAssessmentItem, + AssignedComponentItem, AssignedStandardItem, + AssignedStandardItemAutoGenerated, + Assignment, + AssignmentList, + AssignmentPropertiesAdditionalData, AtaExternalSecuritySolution, AtaSolutionProperties, AttestationEvidence, Authentication, - AuthenticationDetailsProperties, Authorization, AutoProvisioningSetting, AutoProvisioningSettingList, @@ -77,8 +81,6 @@ AutomationTriggeringRule, AutomationUpdateModel, AutomationValidationStatus, - AwAssumeRoleAuthenticationDetailsProperties, - AwsCredsAuthenticationDetailsProperties, AwsEnvironmentData, AwsOrganizationalData, AwsOrganizationalDataMaster, @@ -111,7 +113,47 @@ CategoryConfiguration, CefExternalSecuritySolution, CefSolutionProperties, + CloudErrorAutoGenerated, + CloudErrorAutoGenerated10, + CloudErrorAutoGenerated11, + CloudErrorAutoGenerated12, + CloudErrorAutoGenerated13, + CloudErrorAutoGenerated14, + CloudErrorAutoGenerated15, + CloudErrorAutoGenerated16, + CloudErrorAutoGenerated17, + CloudErrorAutoGenerated18, + CloudErrorAutoGenerated19, + CloudErrorAutoGenerated2, + CloudErrorAutoGenerated20, + CloudErrorAutoGenerated3, + CloudErrorAutoGenerated4, + CloudErrorAutoGenerated5, + CloudErrorAutoGenerated6, + CloudErrorAutoGenerated7, + CloudErrorAutoGenerated8, + CloudErrorAutoGenerated9, CloudErrorBody, + CloudErrorBodyAutoGenerated, + CloudErrorBodyAutoGenerated10, + CloudErrorBodyAutoGenerated11, + CloudErrorBodyAutoGenerated12, + CloudErrorBodyAutoGenerated13, + CloudErrorBodyAutoGenerated14, + CloudErrorBodyAutoGenerated15, + CloudErrorBodyAutoGenerated16, + CloudErrorBodyAutoGenerated17, + CloudErrorBodyAutoGenerated18, + CloudErrorBodyAutoGenerated19, + CloudErrorBodyAutoGenerated2, + CloudErrorBodyAutoGenerated20, + CloudErrorBodyAutoGenerated3, + CloudErrorBodyAutoGenerated4, + CloudErrorBodyAutoGenerated5, + CloudErrorBodyAutoGenerated6, + CloudErrorBodyAutoGenerated7, + CloudErrorBodyAutoGenerated8, + CloudErrorBodyAutoGenerated9, CloudOffering, Compliance, ComplianceList, @@ -125,8 +167,6 @@ ConnectedWorkspace, ConnectionFromIpNotAllowed, ConnectionToIpNotAllowed, - ConnectorSetting, - ConnectorSettingList, ContainerRegistryVulnerabilityProperties, CspmMonitorAwsOffering, CspmMonitorAwsOfferingNativeCloudConnection, @@ -138,12 +178,6 @@ CspmMonitorGithubOffering, CspmMonitorJFrogOffering, CustomAlertRule, - CustomAssessmentAutomation, - CustomAssessmentAutomationRequest, - CustomAssessmentAutomationsListResult, - CustomEntityStoreAssignment, - CustomEntityStoreAssignmentRequest, - CustomEntityStoreAssignmentsListResult, CustomRecommendation, CustomRecommendationsList, DataExportSettings, @@ -205,6 +239,7 @@ DefenderForServersGcpOfferingVaAutoProvisioningConfiguration, DefenderForServersGcpOfferingVmScanners, DefenderForStorageSetting, + DefenderForStorageSettingList, DefenderForStorageSettingProperties, DenylistCustomAlertRule, DevOpsCapability, @@ -236,7 +271,7 @@ ExternalSecuritySolutionProperties, FailedLocalLoginsNotInAllowedRange, FileUploadsNotInAllowedRange, - GcpCredentialsDetailsProperties, + FilesScanSummary, GcpOrganizationalData, GcpOrganizationalDataMember, GcpOrganizationalDataOrganization, @@ -277,7 +312,6 @@ HttpC2DMessagesNotInAllowedRange, HttpC2DRejectedMessagesNotInAllowedRange, HttpD2CMessagesNotInAllowedRange, - HybridComputeSettingsProperties, Identity, InfoType, InformationProtectionKeyword, @@ -300,6 +334,7 @@ IoTSecuritySolutionsList, IoTSeverityMetrics, Issue, + IssueCreationRequest, JFrogEnvironmentData, JitNetworkAccessPoliciesList, JitNetworkAccessPolicy, @@ -326,9 +361,6 @@ MqttC2DRejectedMessagesNotInAllowedRange, MqttD2CMessagesNotInAllowedRange, NodeIdentifier, - NotificationsSource, - NotificationsSourceAlert, - NotificationsSourceAttackPath, OnPremiseResourceDetails, OnPremiseSqlResourceDetails, OnUploadFilters, @@ -340,6 +372,7 @@ OperationStatus, OperationStatusAutoGenerated, OperationStatusResult, + OperationStatusResultAutoGenerated, PartialAssessmentProperties, Path, Pricing, @@ -356,7 +389,6 @@ PrivateLinksList, ProcessNotAllowed, ProxyResource, - ProxyServerProperties, QueryCheck, QueuePurgesNotInAllowedRange, RecommendationConfigurationProperties, @@ -380,13 +412,13 @@ RuleResultsProperties, RulesResults, RulesResultsInput, - Scan, - ScanProperties, + ScanPropertiesV2, ScanResult, ScanResultProperties, ScanResults, ScanSummary, - Scans, + ScanV2, + ScansV2, ScopeElement, SecureScoreControlDefinitionItem, SecureScoreControlDefinitionList, @@ -415,9 +447,6 @@ SecurityAssessmentResponse, SecurityConnector, SecurityConnectorsList, - SecurityContact, - SecurityContactList, - SecurityContactPropertiesNotificationsByRole, SecurityOperator, SecurityOperatorList, SecuritySolution, @@ -438,17 +467,21 @@ ServerVulnerabilityAssessmentsSetting, ServerVulnerabilityAssessmentsSettingsList, ServerVulnerabilityProperties, - ServicePrincipalProperties, Setting, SettingsList, - Software, - SoftwaresList, SqlServerVulnerabilityProperties, + SqlVulnerabilityAssessmentScanOperationResult, + SqlVulnerabilityAssessmentScanOperationResultProperties, + SqlVulnerabilityAssessmentSettings, + SqlVulnerabilityAssessmentSettingsProperties, + Standard, StandardAssignment, StandardAssignmentMetadata, StandardAssignmentPropertiesAttestationData, StandardAssignmentPropertiesExemptionData, StandardAssignmentsList, + StandardComponentProperties, + StandardList, StandardMetadata, StatusAutoGenerated, SubAssessmentStatus, @@ -497,10 +530,10 @@ AssessmentStatusCode, AssessmentType, AttestationComplianceState, - AuthenticationProvisioningState, AuthenticationType, AutoDiscovery, AutoProvision, + AutomatedResponseType, BlobScanResultsOptions, BundleType, Categories, @@ -513,7 +546,6 @@ DesiredOnboardingState, DevOpsProvisioningState, Effect, - EndOfSupportStatus, Enforce, EnvironmentType, EventSource, @@ -526,7 +558,6 @@ GovernanceRuleOwnerSourceType, GovernanceRuleSourceResourceType, GovernanceRuleType, - HybridComputeProvisioningState, ImplementationEffort, InformationProtectionPolicyName, InheritFromParentState, @@ -536,8 +567,6 @@ InventoryListKind, IsEnabled, KindEnum, - MinimalRiskLevel, - MinimalSeverity, MipIntegrationStatus, OfferingType, OnboardingState, @@ -545,13 +574,13 @@ Operator, OrganizationMembershipType, Origin, - PermissionProperty, PricingTier, PrivateEndpointConnectionProvisioningState, PrivateEndpointServiceConnectionStatus, PropertyType, ProtocolEnum, ProvisioningState, + PublicNetworkAccess, Rank, RecommendationConfigStatus, RecommendationSupportedClouds, @@ -566,11 +595,10 @@ RuleState, RuleStatus, RuleType, + ScanOperationStatus, ScanState, ScanTriggerType, ScanningMode, - SecurityContactName, - SecurityContactRole, SecurityFamily, SecurityIssue, SecuritySolutionStatus, @@ -584,8 +612,9 @@ Severity, SeverityEnum, Source, - SourceType, + SqlVulnerabilityAssessmentState, StandardSupportedCloud, + StandardSupportedClouds, StandardType, State, Status, @@ -593,7 +622,6 @@ StatusReason, SubAssessmentStatusCode, SubPlan, - SupportedCloudEnum, Tactics, TaskUpdateActionType, Techniques, @@ -649,12 +677,16 @@ "AssessmentStatus", "AssessmentStatusResponse", "AssignedAssessmentItem", + "AssignedComponentItem", "AssignedStandardItem", + "AssignedStandardItemAutoGenerated", + "Assignment", + "AssignmentList", + "AssignmentPropertiesAdditionalData", "AtaExternalSecuritySolution", "AtaSolutionProperties", "AttestationEvidence", "Authentication", - "AuthenticationDetailsProperties", "Authorization", "AutoProvisioningSetting", "AutoProvisioningSettingList", @@ -670,8 +702,6 @@ "AutomationTriggeringRule", "AutomationUpdateModel", "AutomationValidationStatus", - "AwAssumeRoleAuthenticationDetailsProperties", - "AwsCredsAuthenticationDetailsProperties", "AwsEnvironmentData", "AwsOrganizationalData", "AwsOrganizationalDataMaster", @@ -704,7 +734,47 @@ "CategoryConfiguration", "CefExternalSecuritySolution", "CefSolutionProperties", + "CloudErrorAutoGenerated", + "CloudErrorAutoGenerated10", + "CloudErrorAutoGenerated11", + "CloudErrorAutoGenerated12", + "CloudErrorAutoGenerated13", + "CloudErrorAutoGenerated14", + "CloudErrorAutoGenerated15", + "CloudErrorAutoGenerated16", + "CloudErrorAutoGenerated17", + "CloudErrorAutoGenerated18", + "CloudErrorAutoGenerated19", + "CloudErrorAutoGenerated2", + "CloudErrorAutoGenerated20", + "CloudErrorAutoGenerated3", + "CloudErrorAutoGenerated4", + "CloudErrorAutoGenerated5", + "CloudErrorAutoGenerated6", + "CloudErrorAutoGenerated7", + "CloudErrorAutoGenerated8", + "CloudErrorAutoGenerated9", "CloudErrorBody", + "CloudErrorBodyAutoGenerated", + "CloudErrorBodyAutoGenerated10", + "CloudErrorBodyAutoGenerated11", + "CloudErrorBodyAutoGenerated12", + "CloudErrorBodyAutoGenerated13", + "CloudErrorBodyAutoGenerated14", + "CloudErrorBodyAutoGenerated15", + "CloudErrorBodyAutoGenerated16", + "CloudErrorBodyAutoGenerated17", + "CloudErrorBodyAutoGenerated18", + "CloudErrorBodyAutoGenerated19", + "CloudErrorBodyAutoGenerated2", + "CloudErrorBodyAutoGenerated20", + "CloudErrorBodyAutoGenerated3", + "CloudErrorBodyAutoGenerated4", + "CloudErrorBodyAutoGenerated5", + "CloudErrorBodyAutoGenerated6", + "CloudErrorBodyAutoGenerated7", + "CloudErrorBodyAutoGenerated8", + "CloudErrorBodyAutoGenerated9", "CloudOffering", "Compliance", "ComplianceList", @@ -718,8 +788,6 @@ "ConnectedWorkspace", "ConnectionFromIpNotAllowed", "ConnectionToIpNotAllowed", - "ConnectorSetting", - "ConnectorSettingList", "ContainerRegistryVulnerabilityProperties", "CspmMonitorAwsOffering", "CspmMonitorAwsOfferingNativeCloudConnection", @@ -731,12 +799,6 @@ "CspmMonitorGithubOffering", "CspmMonitorJFrogOffering", "CustomAlertRule", - "CustomAssessmentAutomation", - "CustomAssessmentAutomationRequest", - "CustomAssessmentAutomationsListResult", - "CustomEntityStoreAssignment", - "CustomEntityStoreAssignmentRequest", - "CustomEntityStoreAssignmentsListResult", "CustomRecommendation", "CustomRecommendationsList", "DataExportSettings", @@ -798,6 +860,7 @@ "DefenderForServersGcpOfferingVaAutoProvisioningConfiguration", "DefenderForServersGcpOfferingVmScanners", "DefenderForStorageSetting", + "DefenderForStorageSettingList", "DefenderForStorageSettingProperties", "DenylistCustomAlertRule", "DevOpsCapability", @@ -829,7 +892,7 @@ "ExternalSecuritySolutionProperties", "FailedLocalLoginsNotInAllowedRange", "FileUploadsNotInAllowedRange", - "GcpCredentialsDetailsProperties", + "FilesScanSummary", "GcpOrganizationalData", "GcpOrganizationalDataMember", "GcpOrganizationalDataOrganization", @@ -870,7 +933,6 @@ "HttpC2DMessagesNotInAllowedRange", "HttpC2DRejectedMessagesNotInAllowedRange", "HttpD2CMessagesNotInAllowedRange", - "HybridComputeSettingsProperties", "Identity", "InfoType", "InformationProtectionKeyword", @@ -893,6 +955,7 @@ "IoTSecuritySolutionsList", "IoTSeverityMetrics", "Issue", + "IssueCreationRequest", "JFrogEnvironmentData", "JitNetworkAccessPoliciesList", "JitNetworkAccessPolicy", @@ -919,9 +982,6 @@ "MqttC2DRejectedMessagesNotInAllowedRange", "MqttD2CMessagesNotInAllowedRange", "NodeIdentifier", - "NotificationsSource", - "NotificationsSourceAlert", - "NotificationsSourceAttackPath", "OnPremiseResourceDetails", "OnPremiseSqlResourceDetails", "OnUploadFilters", @@ -933,6 +993,7 @@ "OperationStatus", "OperationStatusAutoGenerated", "OperationStatusResult", + "OperationStatusResultAutoGenerated", "PartialAssessmentProperties", "Path", "Pricing", @@ -949,7 +1010,6 @@ "PrivateLinksList", "ProcessNotAllowed", "ProxyResource", - "ProxyServerProperties", "QueryCheck", "QueuePurgesNotInAllowedRange", "RecommendationConfigurationProperties", @@ -973,13 +1033,13 @@ "RuleResultsProperties", "RulesResults", "RulesResultsInput", - "Scan", - "ScanProperties", + "ScanPropertiesV2", "ScanResult", "ScanResultProperties", "ScanResults", "ScanSummary", - "Scans", + "ScanV2", + "ScansV2", "ScopeElement", "SecureScoreControlDefinitionItem", "SecureScoreControlDefinitionList", @@ -1008,9 +1068,6 @@ "SecurityAssessmentResponse", "SecurityConnector", "SecurityConnectorsList", - "SecurityContact", - "SecurityContactList", - "SecurityContactPropertiesNotificationsByRole", "SecurityOperator", "SecurityOperatorList", "SecuritySolution", @@ -1031,17 +1088,21 @@ "ServerVulnerabilityAssessmentsSetting", "ServerVulnerabilityAssessmentsSettingsList", "ServerVulnerabilityProperties", - "ServicePrincipalProperties", "Setting", "SettingsList", - "Software", - "SoftwaresList", "SqlServerVulnerabilityProperties", + "SqlVulnerabilityAssessmentScanOperationResult", + "SqlVulnerabilityAssessmentScanOperationResultProperties", + "SqlVulnerabilityAssessmentSettings", + "SqlVulnerabilityAssessmentSettingsProperties", + "Standard", "StandardAssignment", "StandardAssignmentMetadata", "StandardAssignmentPropertiesAttestationData", "StandardAssignmentPropertiesExemptionData", "StandardAssignmentsList", + "StandardComponentProperties", + "StandardList", "StandardMetadata", "StatusAutoGenerated", "SubAssessmentStatus", @@ -1087,10 +1148,10 @@ "AssessmentStatusCode", "AssessmentType", "AttestationComplianceState", - "AuthenticationProvisioningState", "AuthenticationType", "AutoDiscovery", "AutoProvision", + "AutomatedResponseType", "BlobScanResultsOptions", "BundleType", "Categories", @@ -1103,7 +1164,6 @@ "DesiredOnboardingState", "DevOpsProvisioningState", "Effect", - "EndOfSupportStatus", "Enforce", "EnvironmentType", "EventSource", @@ -1116,7 +1176,6 @@ "GovernanceRuleOwnerSourceType", "GovernanceRuleSourceResourceType", "GovernanceRuleType", - "HybridComputeProvisioningState", "ImplementationEffort", "InformationProtectionPolicyName", "InheritFromParentState", @@ -1126,8 +1185,6 @@ "InventoryListKind", "IsEnabled", "KindEnum", - "MinimalRiskLevel", - "MinimalSeverity", "MipIntegrationStatus", "OfferingType", "OnboardingState", @@ -1135,13 +1192,13 @@ "Operator", "OrganizationMembershipType", "Origin", - "PermissionProperty", "PricingTier", "PrivateEndpointConnectionProvisioningState", "PrivateEndpointServiceConnectionStatus", "PropertyType", "ProtocolEnum", "ProvisioningState", + "PublicNetworkAccess", "Rank", "RecommendationConfigStatus", "RecommendationSupportedClouds", @@ -1156,11 +1213,10 @@ "RuleState", "RuleStatus", "RuleType", + "ScanOperationStatus", "ScanState", "ScanTriggerType", "ScanningMode", - "SecurityContactName", - "SecurityContactRole", "SecurityFamily", "SecurityIssue", "SecuritySolutionStatus", @@ -1174,8 +1230,9 @@ "Severity", "SeverityEnum", "Source", - "SourceType", + "SqlVulnerabilityAssessmentState", "StandardSupportedCloud", + "StandardSupportedClouds", "StandardType", "State", "Status", @@ -1183,7 +1240,6 @@ "StatusReason", "SubAssessmentStatusCode", "SubPlan", - "SupportedCloudEnum", "Tactics", "TaskUpdateActionType", "Techniques", diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_models_py3.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_models_py3.py index 39db8630741e..6cca85fa74fb 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_models_py3.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_models_py3.py @@ -9,7 +9,7 @@ from collections.abc import MutableMapping import datetime -from typing import Any, Dict, List, Literal, Optional, TYPE_CHECKING, Union +from typing import Any, Literal, Optional, TYPE_CHECKING, Union from .._utils import serialization as _serialization @@ -244,7 +244,7 @@ class ExternalSecuritySolutionProperties(_serialization.Model): def __init__( self, *, - additional_properties: Optional[Dict[str, Any]] = None, + additional_properties: Optional[dict[str, Any]] = None, device_vendor: Optional[str] = None, device_type: Optional[str] = None, workspace: Optional["_models.ConnectedWorkspace"] = None, @@ -297,7 +297,7 @@ def __init__( self, *, connectivity_state: Optional[Union[str, "_models.AadConnectivityStateEnum"]] = None, - additional_properties: Optional[Dict[str, Any]] = None, + additional_properties: Optional[dict[str, Any]] = None, device_vendor: Optional[str] = None, device_type: Optional[str] = None, workspace: Optional["_models.ConnectedWorkspace"] = None, @@ -340,8 +340,7 @@ class Authentication(_serialization.Model): All required parameters must be populated in order to send to server. - :ivar authentication_type: The authentication type. Required. Known values are: "awsCreds", - "awsAssumeRole", and "gcpCredentials". + :ivar authentication_type: The authentication type. Required. "AccessToken" :vartype authentication_type: str or ~azure.mgmt.security.models.AuthenticationType """ @@ -366,8 +365,7 @@ class AccessTokenAuthentication(Authentication): All required parameters must be populated in order to send to server. - :ivar authentication_type: The authentication type. Required. Known values are: "awsCreds", - "awsAssumeRole", and "gcpCredentials". + :ivar authentication_type: The authentication type. Required. "AccessToken" :vartype authentication_type: str or ~azure.mgmt.security.models.AuthenticationType :ivar username: The user name that will be used while authenticating with the onboarded environment. @@ -405,11 +403,9 @@ def __init__(self, *, username: Optional[str] = None, access_token: Optional[str class ActionableRemediation(_serialization.Model): """Configuration payload for PR Annotations. - :ivar state: ActionableRemediation Setting. - None - the setting was never set. - Enabled - ActionableRemediation is enabled. - Disabled - ActionableRemediation is disabled. Known values are: "None", "Disabled", and - "Enabled". + :ivar state: ActionableRemediation Setting. None - the setting was never set. Enabled - + ActionableRemediation is enabled. Disabled - ActionableRemediation is disabled. Known values + are: "None", "Disabled", and "Enabled". :vartype state: str or ~azure.mgmt.security.models.ActionableRemediationState :ivar category_configurations: Gets or sets list of categories and severity levels. :vartype category_configurations: list[~azure.mgmt.security.models.CategoryConfiguration] @@ -434,17 +430,15 @@ def __init__( self, *, state: Optional[Union[str, "_models.ActionableRemediationState"]] = None, - category_configurations: Optional[List["_models.CategoryConfiguration"]] = None, + category_configurations: Optional[list["_models.CategoryConfiguration"]] = None, branch_configuration: Optional["_models.TargetBranchConfiguration"] = None, inherit_from_parent_state: Optional[Union[str, "_models.InheritFromParentState"]] = None, **kwargs: Any ) -> None: """ - :keyword state: ActionableRemediation Setting. - None - the setting was never set. - Enabled - ActionableRemediation is enabled. - Disabled - ActionableRemediation is disabled. Known values are: "None", "Disabled", and - "Enabled". + :keyword state: ActionableRemediation Setting. None - the setting was never set. Enabled - + ActionableRemediation is enabled. Disabled - ActionableRemediation is disabled. Known values + are: "None", "Disabled", and "Enabled". :paramtype state: str or ~azure.mgmt.security.models.ActionableRemediationState :keyword category_configurations: Gets or sets list of categories and severity levels. :paramtype category_configurations: list[~azure.mgmt.security.models.CategoryConfiguration] @@ -806,7 +800,7 @@ def __init__( *, workspace: Optional[str] = None, type: Union[str, "_models.AdditionalWorkspaceType"] = "Sentinel", - data_types: Optional[List[Union[str, "_models.AdditionalWorkspaceDataType"]]] = None, + data_types: Optional[list[Union[str, "_models.AdditionalWorkspaceDataType"]]] = None, **kwargs: Any ) -> None: """ @@ -875,8 +869,7 @@ class AgentlessConfiguration(_serialization.Model): "Exclusion". :vartype inventory_list_type: str or ~azure.mgmt.security.models.InventoryListKind :ivar inventory_list: Gets or sets the inventory list for inclusion or exclusion from - Agentless. - Will be ignored if agentless auto-discovery is enabled. + Agentless. Will be ignored if agentless auto-discovery is enabled. :vartype inventory_list: list[~azure.mgmt.security.models.InventoryList] """ @@ -893,9 +886,9 @@ def __init__( *, agentless_enabled: Optional[Union[str, "_models.AgentlessEnablement"]] = None, agentless_auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, - scanners: Optional[List[str]] = None, + scanners: Optional[list[str]] = None, inventory_list_type: Optional[Union[str, "_models.InventoryListKind"]] = None, - inventory_list: Optional[List["_models.InventoryList"]] = None, + inventory_list: Optional[list["_models.InventoryList"]] = None, **kwargs: Any ) -> None: """ @@ -911,8 +904,7 @@ def __init__( "Exclusion". :paramtype inventory_list_type: str or ~azure.mgmt.security.models.InventoryListKind :keyword inventory_list: Gets or sets the inventory list for inclusion or exclusion from - Agentless. - Will be ignored if agentless auto-discovery is enabled. + Agentless. Will be ignored if agentless auto-discovery is enabled. :paramtype inventory_list: list[~azure.mgmt.security.models.InventoryList] """ super().__init__(**kwargs) @@ -1075,7 +1067,7 @@ class Alert(Resource): def __init__( # pylint: disable=too-many-locals self, *, - extended_properties: Optional[Dict[str, str]] = None, + extended_properties: Optional[dict[str, str]] = None, supporting_evidence: Optional["_models.AlertPropertiesSupportingEvidence"] = None, **kwargs: Any ) -> None: @@ -1097,22 +1089,22 @@ def __init__( # pylint: disable=too-many-locals self.intent: Optional[Union[str, "_models.Intent"]] = None self.start_time_utc: Optional[datetime.datetime] = None self.end_time_utc: Optional[datetime.datetime] = None - self.resource_identifiers: Optional[List["_models.ResourceIdentifier"]] = None - self.remediation_steps: Optional[List[str]] = None + self.resource_identifiers: Optional[list["_models.ResourceIdentifier"]] = None + self.remediation_steps: Optional[list[str]] = None self.vendor_name: Optional[str] = None self.status: Optional[Union[str, "_models.AlertStatus"]] = None - self.extended_links: Optional[List[Dict[str, str]]] = None + self.extended_links: Optional[list[dict[str, str]]] = None self.alert_uri: Optional[str] = None self.time_generated_utc: Optional[datetime.datetime] = None self.product_name: Optional[str] = None self.processing_end_time_utc: Optional[datetime.datetime] = None - self.entities: Optional[List["_models.AlertEntity"]] = None + self.entities: Optional[list["_models.AlertEntity"]] = None self.is_incident: Optional[bool] = None self.correlation_key: Optional[str] = None self.extended_properties = extended_properties self.compromised_entity: Optional[str] = None - self.techniques: Optional[List[str]] = None - self.sub_techniques: Optional[List[str]] = None + self.techniques: Optional[list[str]] = None + self.sub_techniques: Optional[list[str]] = None self.supporting_evidence = supporting_evidence @@ -1137,7 +1129,7 @@ class AlertEntity(_serialization.Model): "type": {"key": "type", "type": "str"}, } - def __init__(self, *, additional_properties: Optional[Dict[str, JSON]] = None, **kwargs: Any) -> None: + def __init__(self, *, additional_properties: Optional[dict[str, JSON]] = None, **kwargs: Any) -> None: """ :keyword additional_properties: Unmatched properties from the message are deserialized to this collection. @@ -1168,7 +1160,7 @@ class AlertList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: Optional[List["_models.Alert"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.Alert"]] = None, **kwargs: Any) -> None: """ :keyword value: describes security alert properties. :paramtype value: list[~azure.mgmt.security.models.Alert] @@ -1199,7 +1191,7 @@ class AlertPropertiesSupportingEvidence(_serialization.Model): "type": {"key": "type", "type": "str"}, } - def __init__(self, *, additional_properties: Optional[Dict[str, JSON]] = None, **kwargs: Any) -> None: + def __init__(self, *, additional_properties: Optional[dict[str, JSON]] = None, **kwargs: Any) -> None: """ :keyword additional_properties: Unmatched properties from the message are deserialized to this collection. @@ -1236,7 +1228,7 @@ class AlertSimulatorRequestProperties(_serialization.Model): _subtype_map = {"kind": {"Bundles": "AlertSimulatorBundlesRequestProperties"}} - def __init__(self, *, additional_properties: Optional[Dict[str, Any]] = None, **kwargs: Any) -> None: + def __init__(self, *, additional_properties: Optional[dict[str, Any]] = None, **kwargs: Any) -> None: """ :keyword additional_properties: Unmatched properties from the message are deserialized to this collection. @@ -1274,8 +1266,8 @@ class AlertSimulatorBundlesRequestProperties(AlertSimulatorRequestProperties): def __init__( self, *, - additional_properties: Optional[Dict[str, Any]] = None, - bundles: Optional[List[Union[str, "_models.BundleType"]]] = None, + additional_properties: Optional[dict[str, Any]] = None, + bundles: Optional[list[Union[str, "_models.BundleType"]]] = None, **kwargs: Any ) -> None: """ @@ -1421,7 +1413,7 @@ class AlertsSuppressionRulesList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: List["_models.AlertsSuppressionRule"], **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.AlertsSuppressionRule"], **kwargs: Any) -> None: """ :keyword value: Required. :paramtype value: list[~azure.mgmt.security.models.AlertsSuppressionRule] @@ -1543,7 +1535,7 @@ class AllowedConnectionsList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.AllowedConnectionsResource"]] = None + self.value: Optional[list["_models.AllowedConnectionsResource"]] = None self.next_link: Optional[str] = None @@ -1590,7 +1582,7 @@ def __init__(self, **kwargs: Any) -> None: super().__init__(**kwargs) self.location: Optional[str] = None self.calculated_date_time: Optional[datetime.datetime] = None - self.connectable_resources: Optional[List["_models.ConnectableResource"]] = None + self.connectable_resources: Optional[list["_models.ConnectableResource"]] = None self.id: Optional[str] = None self.name: Optional[str] = None self.type: Optional[str] = None @@ -1705,7 +1697,7 @@ class AllowlistCustomAlertRule(ListCustomAlertRule): } } - def __init__(self, *, is_enabled: bool, allowlist_values: List[str], **kwargs: Any) -> None: + def __init__(self, *, is_enabled: bool, allowlist_values: list[str], **kwargs: Any) -> None: """ :keyword is_enabled: Status of the custom alert. Required. :paramtype is_enabled: bool @@ -2052,7 +2044,7 @@ class ApiCollectionList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.ApiCollection"]] = None + self.value: Optional[list["_models.ApiCollection"]] = None self.next_link: Optional[str] = None @@ -2100,7 +2092,7 @@ def __init__( display_name: Optional[str] = None, description: Optional[str] = None, source_resource_type: Optional[Union[str, "_models.ApplicationSourceResourceType"]] = None, - condition_sets: Optional[List[JSON]] = None, + condition_sets: Optional[list[JSON]] = None, **kwargs: Any ) -> None: """ @@ -2130,7 +2122,7 @@ class ApplicationCondition(_serialization.Model): :ivar value: The application Condition's Value like IDs that contain some string, see examples. :vartype value: str :ivar operator: The application Condition's Operator, for example Contains for id or In for - list of possible IDs, see examples. Known values are: "Contains", "Equals", "In", and "In". + list of possible IDs, see examples. Known values are: "Contains", "Equals", and "In". :vartype operator: str or ~azure.mgmt.security.models.ApplicationConditionOperator """ @@ -2155,7 +2147,7 @@ def __init__( examples. :paramtype value: str :keyword operator: The application Condition's Operator, for example Contains for id or In for - list of possible IDs, see examples. Known values are: "Contains", "Equals", "In", and "In". + list of possible IDs, see examples. Known values are: "Contains", "Equals", and "In". :paramtype operator: str or ~azure.mgmt.security.models.ApplicationConditionOperator """ super().__init__(**kwargs) @@ -2188,7 +2180,7 @@ class ApplicationsList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.Application"]] = None + self.value: Optional[list["_models.Application"]] = None self.next_link: Optional[str] = None @@ -2360,7 +2352,7 @@ class AscLocationList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.AscLocation"]] = None + self.value: Optional[list["_models.AscLocation"]] = None self.next_link: Optional[str] = None @@ -2512,234 +2504,64 @@ def __init__(self, *, assessment_key: Optional[str] = None, **kwargs: Any) -> No self.assessment_key = assessment_key -class AssignedStandardItem(_serialization.Model): - """Describe the properties of a of a standard assignments object reference. +class AssignedComponentItem(_serialization.Model): + """describe the properties of a security assessment object reference (by key). - :ivar id: Full resourceId of the Microsoft.Security/standard object. - :vartype id: str + :ivar key: unique key to a security assessment object. + :vartype key: str """ _attribute_map = { - "id": {"key": "id", "type": "str"}, + "key": {"key": "key", "type": "str"}, } - def __init__(self, *, id: Optional[str] = None, **kwargs: Any) -> None: # pylint: disable=redefined-builtin + def __init__(self, *, key: Optional[str] = None, **kwargs: Any) -> None: """ - :keyword id: Full resourceId of the Microsoft.Security/standard object. - :paramtype id: str + :keyword key: unique key to a security assessment object. + :paramtype key: str """ super().__init__(**kwargs) - self.id = id + self.key = key -class AtaExternalSecuritySolution(ExternalSecuritySolution): - """Represents an ATA security solution which sends logs to an OMS workspace. - - Variables are only populated by the server, and will be ignored when sending a request. +class AssignedStandardItem(_serialization.Model): + """Describe the properties of a of a standard assignments object reference. - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :vartype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - :ivar id: Resource Id. + :ivar id: Full resourceId of the Microsoft.Security/standard object. :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: The external security solution properties for ATA solutions. - :vartype properties: ~azure.mgmt.security.models.AtaSolutionProperties """ - _validation = { - "location": {"readonly": True}, - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "AtaSolutionProperties"}, - } - - def __init__( - self, - *, - kind: Optional[Union[str, "_models.ExternalSecuritySolutionKindEnum"]] = None, - properties: Optional["_models.AtaSolutionProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :paramtype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - :keyword properties: The external security solution properties for ATA solutions. - :paramtype properties: ~azure.mgmt.security.models.AtaSolutionProperties - """ - super().__init__(kind=kind, **kwargs) - self.properties = properties - - -class AtaSolutionProperties(ExternalSecuritySolutionProperties): - """The external security solution properties for ATA solutions. - - :ivar additional_properties: Unmatched properties from the message are deserialized to this - collection. - :vartype additional_properties: dict[str, any] - :ivar device_vendor: - :vartype device_vendor: str - :ivar device_type: - :vartype device_type: str - :ivar workspace: Represents an OMS workspace to which the solution is connected. - :vartype workspace: ~azure.mgmt.security.models.ConnectedWorkspace - :ivar last_event_received: - :vartype last_event_received: str - """ - - _attribute_map = { - "additional_properties": {"key": "", "type": "{object}"}, - "device_vendor": {"key": "deviceVendor", "type": "str"}, - "device_type": {"key": "deviceType", "type": "str"}, - "workspace": {"key": "workspace", "type": "ConnectedWorkspace"}, - "last_event_received": {"key": "lastEventReceived", "type": "str"}, - } - - def __init__( - self, - *, - additional_properties: Optional[Dict[str, Any]] = None, - device_vendor: Optional[str] = None, - device_type: Optional[str] = None, - workspace: Optional["_models.ConnectedWorkspace"] = None, - last_event_received: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword additional_properties: Unmatched properties from the message are deserialized to this - collection. - :paramtype additional_properties: dict[str, any] - :keyword device_vendor: - :paramtype device_vendor: str - :keyword device_type: - :paramtype device_type: str - :keyword workspace: Represents an OMS workspace to which the solution is connected. - :paramtype workspace: ~azure.mgmt.security.models.ConnectedWorkspace - :keyword last_event_received: - :paramtype last_event_received: str - """ - super().__init__( - additional_properties=additional_properties, - device_vendor=device_vendor, - device_type=device_type, - workspace=workspace, - **kwargs - ) - self.last_event_received = last_event_received - - -class AttestationEvidence(_serialization.Model): - """Describe the properties of a assignment attestation. - - :ivar description: The description of the evidence. - :vartype description: str - :ivar source_url: The source url of the evidence. - :vartype source_url: str - """ - - _attribute_map = { - "description": {"key": "description", "type": "str"}, - "source_url": {"key": "sourceUrl", "type": "str"}, } - def __init__(self, *, description: Optional[str] = None, source_url: Optional[str] = None, **kwargs: Any) -> None: + def __init__(self, *, id: Optional[str] = None, **kwargs: Any) -> None: # pylint: disable=redefined-builtin """ - :keyword description: The description of the evidence. - :paramtype description: str - :keyword source_url: The source url of the evidence. - :paramtype source_url: str + :keyword id: Full resourceId of the Microsoft.Security/standard object. + :paramtype id: str """ super().__init__(**kwargs) - self.description = description - self.source_url = source_url - - -class AuthenticationDetailsProperties(_serialization.Model): - """Settings for cloud authentication management. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AwAssumeRoleAuthenticationDetailsProperties, AwsCredsAuthenticationDetailsProperties, - GcpCredentialsDetailsProperties - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar authentication_provisioning_state: State of the multi-cloud connector. Known values are: - "Valid", "Invalid", "Expired", and "IncorrectPolicy". - :vartype authentication_provisioning_state: str or - ~azure.mgmt.security.models.AuthenticationProvisioningState - :ivar granted_permissions: The permissions detected in the cloud account. - :vartype granted_permissions: list[str or ~azure.mgmt.security.models.PermissionProperty] - :ivar authentication_type: Connect to your cloud account, for AWS use either account - credentials or role-based authentication. For GCP use account organization credentials. - Required. Known values are: "awsCreds", "awsAssumeRole", and "gcpCredentials". - :vartype authentication_type: str or ~azure.mgmt.security.models.AuthenticationType - """ - - _validation = { - "authentication_provisioning_state": {"readonly": True}, - "granted_permissions": {"readonly": True}, - "authentication_type": {"required": True}, - } - - _attribute_map = { - "authentication_provisioning_state": {"key": "authenticationProvisioningState", "type": "str"}, - "granted_permissions": {"key": "grantedPermissions", "type": "[str]"}, - "authentication_type": {"key": "authenticationType", "type": "str"}, - } - - _subtype_map = { - "authentication_type": { - "awsAssumeRole": "AwAssumeRoleAuthenticationDetailsProperties", - "awsCreds": "AwsCredsAuthenticationDetailsProperties", - "gcpCredentials": "GcpCredentialsDetailsProperties", - } - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.authentication_provisioning_state: Optional[Union[str, "_models.AuthenticationProvisioningState"]] = None - self.granted_permissions: Optional[List[Union[str, "_models.PermissionProperty"]]] = None - self.authentication_type: Optional[str] = None - + self.id = id -class Authorization(_serialization.Model): - """Authorization payload. - :ivar code: Gets or sets one-time OAuth code to exchange for refresh and access tokens. +class AssignedStandardItemAutoGenerated(_serialization.Model): + """describe the properties of a of a security standard object reference. - Only used during PUT/PATCH operations. The secret is cleared during GET. - :vartype code: str + :ivar id: full resourceId of the Microsoft.Security/standard object. + :vartype id: str """ _attribute_map = { - "code": {"key": "code", "type": "str"}, + "id": {"key": "id", "type": "str"}, } - def __init__(self, *, code: Optional[str] = None, **kwargs: Any) -> None: + def __init__(self, *, id: Optional[str] = None, **kwargs: Any) -> None: # pylint: disable=redefined-builtin """ - :keyword code: Gets or sets one-time OAuth code to exchange for refresh and access tokens. - - Only used during PUT/PATCH operations. The secret is cleared during GET. - :paramtype code: str + :keyword id: full resourceId of the Microsoft.Security/standard object. + :paramtype id: str """ super().__init__(**kwargs) - self.code = code + self.id = id class Tags(_serialization.Model): @@ -2753,7 +2575,7 @@ class Tags(_serialization.Model): "tags": {"key": "tags", "type": "{str}"}, } - def __init__(self, *, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: + def __init__(self, *, tags: Optional[dict[str, str]] = None, **kwargs: Any) -> None: """ :keyword tags: A list of key value pairs that describe the resource. :paramtype tags: dict[str, str] @@ -2865,7 +2687,7 @@ class TrackedResource(Resource, AzureTrackedResourceLocation, Kind, ETag, Tags): def __init__( self, *, - tags: Optional[Dict[str, str]] = None, + tags: Optional[dict[str, str]] = None, etag: Optional[str] = None, kind: Optional[str] = None, location: Optional[str] = None, @@ -2892,8 +2714,8 @@ def __init__( self.type: Optional[str] = None -class Automation(TrackedResource): - """The security automation resource. +class Assignment(TrackedResource): + """Security Assignment on a resource group over a given scope. Variables are only populated by the server, and will be ignored when sending a request. @@ -2912,26 +2734,38 @@ class Automation(TrackedResource): :vartype name: str :ivar type: Resource type. :vartype type: str - :ivar description: The security automation description. + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar display_name: display name of the standardAssignment. + :vartype display_name: str + :ivar description: description of the standardAssignment. :vartype description: str - :ivar is_enabled: Indicates whether the security automation is enabled. - :vartype is_enabled: bool - :ivar scopes: A collection of scopes on which the security automations logic is applied. - Supported scopes are the subscription itself or a resource group under that subscription. The - automation will only apply on defined scopes. - :vartype scopes: list[~azure.mgmt.security.models.AutomationScope] - :ivar sources: A collection of the source event types which evaluate the security automation - set of rules. - :vartype sources: list[~azure.mgmt.security.models.AutomationSource] - :ivar actions: A collection of the actions which are triggered if all the configured rules - evaluations, within at least one rule set, are true. - :vartype actions: list[~azure.mgmt.security.models.AutomationAction] + :ivar assigned_standard: Standard item with key as applied to this standard assignment over the + given scope. + :vartype assigned_standard: ~azure.mgmt.security.models.AssignedStandardItemAutoGenerated + :ivar assigned_component: Component item with key as applied to this standard assignment over + the given scope. + :vartype assigned_component: ~azure.mgmt.security.models.AssignedComponentItem + :ivar scope: Scope to which the standardAssignment applies - can be a subscription path or a + resource group under that subscription. + :vartype scope: str + :ivar effect: expected effect of this assignment (Disable/Exempt/etc). + :vartype effect: str + :ivar expires_on: Expiration date of this assignment as a full ISO date. + :vartype expires_on: ~datetime.datetime + :ivar additional_data: Additional data about the assignment. + :vartype additional_data: ~azure.mgmt.security.models.AssignmentPropertiesAdditionalData + :ivar metadata: The assignment metadata. Metadata is an open ended object and is typically a + collection of key value pairs. + :vartype metadata: JSON """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, + "system_data": {"readonly": True}, } _attribute_map = { @@ -2942,25 +2776,34 @@ class Automation(TrackedResource): "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, + "system_data": {"key": "systemData", "type": "SystemData"}, + "display_name": {"key": "properties.displayName", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, - "is_enabled": {"key": "properties.isEnabled", "type": "bool"}, - "scopes": {"key": "properties.scopes", "type": "[AutomationScope]"}, - "sources": {"key": "properties.sources", "type": "[AutomationSource]"}, - "actions": {"key": "properties.actions", "type": "[AutomationAction]"}, + "assigned_standard": {"key": "properties.assignedStandard", "type": "AssignedStandardItemAutoGenerated"}, + "assigned_component": {"key": "properties.assignedComponent", "type": "AssignedComponentItem"}, + "scope": {"key": "properties.scope", "type": "str"}, + "effect": {"key": "properties.effect", "type": "str"}, + "expires_on": {"key": "properties.expiresOn", "type": "iso-8601"}, + "additional_data": {"key": "properties.additionalData", "type": "AssignmentPropertiesAdditionalData"}, + "metadata": {"key": "properties.metadata", "type": "object"}, } def __init__( self, *, - tags: Optional[Dict[str, str]] = None, + tags: Optional[dict[str, str]] = None, etag: Optional[str] = None, kind: Optional[str] = None, location: Optional[str] = None, + display_name: Optional[str] = None, description: Optional[str] = None, - is_enabled: Optional[bool] = None, - scopes: Optional[List["_models.AutomationScope"]] = None, - sources: Optional[List["_models.AutomationSource"]] = None, - actions: Optional[List["_models.AutomationAction"]] = None, + assigned_standard: Optional["_models.AssignedStandardItemAutoGenerated"] = None, + assigned_component: Optional["_models.AssignedComponentItem"] = None, + scope: Optional[str] = None, + effect: Optional[str] = None, + expires_on: Optional[datetime.datetime] = None, + additional_data: Optional["_models.AssignmentPropertiesAdditionalData"] = None, + metadata: Optional[JSON] = None, **kwargs: Any ) -> None: """ @@ -2973,390 +2816,269 @@ def __init__( :paramtype kind: str :keyword location: Location where the resource is stored. :paramtype location: str - :keyword description: The security automation description. + :keyword display_name: display name of the standardAssignment. + :paramtype display_name: str + :keyword description: description of the standardAssignment. :paramtype description: str - :keyword is_enabled: Indicates whether the security automation is enabled. - :paramtype is_enabled: bool - :keyword scopes: A collection of scopes on which the security automations logic is applied. - Supported scopes are the subscription itself or a resource group under that subscription. The - automation will only apply on defined scopes. - :paramtype scopes: list[~azure.mgmt.security.models.AutomationScope] - :keyword sources: A collection of the source event types which evaluate the security automation - set of rules. - :paramtype sources: list[~azure.mgmt.security.models.AutomationSource] - :keyword actions: A collection of the actions which are triggered if all the configured rules - evaluations, within at least one rule set, are true. - :paramtype actions: list[~azure.mgmt.security.models.AutomationAction] + :keyword assigned_standard: Standard item with key as applied to this standard assignment over + the given scope. + :paramtype assigned_standard: ~azure.mgmt.security.models.AssignedStandardItemAutoGenerated + :keyword assigned_component: Component item with key as applied to this standard assignment + over the given scope. + :paramtype assigned_component: ~azure.mgmt.security.models.AssignedComponentItem + :keyword scope: Scope to which the standardAssignment applies - can be a subscription path or a + resource group under that subscription. + :paramtype scope: str + :keyword effect: expected effect of this assignment (Disable/Exempt/etc). + :paramtype effect: str + :keyword expires_on: Expiration date of this assignment as a full ISO date. + :paramtype expires_on: ~datetime.datetime + :keyword additional_data: Additional data about the assignment. + :paramtype additional_data: ~azure.mgmt.security.models.AssignmentPropertiesAdditionalData + :keyword metadata: The assignment metadata. Metadata is an open ended object and is typically a + collection of key value pairs. + :paramtype metadata: JSON """ super().__init__(tags=tags, etag=etag, kind=kind, location=location, **kwargs) + self.system_data: Optional["_models.SystemData"] = None + self.display_name = display_name self.description = description - self.is_enabled = is_enabled - self.scopes = scopes - self.sources = sources - self.actions = actions + self.assigned_standard = assigned_standard + self.assigned_component = assigned_component + self.scope = scope + self.effect = effect + self.expires_on = expires_on + self.additional_data = additional_data + self.metadata = metadata -class AutomationAction(_serialization.Model): - """The action that should be triggered. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AutomationActionEventHub, AutomationActionLogicApp, AutomationActionWorkspace +class AssignmentList(_serialization.Model): + """Page of a standard assignment list. - All required parameters must be populated in order to send to server. + Variables are only populated by the server, and will be ignored when sending a request. - :ivar action_type: The type of the action that will be triggered by the Automation. Required. - Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". - :vartype action_type: str or ~azure.mgmt.security.models.ActionType + :ivar value: Collection of standardAssignments in this page. + :vartype value: list[~azure.mgmt.security.models.Assignment] + :ivar next_link: The URI to fetch the next page. + :vartype next_link: str """ _validation = { - "action_type": {"required": True}, + "value": {"readonly": True}, + "next_link": {"readonly": True}, } _attribute_map = { - "action_type": {"key": "actionType", "type": "str"}, - } - - _subtype_map = { - "action_type": { - "EventHub": "AutomationActionEventHub", - "LogicApp": "AutomationActionLogicApp", - "Workspace": "AutomationActionWorkspace", - } + "value": {"key": "value", "type": "[Assignment]"}, + "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.action_type: Optional[str] = None + self.value: Optional[list["_models.Assignment"]] = None + self.next_link: Optional[str] = None -class AutomationActionEventHub(AutomationAction): - """The target Event Hub to which event data will be exported. To learn more about Microsoft - Defender for Cloud continuous export capabilities, visit https://aka.ms/ASCExportLearnMore. +class AssignmentPropertiesAdditionalData(_serialization.Model): + """Additional data about the assignment. - Variables are only populated by the server, and will be ignored when sending a request. + :ivar exemption_category: Exemption category of this assignment. + :vartype exemption_category: str + """ - All required parameters must be populated in order to send to server. + _attribute_map = { + "exemption_category": {"key": "exemptionCategory", "type": "str"}, + } - :ivar action_type: The type of the action that will be triggered by the Automation. Required. - Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". - :vartype action_type: str or ~azure.mgmt.security.models.ActionType - :ivar event_hub_resource_id: The target Event Hub Azure Resource ID. - :vartype event_hub_resource_id: str - :ivar sas_policy_name: The target Event Hub SAS policy name. - :vartype sas_policy_name: str - :ivar connection_string: The target Event Hub connection string (it will not be included in any - response). - :vartype connection_string: str - :ivar is_trusted_service_enabled: Indicates whether the trusted service is enabled or not. - :vartype is_trusted_service_enabled: bool + def __init__(self, *, exemption_category: Optional[str] = None, **kwargs: Any) -> None: + """ + :keyword exemption_category: Exemption category of this assignment. + :paramtype exemption_category: str + """ + super().__init__(**kwargs) + self.exemption_category = exemption_category + + +class AtaExternalSecuritySolution(ExternalSecuritySolution): + """Represents an ATA security solution which sends logs to an OMS workspace. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar location: Location where the resource is stored. + :vartype location: str + :ivar kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". + :vartype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum + :ivar id: Resource Id. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :ivar properties: The external security solution properties for ATA solutions. + :vartype properties: ~azure.mgmt.security.models.AtaSolutionProperties """ _validation = { - "action_type": {"required": True}, - "sas_policy_name": {"readonly": True}, + "location": {"readonly": True}, + "id": {"readonly": True}, + "name": {"readonly": True}, + "type": {"readonly": True}, } _attribute_map = { - "action_type": {"key": "actionType", "type": "str"}, - "event_hub_resource_id": {"key": "eventHubResourceId", "type": "str"}, - "sas_policy_name": {"key": "sasPolicyName", "type": "str"}, - "connection_string": {"key": "connectionString", "type": "str"}, - "is_trusted_service_enabled": {"key": "isTrustedServiceEnabled", "type": "bool"}, + "location": {"key": "location", "type": "str"}, + "kind": {"key": "kind", "type": "str"}, + "id": {"key": "id", "type": "str"}, + "name": {"key": "name", "type": "str"}, + "type": {"key": "type", "type": "str"}, + "properties": {"key": "properties", "type": "AtaSolutionProperties"}, } def __init__( self, *, - event_hub_resource_id: Optional[str] = None, - connection_string: Optional[str] = None, - is_trusted_service_enabled: Optional[bool] = None, + kind: Optional[Union[str, "_models.ExternalSecuritySolutionKindEnum"]] = None, + properties: Optional["_models.AtaSolutionProperties"] = None, **kwargs: Any ) -> None: """ - :keyword event_hub_resource_id: The target Event Hub Azure Resource ID. - :paramtype event_hub_resource_id: str - :keyword connection_string: The target Event Hub connection string (it will not be included in - any response). - :paramtype connection_string: str - :keyword is_trusted_service_enabled: Indicates whether the trusted service is enabled or not. - :paramtype is_trusted_service_enabled: bool + :keyword kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". + :paramtype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum + :keyword properties: The external security solution properties for ATA solutions. + :paramtype properties: ~azure.mgmt.security.models.AtaSolutionProperties """ - super().__init__(**kwargs) - self.action_type: str = "EventHub" - self.event_hub_resource_id = event_hub_resource_id - self.sas_policy_name: Optional[str] = None - self.connection_string = connection_string - self.is_trusted_service_enabled = is_trusted_service_enabled - + super().__init__(kind=kind, **kwargs) + self.properties = properties -class AutomationActionLogicApp(AutomationAction): - """The logic app action that should be triggered. To learn more about Microsoft Defender for - Cloud's Workflow Automation capabilities, visit https://aka.ms/ASCWorkflowAutomationLearnMore. - All required parameters must be populated in order to send to server. +class AtaSolutionProperties(ExternalSecuritySolutionProperties): + """The external security solution properties for ATA solutions. - :ivar action_type: The type of the action that will be triggered by the Automation. Required. - Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". - :vartype action_type: str or ~azure.mgmt.security.models.ActionType - :ivar logic_app_resource_id: The triggered Logic App Azure Resource ID. This can also reside on - other subscriptions, given that you have permissions to trigger the Logic App. - :vartype logic_app_resource_id: str - :ivar uri: The Logic App trigger URI endpoint (it will not be included in any response). - :vartype uri: str + :ivar additional_properties: Unmatched properties from the message are deserialized to this + collection. + :vartype additional_properties: dict[str, any] + :ivar device_vendor: + :vartype device_vendor: str + :ivar device_type: + :vartype device_type: str + :ivar workspace: Represents an OMS workspace to which the solution is connected. + :vartype workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :ivar last_event_received: + :vartype last_event_received: str """ - _validation = { - "action_type": {"required": True}, - } - _attribute_map = { - "action_type": {"key": "actionType", "type": "str"}, - "logic_app_resource_id": {"key": "logicAppResourceId", "type": "str"}, - "uri": {"key": "uri", "type": "str"}, + "additional_properties": {"key": "", "type": "{object}"}, + "device_vendor": {"key": "deviceVendor", "type": "str"}, + "device_type": {"key": "deviceType", "type": "str"}, + "workspace": {"key": "workspace", "type": "ConnectedWorkspace"}, + "last_event_received": {"key": "lastEventReceived", "type": "str"}, } def __init__( - self, *, logic_app_resource_id: Optional[str] = None, uri: Optional[str] = None, **kwargs: Any + self, + *, + additional_properties: Optional[dict[str, Any]] = None, + device_vendor: Optional[str] = None, + device_type: Optional[str] = None, + workspace: Optional["_models.ConnectedWorkspace"] = None, + last_event_received: Optional[str] = None, + **kwargs: Any ) -> None: """ - :keyword logic_app_resource_id: The triggered Logic App Azure Resource ID. This can also reside - on other subscriptions, given that you have permissions to trigger the Logic App. - :paramtype logic_app_resource_id: str - :keyword uri: The Logic App trigger URI endpoint (it will not be included in any response). - :paramtype uri: str + :keyword additional_properties: Unmatched properties from the message are deserialized to this + collection. + :paramtype additional_properties: dict[str, any] + :keyword device_vendor: + :paramtype device_vendor: str + :keyword device_type: + :paramtype device_type: str + :keyword workspace: Represents an OMS workspace to which the solution is connected. + :paramtype workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :keyword last_event_received: + :paramtype last_event_received: str """ - super().__init__(**kwargs) - self.action_type: str = "LogicApp" - self.logic_app_resource_id = logic_app_resource_id - self.uri = uri - + super().__init__( + additional_properties=additional_properties, + device_vendor=device_vendor, + device_type=device_type, + workspace=workspace, + **kwargs + ) + self.last_event_received = last_event_received -class AutomationActionWorkspace(AutomationAction): - """The Log Analytics Workspace to which event data will be exported. Security alerts data will - reside in the 'SecurityAlert' table and the assessments data will reside in the - 'SecurityRecommendation' table (under the 'Security'/'SecurityCenterFree' solutions). Note that - in order to view the data in the workspace, the Security Center Log Analytics free/standard - solution needs to be enabled on that workspace. To learn more about Microsoft Defender for - Cloud continuous export capabilities, visit https://aka.ms/ASCExportLearnMore. - All required parameters must be populated in order to send to server. +class AttestationEvidence(_serialization.Model): + """Describe the properties of a assignment attestation. - :ivar action_type: The type of the action that will be triggered by the Automation. Required. - Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". - :vartype action_type: str or ~azure.mgmt.security.models.ActionType - :ivar workspace_resource_id: The fully qualified Log Analytics Workspace Azure Resource ID. - :vartype workspace_resource_id: str + :ivar description: The description of the evidence. + :vartype description: str + :ivar source_url: The source url of the evidence. + :vartype source_url: str """ - _validation = { - "action_type": {"required": True}, - } - _attribute_map = { - "action_type": {"key": "actionType", "type": "str"}, - "workspace_resource_id": {"key": "workspaceResourceId", "type": "str"}, + "description": {"key": "description", "type": "str"}, + "source_url": {"key": "sourceUrl", "type": "str"}, } - def __init__(self, *, workspace_resource_id: Optional[str] = None, **kwargs: Any) -> None: + def __init__(self, *, description: Optional[str] = None, source_url: Optional[str] = None, **kwargs: Any) -> None: """ - :keyword workspace_resource_id: The fully qualified Log Analytics Workspace Azure Resource ID. - :paramtype workspace_resource_id: str + :keyword description: The description of the evidence. + :paramtype description: str + :keyword source_url: The source url of the evidence. + :paramtype source_url: str """ super().__init__(**kwargs) - self.action_type: str = "Workspace" - self.workspace_resource_id = workspace_resource_id - + self.description = description + self.source_url = source_url -class AutomationList(_serialization.Model): - """List of security automations response. - Variables are only populated by the server, and will be ignored when sending a request. +class Authorization(_serialization.Model): + """Authorization payload. - All required parameters must be populated in order to send to server. + :ivar code: Gets or sets one-time OAuth code to exchange for refresh and access tokens. - :ivar value: The list of security automations under the given scope. Required. - :vartype value: list[~azure.mgmt.security.models.Automation] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str + Only used during PUT/PATCH operations. The secret is cleared during GET. + :vartype code: str """ - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - _attribute_map = { - "value": {"key": "value", "type": "[Automation]"}, - "next_link": {"key": "nextLink", "type": "str"}, + "code": {"key": "code", "type": "str"}, } - def __init__(self, *, value: List["_models.Automation"], **kwargs: Any) -> None: + def __init__(self, *, code: Optional[str] = None, **kwargs: Any) -> None: """ - :keyword value: The list of security automations under the given scope. Required. - :paramtype value: list[~azure.mgmt.security.models.Automation] + :keyword code: Gets or sets one-time OAuth code to exchange for refresh and access tokens. + + Only used during PUT/PATCH operations. The secret is cleared during GET. + :paramtype code: str """ super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class AutomationRuleSet(_serialization.Model): - """A rule set which evaluates all its rules upon an event interception. Only when all the included - rules in the rule set will be evaluated as 'true', will the event trigger the defined actions. - - :ivar rules: - :vartype rules: list[~azure.mgmt.security.models.AutomationTriggeringRule] - """ - - _attribute_map = { - "rules": {"key": "rules", "type": "[AutomationTriggeringRule]"}, - } - - def __init__(self, *, rules: Optional[List["_models.AutomationTriggeringRule"]] = None, **kwargs: Any) -> None: - """ - :keyword rules: - :paramtype rules: list[~azure.mgmt.security.models.AutomationTriggeringRule] - """ - super().__init__(**kwargs) - self.rules = rules - - -class AutomationScope(_serialization.Model): - """A single automation scope. - - :ivar description: The resources scope description. - :vartype description: str - :ivar scope_path: The resources scope path. Can be the subscription on which the automation is - defined on or a resource group under that subscription (fully qualified Azure resource IDs). - :vartype scope_path: str - """ - - _attribute_map = { - "description": {"key": "description", "type": "str"}, - "scope_path": {"key": "scopePath", "type": "str"}, - } - - def __init__(self, *, description: Optional[str] = None, scope_path: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword description: The resources scope description. - :paramtype description: str - :keyword scope_path: The resources scope path. Can be the subscription on which the automation - is defined on or a resource group under that subscription (fully qualified Azure resource IDs). - :paramtype scope_path: str - """ - super().__init__(**kwargs) - self.description = description - self.scope_path = scope_path - - -class AutomationSource(_serialization.Model): - """The source event types which evaluate the security automation set of rules. For example - - security alerts and security assessments. To learn more about the supported security events - data models schemas - please visit https://aka.ms/ASCAutomationSchemas. - - :ivar event_source: A valid event source type. Known values are: "Assessments", - "AssessmentsSnapshot", "SubAssessments", "SubAssessmentsSnapshot", "Alerts", "SecureScores", - "SecureScoresSnapshot", "SecureScoreControls", "SecureScoreControlsSnapshot", - "RegulatoryComplianceAssessment", "RegulatoryComplianceAssessmentSnapshot", "AttackPaths", and - "AttackPathsSnapshot". - :vartype event_source: str or ~azure.mgmt.security.models.EventSource - :ivar rule_sets: A set of rules which evaluate upon event interception. A logical disjunction - is applied between defined rule sets (logical 'or'). - :vartype rule_sets: list[~azure.mgmt.security.models.AutomationRuleSet] - """ - - _attribute_map = { - "event_source": {"key": "eventSource", "type": "str"}, - "rule_sets": {"key": "ruleSets", "type": "[AutomationRuleSet]"}, - } - - def __init__( - self, - *, - event_source: Optional[Union[str, "_models.EventSource"]] = None, - rule_sets: Optional[List["_models.AutomationRuleSet"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword event_source: A valid event source type. Known values are: "Assessments", - "AssessmentsSnapshot", "SubAssessments", "SubAssessmentsSnapshot", "Alerts", "SecureScores", - "SecureScoresSnapshot", "SecureScoreControls", "SecureScoreControlsSnapshot", - "RegulatoryComplianceAssessment", "RegulatoryComplianceAssessmentSnapshot", "AttackPaths", and - "AttackPathsSnapshot". - :paramtype event_source: str or ~azure.mgmt.security.models.EventSource - :keyword rule_sets: A set of rules which evaluate upon event interception. A logical - disjunction is applied between defined rule sets (logical 'or'). - :paramtype rule_sets: list[~azure.mgmt.security.models.AutomationRuleSet] - """ - super().__init__(**kwargs) - self.event_source = event_source - self.rule_sets = rule_sets - - -class AutomationTriggeringRule(_serialization.Model): - """A rule which is evaluated upon event interception. The rule is configured by comparing a - specific value from the event model to an expected value. This comparison is done by using one - of the supported operators set. - - :ivar property_j_path: The JPath of the entity model property that should be checked. - :vartype property_j_path: str - :ivar property_type: The data type of the compared operands (string, integer, floating point - number or a boolean [true/false]]. Known values are: "String", "Integer", "Number", and - "Boolean". - :vartype property_type: str or ~azure.mgmt.security.models.PropertyType - :ivar expected_value: The expected value. - :vartype expected_value: str - :ivar operator: A valid comparer operator to use. A case-insensitive comparison will be applied - for String PropertyType. Known values are: "Equals", "GreaterThan", "GreaterThanOrEqualTo", - "LesserThan", "LesserThanOrEqualTo", "NotEquals", "Contains", "StartsWith", and "EndsWith". - :vartype operator: str or ~azure.mgmt.security.models.Operator - """ - - _attribute_map = { - "property_j_path": {"key": "propertyJPath", "type": "str"}, - "property_type": {"key": "propertyType", "type": "str"}, - "expected_value": {"key": "expectedValue", "type": "str"}, - "operator": {"key": "operator", "type": "str"}, - } + self.code = code - def __init__( - self, - *, - property_j_path: Optional[str] = None, - property_type: Optional[Union[str, "_models.PropertyType"]] = None, - expected_value: Optional[str] = None, - operator: Optional[Union[str, "_models.Operator"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword property_j_path: The JPath of the entity model property that should be checked. - :paramtype property_j_path: str - :keyword property_type: The data type of the compared operands (string, integer, floating point - number or a boolean [true/false]]. Known values are: "String", "Integer", "Number", and - "Boolean". - :paramtype property_type: str or ~azure.mgmt.security.models.PropertyType - :keyword expected_value: The expected value. - :paramtype expected_value: str - :keyword operator: A valid comparer operator to use. A case-insensitive comparison will be - applied for String PropertyType. Known values are: "Equals", "GreaterThan", - "GreaterThanOrEqualTo", "LesserThan", "LesserThanOrEqualTo", "NotEquals", "Contains", - "StartsWith", and "EndsWith". - :paramtype operator: str or ~azure.mgmt.security.models.Operator - """ - super().__init__(**kwargs) - self.property_j_path = property_j_path - self.property_type = property_type - self.expected_value = expected_value - self.operator = operator +class Automation(TrackedResource): + """The security automation resource. -class AutomationUpdateModel(Tags): - """The update model of security automation resource. + Variables are only populated by the server, and will be ignored when sending a request. :ivar tags: A list of key value pairs that describe the resource. :vartype tags: dict[str, str] + :ivar etag: Entity tag is used for comparing two or more entities from the same requested + resource. + :vartype etag: str + :ivar kind: Kind of the resource. + :vartype kind: str + :ivar location: Location where the resource is stored. + :vartype location: str + :ivar id: Resource Id. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str :ivar description: The security automation description. :vartype description: str :ivar is_enabled: Indicates whether the security automation is enabled. @@ -3373,8 +3095,20 @@ class AutomationUpdateModel(Tags): :vartype actions: list[~azure.mgmt.security.models.AutomationAction] """ + _validation = { + "id": {"readonly": True}, + "name": {"readonly": True}, + "type": {"readonly": True}, + } + _attribute_map = { "tags": {"key": "tags", "type": "{str}"}, + "etag": {"key": "etag", "type": "str"}, + "kind": {"key": "kind", "type": "str"}, + "location": {"key": "location", "type": "str"}, + "id": {"key": "id", "type": "str"}, + "name": {"key": "name", "type": "str"}, + "type": {"key": "type", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "is_enabled": {"key": "properties.isEnabled", "type": "bool"}, "scopes": {"key": "properties.scopes", "type": "[AutomationScope]"}, @@ -3385,17 +3119,27 @@ class AutomationUpdateModel(Tags): def __init__( self, *, - tags: Optional[Dict[str, str]] = None, + tags: Optional[dict[str, str]] = None, + etag: Optional[str] = None, + kind: Optional[str] = None, + location: Optional[str] = None, description: Optional[str] = None, is_enabled: Optional[bool] = None, - scopes: Optional[List["_models.AutomationScope"]] = None, - sources: Optional[List["_models.AutomationSource"]] = None, - actions: Optional[List["_models.AutomationAction"]] = None, + scopes: Optional[list["_models.AutomationScope"]] = None, + sources: Optional[list["_models.AutomationSource"]] = None, + actions: Optional[list["_models.AutomationAction"]] = None, **kwargs: Any ) -> None: """ :keyword tags: A list of key value pairs that describe the resource. :paramtype tags: dict[str, str] + :keyword etag: Entity tag is used for comparing two or more entities from the same requested + resource. + :paramtype etag: str + :keyword kind: Kind of the resource. + :paramtype kind: str + :keyword location: Location where the resource is stored. + :paramtype location: str :keyword description: The security automation description. :paramtype description: str :keyword is_enabled: Indicates whether the security automation is enabled. @@ -3411,7 +3155,7 @@ def __init__( evaluations, within at least one rule set, are true. :paramtype actions: list[~azure.mgmt.security.models.AutomationAction] """ - super().__init__(tags=tags, **kwargs) + super().__init__(tags=tags, etag=etag, kind=kind, location=location, **kwargs) self.description = description self.is_enabled = is_enabled self.scopes = scopes @@ -3419,456 +3163,469 @@ def __init__( self.actions = actions -class AutomationValidationStatus(_serialization.Model): - """The security automation model state property bag. +class AutomationAction(_serialization.Model): + """The action that should be triggered. - :ivar is_valid: Indicates whether the model is valid or not. - :vartype is_valid: bool - :ivar message: The validation message. - :vartype message: str + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AutomationActionEventHub, AutomationActionLogicApp, AutomationActionWorkspace + + All required parameters must be populated in order to send to server. + + :ivar action_type: The type of the action that will be triggered by the Automation. Required. + Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". + :vartype action_type: str or ~azure.mgmt.security.models.ActionType """ + _validation = { + "action_type": {"required": True}, + } + _attribute_map = { - "is_valid": {"key": "isValid", "type": "bool"}, - "message": {"key": "message", "type": "str"}, + "action_type": {"key": "actionType", "type": "str"}, } - def __init__(self, *, is_valid: Optional[bool] = None, message: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword is_valid: Indicates whether the model is valid or not. - :paramtype is_valid: bool - :keyword message: The validation message. - :paramtype message: str - """ + _subtype_map = { + "action_type": { + "EventHub": "AutomationActionEventHub", + "LogicApp": "AutomationActionLogicApp", + "Workspace": "AutomationActionWorkspace", + } + } + + def __init__(self, **kwargs: Any) -> None: + """ """ super().__init__(**kwargs) - self.is_valid = is_valid - self.message = message + self.action_type: Optional[str] = None -class AutoProvisioningSetting(Resource): - """Auto provisioning setting. +class AutomationActionEventHub(AutomationAction): + """The target Event Hub to which event data will be exported. To learn more about Microsoft + Defender for Cloud continuous export capabilities, visit https://aka.ms/ASCExportLearnMore. Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar auto_provision: Describes what kind of security agent provisioning action to take. Known - values are: "On" and "Off". - :vartype auto_provision: str or ~azure.mgmt.security.models.AutoProvision - """ + All required parameters must be populated in order to send to server. - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } + :ivar action_type: The type of the action that will be triggered by the Automation. Required. + Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". + :vartype action_type: str or ~azure.mgmt.security.models.ActionType + :ivar event_hub_resource_id: The target Event Hub Azure Resource ID. + :vartype event_hub_resource_id: str + :ivar sas_policy_name: The target Event Hub SAS policy name. + :vartype sas_policy_name: str + :ivar connection_string: The target Event Hub connection string (it will not be included in any + response). + :vartype connection_string: str + :ivar is_trusted_service_enabled: Indicates whether the trusted service is enabled or not. + :vartype is_trusted_service_enabled: bool + """ + + _validation = { + "action_type": {"required": True}, + "sas_policy_name": {"readonly": True}, + } _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "auto_provision": {"key": "properties.autoProvision", "type": "str"}, + "action_type": {"key": "actionType", "type": "str"}, + "event_hub_resource_id": {"key": "eventHubResourceId", "type": "str"}, + "sas_policy_name": {"key": "sasPolicyName", "type": "str"}, + "connection_string": {"key": "connectionString", "type": "str"}, + "is_trusted_service_enabled": {"key": "isTrustedServiceEnabled", "type": "bool"}, } - def __init__(self, *, auto_provision: Optional[Union[str, "_models.AutoProvision"]] = None, **kwargs: Any) -> None: + def __init__( + self, + *, + event_hub_resource_id: Optional[str] = None, + connection_string: Optional[str] = None, + is_trusted_service_enabled: Optional[bool] = None, + **kwargs: Any + ) -> None: """ - :keyword auto_provision: Describes what kind of security agent provisioning action to take. - Known values are: "On" and "Off". - :paramtype auto_provision: str or ~azure.mgmt.security.models.AutoProvision + :keyword event_hub_resource_id: The target Event Hub Azure Resource ID. + :paramtype event_hub_resource_id: str + :keyword connection_string: The target Event Hub connection string (it will not be included in + any response). + :paramtype connection_string: str + :keyword is_trusted_service_enabled: Indicates whether the trusted service is enabled or not. + :paramtype is_trusted_service_enabled: bool """ super().__init__(**kwargs) - self.auto_provision = auto_provision + self.action_type: str = "EventHub" + self.event_hub_resource_id = event_hub_resource_id + self.sas_policy_name: Optional[str] = None + self.connection_string = connection_string + self.is_trusted_service_enabled = is_trusted_service_enabled -class AutoProvisioningSettingList(_serialization.Model): - """List of all the auto provisioning settings response. +class AutomationActionLogicApp(AutomationAction): + """The logic app action that should be triggered. To learn more about Microsoft Defender for + Cloud's Workflow Automation capabilities, visit https://aka.ms/ASCWorkflowAutomationLearnMore. - Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to server. - :ivar value: List of all the auto provisioning settings. - :vartype value: list[~azure.mgmt.security.models.AutoProvisioningSetting] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str + :ivar action_type: The type of the action that will be triggered by the Automation. Required. + Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". + :vartype action_type: str or ~azure.mgmt.security.models.ActionType + :ivar logic_app_resource_id: The triggered Logic App Azure Resource ID. This can also reside on + other subscriptions, given that you have permissions to trigger the Logic App. + :vartype logic_app_resource_id: str + :ivar uri: The Logic App trigger URI endpoint (it will not be included in any response). + :vartype uri: str """ _validation = { - "next_link": {"readonly": True}, + "action_type": {"required": True}, } _attribute_map = { - "value": {"key": "value", "type": "[AutoProvisioningSetting]"}, - "next_link": {"key": "nextLink", "type": "str"}, + "action_type": {"key": "actionType", "type": "str"}, + "logic_app_resource_id": {"key": "logicAppResourceId", "type": "str"}, + "uri": {"key": "uri", "type": "str"}, } - def __init__(self, *, value: Optional[List["_models.AutoProvisioningSetting"]] = None, **kwargs: Any) -> None: + def __init__( + self, *, logic_app_resource_id: Optional[str] = None, uri: Optional[str] = None, **kwargs: Any + ) -> None: """ - :keyword value: List of all the auto provisioning settings. - :paramtype value: list[~azure.mgmt.security.models.AutoProvisioningSetting] + :keyword logic_app_resource_id: The triggered Logic App Azure Resource ID. This can also reside + on other subscriptions, given that you have permissions to trigger the Logic App. + :paramtype logic_app_resource_id: str + :keyword uri: The Logic App trigger URI endpoint (it will not be included in any response). + :paramtype uri: str """ super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - + self.action_type: str = "LogicApp" + self.logic_app_resource_id = logic_app_resource_id + self.uri = uri -class AwAssumeRoleAuthenticationDetailsProperties(AuthenticationDetailsProperties): # pylint: disable=name-too-long - """AWS cloud account connector based assume role, the role enables delegating access to your AWS - resources. The role is composed of role Amazon Resource Name (ARN) and external ID. For more - details, refer to :code:`Creating - a Role to Delegate Permissions to an IAM User (write only)`. - Variables are only populated by the server, and will be ignored when sending a request. +class AutomationActionWorkspace(AutomationAction): + """The Log Analytics Workspace to which event data will be exported. Security alerts data will + reside in the 'SecurityAlert' table and the assessments data will reside in the + 'SecurityRecommendation' table (under the 'Security'/'SecurityCenterFree' solutions). Note that + in order to view the data in the workspace, the Security Center Log Analytics free/standard + solution needs to be enabled on that workspace. To learn more about Microsoft Defender for + Cloud continuous export capabilities, visit https://aka.ms/ASCExportLearnMore. All required parameters must be populated in order to send to server. - :ivar authentication_provisioning_state: State of the multi-cloud connector. Known values are: - "Valid", "Invalid", "Expired", and "IncorrectPolicy". - :vartype authentication_provisioning_state: str or - ~azure.mgmt.security.models.AuthenticationProvisioningState - :ivar granted_permissions: The permissions detected in the cloud account. - :vartype granted_permissions: list[str or ~azure.mgmt.security.models.PermissionProperty] - :ivar authentication_type: Connect to your cloud account, for AWS use either account - credentials or role-based authentication. For GCP use account organization credentials. - Required. Known values are: "awsCreds", "awsAssumeRole", and "gcpCredentials". - :vartype authentication_type: str or ~azure.mgmt.security.models.AuthenticationType - :ivar account_id: The ID of the cloud account. - :vartype account_id: str - :ivar aws_assume_role_arn: Assumed role ID is an identifier that you can use to create - temporary security credentials. Required. - :vartype aws_assume_role_arn: str - :ivar aws_external_id: A unique identifier that is required when you assume a role in another - account. Required. - :vartype aws_external_id: str + :ivar action_type: The type of the action that will be triggered by the Automation. Required. + Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". + :vartype action_type: str or ~azure.mgmt.security.models.ActionType + :ivar workspace_resource_id: The fully qualified Log Analytics Workspace Azure Resource ID. + :vartype workspace_resource_id: str """ _validation = { - "authentication_provisioning_state": {"readonly": True}, - "granted_permissions": {"readonly": True}, - "authentication_type": {"required": True}, - "account_id": {"readonly": True}, - "aws_assume_role_arn": {"required": True}, - "aws_external_id": {"required": True}, + "action_type": {"required": True}, } _attribute_map = { - "authentication_provisioning_state": {"key": "authenticationProvisioningState", "type": "str"}, - "granted_permissions": {"key": "grantedPermissions", "type": "[str]"}, - "authentication_type": {"key": "authenticationType", "type": "str"}, - "account_id": {"key": "accountId", "type": "str"}, - "aws_assume_role_arn": {"key": "awsAssumeRoleArn", "type": "str"}, - "aws_external_id": {"key": "awsExternalId", "type": "str"}, + "action_type": {"key": "actionType", "type": "str"}, + "workspace_resource_id": {"key": "workspaceResourceId", "type": "str"}, } - def __init__(self, *, aws_assume_role_arn: str, aws_external_id: str, **kwargs: Any) -> None: + def __init__(self, *, workspace_resource_id: Optional[str] = None, **kwargs: Any) -> None: """ - :keyword aws_assume_role_arn: Assumed role ID is an identifier that you can use to create - temporary security credentials. Required. - :paramtype aws_assume_role_arn: str - :keyword aws_external_id: A unique identifier that is required when you assume a role in - another account. Required. - :paramtype aws_external_id: str + :keyword workspace_resource_id: The fully qualified Log Analytics Workspace Azure Resource ID. + :paramtype workspace_resource_id: str """ super().__init__(**kwargs) - self.authentication_type: str = "awsAssumeRole" - self.account_id: Optional[str] = None - self.aws_assume_role_arn = aws_assume_role_arn - self.aws_external_id = aws_external_id + self.action_type: str = "Workspace" + self.workspace_resource_id = workspace_resource_id -class AwsCredsAuthenticationDetailsProperties(AuthenticationDetailsProperties): - """AWS cloud account connector based credentials, the credentials is composed of access key ID and - secret key, for more details, refer to :code:`Creating an IAM - User in Your AWS Account (write only)`. +class AutomationList(_serialization.Model): + """List of security automations response. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to server. - :ivar authentication_provisioning_state: State of the multi-cloud connector. Known values are: - "Valid", "Invalid", "Expired", and "IncorrectPolicy". - :vartype authentication_provisioning_state: str or - ~azure.mgmt.security.models.AuthenticationProvisioningState - :ivar granted_permissions: The permissions detected in the cloud account. - :vartype granted_permissions: list[str or ~azure.mgmt.security.models.PermissionProperty] - :ivar authentication_type: Connect to your cloud account, for AWS use either account - credentials or role-based authentication. For GCP use account organization credentials. - Required. Known values are: "awsCreds", "awsAssumeRole", and "gcpCredentials". - :vartype authentication_type: str or ~azure.mgmt.security.models.AuthenticationType - :ivar account_id: The ID of the cloud account. - :vartype account_id: str - :ivar aws_access_key_id: Public key element of the AWS credential object (write only). - Required. - :vartype aws_access_key_id: str - :ivar aws_secret_access_key: Secret key element of the AWS credential object (write only). - Required. - :vartype aws_secret_access_key: str + :ivar value: The list of security automations under the given scope. Required. + :vartype value: list[~azure.mgmt.security.models.Automation] + :ivar next_link: The URI to fetch the next page. + :vartype next_link: str """ _validation = { - "authentication_provisioning_state": {"readonly": True}, - "granted_permissions": {"readonly": True}, - "authentication_type": {"required": True}, - "account_id": {"readonly": True}, - "aws_access_key_id": {"required": True}, - "aws_secret_access_key": {"required": True}, + "value": {"required": True}, + "next_link": {"readonly": True}, } _attribute_map = { - "authentication_provisioning_state": {"key": "authenticationProvisioningState", "type": "str"}, - "granted_permissions": {"key": "grantedPermissions", "type": "[str]"}, - "authentication_type": {"key": "authenticationType", "type": "str"}, - "account_id": {"key": "accountId", "type": "str"}, - "aws_access_key_id": {"key": "awsAccessKeyId", "type": "str"}, - "aws_secret_access_key": {"key": "awsSecretAccessKey", "type": "str"}, + "value": {"key": "value", "type": "[Automation]"}, + "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, aws_access_key_id: str, aws_secret_access_key: str, **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.Automation"], **kwargs: Any) -> None: """ - :keyword aws_access_key_id: Public key element of the AWS credential object (write only). - Required. - :paramtype aws_access_key_id: str - :keyword aws_secret_access_key: Secret key element of the AWS credential object (write only). - Required. - :paramtype aws_secret_access_key: str + :keyword value: The list of security automations under the given scope. Required. + :paramtype value: list[~azure.mgmt.security.models.Automation] """ super().__init__(**kwargs) - self.authentication_type: str = "awsCreds" - self.account_id: Optional[str] = None - self.aws_access_key_id = aws_access_key_id - self.aws_secret_access_key = aws_secret_access_key - - -class EnvironmentData(_serialization.Model): - """The security connector environment data. + self.value = value + self.next_link: Optional[str] = None - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AwsEnvironmentData, AzureDevOpsScopeEnvironmentData, DockerHubEnvironmentData, - GcpProjectEnvironmentData, GithubScopeEnvironmentData, GitlabScopeEnvironmentData, - JFrogEnvironmentData - All required parameters must be populated in order to send to server. +class AutomationRuleSet(_serialization.Model): + """A rule set which evaluates all its rules upon an event interception. Only when all the included + rules in the rule set will be evaluated as 'true', will the event trigger the defined actions. - :ivar environment_type: The type of the environment data. Required. Known values are: - "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", - "DockerHubOrganization", and "JFrogArtifactory". - :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType + :ivar rules: + :vartype rules: list[~azure.mgmt.security.models.AutomationTriggeringRule] """ - _validation = { - "environment_type": {"required": True}, - } - _attribute_map = { - "environment_type": {"key": "environmentType", "type": "str"}, - } - - _subtype_map = { - "environment_type": { - "AwsAccount": "AwsEnvironmentData", - "AzureDevOpsScope": "AzureDevOpsScopeEnvironmentData", - "DockerHubOrganization": "DockerHubEnvironmentData", - "GcpProject": "GcpProjectEnvironmentData", - "GithubScope": "GithubScopeEnvironmentData", - "GitlabScope": "GitlabScopeEnvironmentData", - "JFrogArtifactory": "JFrogEnvironmentData", - } + "rules": {"key": "rules", "type": "[AutomationTriggeringRule]"}, } - def __init__(self, **kwargs: Any) -> None: - """ """ + def __init__(self, *, rules: Optional[list["_models.AutomationTriggeringRule"]] = None, **kwargs: Any) -> None: + """ + :keyword rules: + :paramtype rules: list[~azure.mgmt.security.models.AutomationTriggeringRule] + """ super().__init__(**kwargs) - self.environment_type: Optional[str] = None - - -class AwsEnvironmentData(EnvironmentData): - """The AWS connector environment data. + self.rules = rules - Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to server. +class AutomationScope(_serialization.Model): + """A single automation scope. - :ivar environment_type: The type of the environment data. Required. Known values are: - "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", - "DockerHubOrganization", and "JFrogArtifactory". - :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType - :ivar organizational_data: The AWS account's organizational data. - :vartype organizational_data: ~azure.mgmt.security.models.AwsOrganizationalData - :ivar regions: list of regions to scan. - :vartype regions: list[str] - :ivar account_name: The AWS account name. - :vartype account_name: str - :ivar scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). - :vartype scan_interval: int + :ivar description: The resources scope description. + :vartype description: str + :ivar scope_path: The resources scope path. Can be the subscription on which the automation is + defined on or a resource group under that subscription (fully qualified Azure resource IDs). + :vartype scope_path: str """ - _validation = { - "environment_type": {"required": True}, - "account_name": {"readonly": True}, + _attribute_map = { + "description": {"key": "description", "type": "str"}, + "scope_path": {"key": "scopePath", "type": "str"}, } + def __init__(self, *, description: Optional[str] = None, scope_path: Optional[str] = None, **kwargs: Any) -> None: + """ + :keyword description: The resources scope description. + :paramtype description: str + :keyword scope_path: The resources scope path. Can be the subscription on which the automation + is defined on or a resource group under that subscription (fully qualified Azure resource IDs). + :paramtype scope_path: str + """ + super().__init__(**kwargs) + self.description = description + self.scope_path = scope_path + + +class AutomationSource(_serialization.Model): + """The source event types which evaluate the security automation set of rules. For example - + security alerts and security assessments. To learn more about the supported security events + data models schemas - please visit https://aka.ms/ASCAutomationSchemas. + + :ivar event_source: A valid event source type. Known values are: "Assessments", + "AssessmentsSnapshot", "SubAssessments", "SubAssessmentsSnapshot", "Alerts", "SecureScores", + "SecureScoresSnapshot", "SecureScoreControls", "SecureScoreControlsSnapshot", + "RegulatoryComplianceAssessment", "RegulatoryComplianceAssessmentSnapshot", "AttackPaths", and + "AttackPathsSnapshot". + :vartype event_source: str or ~azure.mgmt.security.models.EventSource + :ivar rule_sets: A set of rules which evaluate upon event interception. A logical disjunction + is applied between defined rule sets (logical 'or'). + :vartype rule_sets: list[~azure.mgmt.security.models.AutomationRuleSet] + """ + _attribute_map = { - "environment_type": {"key": "environmentType", "type": "str"}, - "organizational_data": {"key": "organizationalData", "type": "AwsOrganizationalData"}, - "regions": {"key": "regions", "type": "[str]"}, - "account_name": {"key": "accountName", "type": "str"}, - "scan_interval": {"key": "scanInterval", "type": "int"}, + "event_source": {"key": "eventSource", "type": "str"}, + "rule_sets": {"key": "ruleSets", "type": "[AutomationRuleSet]"}, } def __init__( self, *, - organizational_data: Optional["_models.AwsOrganizationalData"] = None, - regions: Optional[List[str]] = None, - scan_interval: Optional[int] = None, + event_source: Optional[Union[str, "_models.EventSource"]] = None, + rule_sets: Optional[list["_models.AutomationRuleSet"]] = None, **kwargs: Any ) -> None: """ - :keyword organizational_data: The AWS account's organizational data. - :paramtype organizational_data: ~azure.mgmt.security.models.AwsOrganizationalData - :keyword regions: list of regions to scan. - :paramtype regions: list[str] - :keyword scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). - :paramtype scan_interval: int + :keyword event_source: A valid event source type. Known values are: "Assessments", + "AssessmentsSnapshot", "SubAssessments", "SubAssessmentsSnapshot", "Alerts", "SecureScores", + "SecureScoresSnapshot", "SecureScoreControls", "SecureScoreControlsSnapshot", + "RegulatoryComplianceAssessment", "RegulatoryComplianceAssessmentSnapshot", "AttackPaths", and + "AttackPathsSnapshot". + :paramtype event_source: str or ~azure.mgmt.security.models.EventSource + :keyword rule_sets: A set of rules which evaluate upon event interception. A logical + disjunction is applied between defined rule sets (logical 'or'). + :paramtype rule_sets: list[~azure.mgmt.security.models.AutomationRuleSet] """ super().__init__(**kwargs) - self.environment_type: str = "AwsAccount" - self.organizational_data = organizational_data - self.regions = regions - self.account_name: Optional[str] = None - self.scan_interval = scan_interval - - -class AwsOrganizationalData(_serialization.Model): - """The AWS organization data. + self.event_source = event_source + self.rule_sets = rule_sets - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AwsOrganizationalDataMember, AwsOrganizationalDataMaster - All required parameters must be populated in order to send to server. +class AutomationTriggeringRule(_serialization.Model): + """A rule which is evaluated upon event interception. The rule is configured by comparing a + specific value from the event model to an expected value. This comparison is done by using one + of the supported operators set. - :ivar organization_membership_type: The multi cloud account's membership type in the - organization. Required. Known values are: "Member" and "Organization". - :vartype organization_membership_type: str or - ~azure.mgmt.security.models.OrganizationMembershipType + :ivar property_j_path: The JPath of the entity model property that should be checked. + :vartype property_j_path: str + :ivar property_type: The data type of the compared operands (string, integer, floating point + number or a boolean [true/false]]. Known values are: "String", "Integer", "Number", and + "Boolean". + :vartype property_type: str or ~azure.mgmt.security.models.PropertyType + :ivar expected_value: The expected value. + :vartype expected_value: str + :ivar operator: A valid comparer operator to use. A case-insensitive comparison will be applied + for String PropertyType. Known values are: "Equals", "GreaterThan", "GreaterThanOrEqualTo", + "LesserThan", "LesserThanOrEqualTo", "NotEquals", "Contains", "StartsWith", and "EndsWith". + :vartype operator: str or ~azure.mgmt.security.models.Operator """ - _validation = { - "organization_membership_type": {"required": True}, - } - _attribute_map = { - "organization_membership_type": {"key": "organizationMembershipType", "type": "str"}, - } - - _subtype_map = { - "organization_membership_type": { - "Member": "AwsOrganizationalDataMember", - "Organization": "AwsOrganizationalDataMaster", - } + "property_j_path": {"key": "propertyJPath", "type": "str"}, + "property_type": {"key": "propertyType", "type": "str"}, + "expected_value": {"key": "expectedValue", "type": "str"}, + "operator": {"key": "operator", "type": "str"}, } - def __init__(self, **kwargs: Any) -> None: - """ """ + def __init__( + self, + *, + property_j_path: Optional[str] = None, + property_type: Optional[Union[str, "_models.PropertyType"]] = None, + expected_value: Optional[str] = None, + operator: Optional[Union[str, "_models.Operator"]] = None, + **kwargs: Any + ) -> None: + """ + :keyword property_j_path: The JPath of the entity model property that should be checked. + :paramtype property_j_path: str + :keyword property_type: The data type of the compared operands (string, integer, floating point + number or a boolean [true/false]]. Known values are: "String", "Integer", "Number", and + "Boolean". + :paramtype property_type: str or ~azure.mgmt.security.models.PropertyType + :keyword expected_value: The expected value. + :paramtype expected_value: str + :keyword operator: A valid comparer operator to use. A case-insensitive comparison will be + applied for String PropertyType. Known values are: "Equals", "GreaterThan", + "GreaterThanOrEqualTo", "LesserThan", "LesserThanOrEqualTo", "NotEquals", "Contains", + "StartsWith", and "EndsWith". + :paramtype operator: str or ~azure.mgmt.security.models.Operator + """ super().__init__(**kwargs) - self.organization_membership_type: Optional[str] = None - + self.property_j_path = property_j_path + self.property_type = property_type + self.expected_value = expected_value + self.operator = operator -class AwsOrganizationalDataMaster(AwsOrganizationalData): - """The AWS organization data for the master account. - All required parameters must be populated in order to send to server. +class AutomationUpdateModel(Tags): + """The update model of security automation resource. - :ivar organization_membership_type: The multi cloud account's membership type in the - organization. Required. Known values are: "Member" and "Organization". - :vartype organization_membership_type: str or - ~azure.mgmt.security.models.OrganizationMembershipType - :ivar stackset_name: If the multi cloud account is of membership type organization, this will - be the name of the onboarding stackset. - :vartype stackset_name: str - :ivar excluded_account_ids: If the multi cloud account is of membership type organization, list - of accounts excluded from offering. - :vartype excluded_account_ids: list[str] + :ivar tags: A list of key value pairs that describe the resource. + :vartype tags: dict[str, str] + :ivar description: The security automation description. + :vartype description: str + :ivar is_enabled: Indicates whether the security automation is enabled. + :vartype is_enabled: bool + :ivar scopes: A collection of scopes on which the security automations logic is applied. + Supported scopes are the subscription itself or a resource group under that subscription. The + automation will only apply on defined scopes. + :vartype scopes: list[~azure.mgmt.security.models.AutomationScope] + :ivar sources: A collection of the source event types which evaluate the security automation + set of rules. + :vartype sources: list[~azure.mgmt.security.models.AutomationSource] + :ivar actions: A collection of the actions which are triggered if all the configured rules + evaluations, within at least one rule set, are true. + :vartype actions: list[~azure.mgmt.security.models.AutomationAction] """ - _validation = { - "organization_membership_type": {"required": True}, - } - _attribute_map = { - "organization_membership_type": {"key": "organizationMembershipType", "type": "str"}, - "stackset_name": {"key": "stacksetName", "type": "str"}, - "excluded_account_ids": {"key": "excludedAccountIds", "type": "[str]"}, + "tags": {"key": "tags", "type": "{str}"}, + "description": {"key": "properties.description", "type": "str"}, + "is_enabled": {"key": "properties.isEnabled", "type": "bool"}, + "scopes": {"key": "properties.scopes", "type": "[AutomationScope]"}, + "sources": {"key": "properties.sources", "type": "[AutomationSource]"}, + "actions": {"key": "properties.actions", "type": "[AutomationAction]"}, } def __init__( - self, *, stackset_name: Optional[str] = None, excluded_account_ids: Optional[List[str]] = None, **kwargs: Any + self, + *, + tags: Optional[dict[str, str]] = None, + description: Optional[str] = None, + is_enabled: Optional[bool] = None, + scopes: Optional[list["_models.AutomationScope"]] = None, + sources: Optional[list["_models.AutomationSource"]] = None, + actions: Optional[list["_models.AutomationAction"]] = None, + **kwargs: Any ) -> None: """ - :keyword stackset_name: If the multi cloud account is of membership type organization, this - will be the name of the onboarding stackset. - :paramtype stackset_name: str - :keyword excluded_account_ids: If the multi cloud account is of membership type organization, - list of accounts excluded from offering. - :paramtype excluded_account_ids: list[str] + :keyword tags: A list of key value pairs that describe the resource. + :paramtype tags: dict[str, str] + :keyword description: The security automation description. + :paramtype description: str + :keyword is_enabled: Indicates whether the security automation is enabled. + :paramtype is_enabled: bool + :keyword scopes: A collection of scopes on which the security automations logic is applied. + Supported scopes are the subscription itself or a resource group under that subscription. The + automation will only apply on defined scopes. + :paramtype scopes: list[~azure.mgmt.security.models.AutomationScope] + :keyword sources: A collection of the source event types which evaluate the security automation + set of rules. + :paramtype sources: list[~azure.mgmt.security.models.AutomationSource] + :keyword actions: A collection of the actions which are triggered if all the configured rules + evaluations, within at least one rule set, are true. + :paramtype actions: list[~azure.mgmt.security.models.AutomationAction] """ - super().__init__(**kwargs) - self.organization_membership_type: str = "Organization" - self.stackset_name = stackset_name - self.excluded_account_ids = excluded_account_ids - + super().__init__(tags=tags, **kwargs) + self.description = description + self.is_enabled = is_enabled + self.scopes = scopes + self.sources = sources + self.actions = actions -class AwsOrganizationalDataMember(AwsOrganizationalData): - """The AWS organization data for the member account. - All required parameters must be populated in order to send to server. +class AutomationValidationStatus(_serialization.Model): + """The security automation model state property bag. - :ivar organization_membership_type: The multi cloud account's membership type in the - organization. Required. Known values are: "Member" and "Organization". - :vartype organization_membership_type: str or - ~azure.mgmt.security.models.OrganizationMembershipType - :ivar parent_hierarchy_id: If the multi cloud account is not of membership type organization, - this will be the ID of the account's parent. - :vartype parent_hierarchy_id: str + :ivar is_valid: Indicates whether the model is valid or not. + :vartype is_valid: bool + :ivar message: The validation message. + :vartype message: str """ - _validation = { - "organization_membership_type": {"required": True}, - } - _attribute_map = { - "organization_membership_type": {"key": "organizationMembershipType", "type": "str"}, - "parent_hierarchy_id": {"key": "parentHierarchyId", "type": "str"}, + "is_valid": {"key": "isValid", "type": "bool"}, + "message": {"key": "message", "type": "str"}, } - def __init__(self, *, parent_hierarchy_id: Optional[str] = None, **kwargs: Any) -> None: + def __init__(self, *, is_valid: Optional[bool] = None, message: Optional[str] = None, **kwargs: Any) -> None: """ - :keyword parent_hierarchy_id: If the multi cloud account is not of membership type - organization, this will be the ID of the account's parent. - :paramtype parent_hierarchy_id: str + :keyword is_valid: Indicates whether the model is valid or not. + :paramtype is_valid: bool + :keyword message: The validation message. + :paramtype message: str """ super().__init__(**kwargs) - self.organization_membership_type: str = "Member" - self.parent_hierarchy_id = parent_hierarchy_id + self.is_valid = is_valid + self.message = message -class ResourceAutoGenerated3(_serialization.Model): - """Common fields that are returned in the response for all Azure Resource Manager resources. +class AutoProvisioningSetting(Resource): + """Auto provisioning setting. Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :ivar id: Resource Id. :vartype id: str - :ivar name: The name of the resource. + :ivar name: Resource name. :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". + :ivar type: Resource type. :vartype type: str + :ivar auto_provision: Describes what kind of security agent provisioning action to take. Known + values are: "On" and "Off". + :vartype auto_provision: str or ~azure.mgmt.security.models.AutoProvision """ _validation = { @@ -3881,326 +3638,418 @@ class ResourceAutoGenerated3(_serialization.Model): "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, + "auto_provision": {"key": "properties.autoProvision", "type": "str"}, } - def __init__(self, **kwargs: Any) -> None: - """ """ + def __init__(self, *, auto_provision: Optional[Union[str, "_models.AutoProvision"]] = None, **kwargs: Any) -> None: + """ + :keyword auto_provision: Describes what kind of security agent provisioning action to take. + Known values are: "On" and "Off". + :paramtype auto_provision: str or ~azure.mgmt.security.models.AutoProvision + """ super().__init__(**kwargs) - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None + self.auto_provision = auto_provision -class ProxyResource(ResourceAutoGenerated3): - """The resource model definition for a Azure Resource Manager proxy resource. It will not have - tags and a location. +class AutoProvisioningSettingList(_serialization.Model): + """List of all the auto provisioning settings response. Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - """ - - -class AzureDevOpsOrg(ProxyResource): - """Azure DevOps Organization resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Metadata pertaining to creation and last modification of the resource. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar properties: Azure DevOps Organization properties. - :vartype properties: ~azure.mgmt.security.models.AzureDevOpsOrgProperties + :ivar value: List of all the auto provisioning settings. + :vartype value: list[~azure.mgmt.security.models.AutoProvisioningSetting] + :ivar next_link: The URI to fetch the next page. + :vartype next_link: str """ _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, + "next_link": {"readonly": True}, } _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "properties": {"key": "properties", "type": "AzureDevOpsOrgProperties"}, + "value": {"key": "value", "type": "[AutoProvisioningSetting]"}, + "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, properties: Optional["_models.AzureDevOpsOrgProperties"] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.AutoProvisioningSetting"]] = None, **kwargs: Any) -> None: """ - :keyword properties: Azure DevOps Organization properties. - :paramtype properties: ~azure.mgmt.security.models.AzureDevOpsOrgProperties + :keyword value: List of all the auto provisioning settings. + :paramtype value: list[~azure.mgmt.security.models.AutoProvisioningSetting] """ super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.properties = properties - - -class AzureDevOpsOrganizationConfiguration(_serialization.Model): - """AzureDevOps Org Inventory Configuration. - - :ivar auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and - "NotApplicable". - :vartype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :ivar project_configs: AzureDevOps Project Inventory Configuration. - Dictionary of AzureDevOps project name to desired project configuration. - If AutoDiscovery is Enabled, this field should be empty or null. - :vartype project_configs: dict[str, - ~azure.mgmt.security.models.AzureDevOpsProjectConfiguration] - """ + self.value = value + self.next_link: Optional[str] = None - _attribute_map = { - "auto_discovery": {"key": "autoDiscovery", "type": "str"}, - "project_configs": {"key": "projectConfigs", "type": "{AzureDevOpsProjectConfiguration}"}, - } - def __init__( - self, - *, - auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, - project_configs: Optional[Dict[str, "_models.AzureDevOpsProjectConfiguration"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and - "NotApplicable". - :paramtype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :keyword project_configs: AzureDevOps Project Inventory Configuration. - Dictionary of AzureDevOps project name to desired project configuration. - If AutoDiscovery is Enabled, this field should be empty or null. - :paramtype project_configs: dict[str, - ~azure.mgmt.security.models.AzureDevOpsProjectConfiguration] - """ - super().__init__(**kwargs) - self.auto_discovery = auto_discovery - self.project_configs = project_configs +class EnvironmentData(_serialization.Model): + """The security connector environment data. + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AwsEnvironmentData, AzureDevOpsScopeEnvironmentData, DockerHubEnvironmentData, + GcpProjectEnvironmentData, GithubScopeEnvironmentData, GitlabScopeEnvironmentData, + JFrogEnvironmentData -class AzureDevOpsOrgListResponse(_serialization.Model): - """List of RP resources which supports pagination. + All required parameters must be populated in order to send to server. - :ivar value: Gets or sets list of resources. - :vartype value: list[~azure.mgmt.security.models.AzureDevOpsOrg] - :ivar next_link: Gets or sets next link to scroll over the results. - :vartype next_link: str + :ivar environment_type: The type of the environment data. Required. Known values are: + "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", + "DockerHubOrganization", and "JFrogArtifactory". + :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType """ + _validation = { + "environment_type": {"required": True}, + } + _attribute_map = { - "value": {"key": "value", "type": "[AzureDevOpsOrg]"}, - "next_link": {"key": "nextLink", "type": "str"}, + "environment_type": {"key": "environmentType", "type": "str"}, } - def __init__( - self, *, value: Optional[List["_models.AzureDevOpsOrg"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Gets or sets list of resources. - :paramtype value: list[~azure.mgmt.security.models.AzureDevOpsOrg] - :keyword next_link: Gets or sets next link to scroll over the results. - :paramtype next_link: str - """ + _subtype_map = { + "environment_type": { + "AwsAccount": "AwsEnvironmentData", + "AzureDevOpsScope": "AzureDevOpsScopeEnvironmentData", + "DockerHubOrganization": "DockerHubEnvironmentData", + "GcpProject": "GcpProjectEnvironmentData", + "GithubScope": "GithubScopeEnvironmentData", + "GitlabScope": "GitlabScopeEnvironmentData", + "JFrogArtifactory": "JFrogEnvironmentData", + } + } + + def __init__(self, **kwargs: Any) -> None: + """ """ super().__init__(**kwargs) - self.value = value - self.next_link = next_link + self.environment_type: Optional[str] = None -class AzureDevOpsOrgProperties(_serialization.Model): - """Azure DevOps Organization properties. +class AwsEnvironmentData(EnvironmentData): + """The AWS connector environment data. Variables are only populated by the server, and will be ignored when sending a request. - :ivar provisioning_status_message: Gets the resource status message. - :vartype provisioning_status_message: str - :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. - :vartype provisioning_status_update_time_utc: ~datetime.datetime - :ivar provisioning_state: The provisioning state of the resource. - - Pending - Provisioning pending. - Failed - Provisioning failed. - Succeeded - Successful provisioning. - Canceled - Provisioning canceled. - PendingDeletion - Deletion pending. - DeletionSuccess - Deletion successful. - DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", - "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". - :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState - :ivar onboarding_state: Details about resource onboarding status across all connectors. + All required parameters must be populated in order to send to server. - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - :ivar actionable_remediation: Configuration payload for PR Annotations. - :vartype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation + :ivar environment_type: The type of the environment data. Required. Known values are: + "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", + "DockerHubOrganization", and "JFrogArtifactory". + :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType + :ivar organizational_data: The AWS account's organizational data. + :vartype organizational_data: ~azure.mgmt.security.models.AwsOrganizationalData + :ivar regions: list of regions to scan. + :vartype regions: list[str] + :ivar account_name: The AWS account name. + :vartype account_name: str + :ivar scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). + :vartype scan_interval: int """ _validation = { - "provisioning_status_message": {"readonly": True}, - "provisioning_status_update_time_utc": {"readonly": True}, - "provisioning_state": {"readonly": True}, + "environment_type": {"required": True}, + "account_name": {"readonly": True}, } _attribute_map = { - "provisioning_status_message": {"key": "provisioningStatusMessage", "type": "str"}, - "provisioning_status_update_time_utc": {"key": "provisioningStatusUpdateTimeUtc", "type": "iso-8601"}, - "provisioning_state": {"key": "provisioningState", "type": "str"}, - "onboarding_state": {"key": "onboardingState", "type": "str"}, - "actionable_remediation": {"key": "actionableRemediation", "type": "ActionableRemediation"}, + "environment_type": {"key": "environmentType", "type": "str"}, + "organizational_data": {"key": "organizationalData", "type": "AwsOrganizationalData"}, + "regions": {"key": "regions", "type": "[str]"}, + "account_name": {"key": "accountName", "type": "str"}, + "scan_interval": {"key": "scanInterval", "type": "int"}, } def __init__( self, *, - onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, - actionable_remediation: Optional["_models.ActionableRemediation"] = None, + organizational_data: Optional["_models.AwsOrganizationalData"] = None, + regions: Optional[list[str]] = None, + scan_interval: Optional[int] = None, **kwargs: Any ) -> None: """ - :keyword onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :paramtype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - :keyword actionable_remediation: Configuration payload for PR Annotations. - :paramtype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation + :keyword organizational_data: The AWS account's organizational data. + :paramtype organizational_data: ~azure.mgmt.security.models.AwsOrganizationalData + :keyword regions: list of regions to scan. + :paramtype regions: list[str] + :keyword scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). + :paramtype scan_interval: int """ super().__init__(**kwargs) - self.provisioning_status_message: Optional[str] = None - self.provisioning_status_update_time_utc: Optional[datetime.datetime] = None - self.provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = None - self.onboarding_state = onboarding_state - self.actionable_remediation = actionable_remediation + self.environment_type: str = "AwsAccount" + self.organizational_data = organizational_data + self.regions = regions + self.account_name: Optional[str] = None + self.scan_interval = scan_interval -class AzureDevOpsProject(ProxyResource): - """Azure DevOps Project resource. +class AwsOrganizationalData(_serialization.Model): + """The AWS organization data. - Variables are only populated by the server, and will be ignored when sending a request. + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AwsOrganizationalDataMember, AwsOrganizationalDataMaster - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Metadata pertaining to creation and last modification of the resource. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar properties: Azure DevOps Project properties. - :vartype properties: ~azure.mgmt.security.models.AzureDevOpsProjectProperties + All required parameters must be populated in order to send to server. + + :ivar organization_membership_type: The multi cloud account's membership type in the + organization. Required. Known values are: "Member" and "Organization". + :vartype organization_membership_type: str or + ~azure.mgmt.security.models.OrganizationMembershipType """ _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, + "organization_membership_type": {"required": True}, } _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "properties": {"key": "properties", "type": "AzureDevOpsProjectProperties"}, + "organization_membership_type": {"key": "organizationMembershipType", "type": "str"}, } - def __init__(self, *, properties: Optional["_models.AzureDevOpsProjectProperties"] = None, **kwargs: Any) -> None: - """ - :keyword properties: Azure DevOps Project properties. - :paramtype properties: ~azure.mgmt.security.models.AzureDevOpsProjectProperties - """ - super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.properties = properties - - -class AzureDevOpsProjectConfiguration(_serialization.Model): - """AzureDevOps Project Inventory Configuration. + _subtype_map = { + "organization_membership_type": { + "Member": "AwsOrganizationalDataMember", + "Organization": "AwsOrganizationalDataMaster", + } + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.organization_membership_type: Optional[str] = None + + +class AwsOrganizationalDataMaster(AwsOrganizationalData): + """The AWS organization data for the master account. + + All required parameters must be populated in order to send to server. + + :ivar organization_membership_type: The multi cloud account's membership type in the + organization. Required. Known values are: "Member" and "Organization". + :vartype organization_membership_type: str or + ~azure.mgmt.security.models.OrganizationMembershipType + :ivar stackset_name: If the multi cloud account is of membership type organization, this will + be the name of the onboarding stackset. + :vartype stackset_name: str + :ivar excluded_account_ids: If the multi cloud account is of membership type organization, list + of accounts excluded from offering. + :vartype excluded_account_ids: list[str] + """ + + _validation = { + "organization_membership_type": {"required": True}, + } + + _attribute_map = { + "organization_membership_type": {"key": "organizationMembershipType", "type": "str"}, + "stackset_name": {"key": "stacksetName", "type": "str"}, + "excluded_account_ids": {"key": "excludedAccountIds", "type": "[str]"}, + } + + def __init__( + self, *, stackset_name: Optional[str] = None, excluded_account_ids: Optional[list[str]] = None, **kwargs: Any + ) -> None: + """ + :keyword stackset_name: If the multi cloud account is of membership type organization, this + will be the name of the onboarding stackset. + :paramtype stackset_name: str + :keyword excluded_account_ids: If the multi cloud account is of membership type organization, + list of accounts excluded from offering. + :paramtype excluded_account_ids: list[str] + """ + super().__init__(**kwargs) + self.organization_membership_type: str = "Organization" + self.stackset_name = stackset_name + self.excluded_account_ids = excluded_account_ids + + +class AwsOrganizationalDataMember(AwsOrganizationalData): + """The AWS organization data for the member account. + + All required parameters must be populated in order to send to server. + + :ivar organization_membership_type: The multi cloud account's membership type in the + organization. Required. Known values are: "Member" and "Organization". + :vartype organization_membership_type: str or + ~azure.mgmt.security.models.OrganizationMembershipType + :ivar parent_hierarchy_id: If the multi cloud account is not of membership type organization, + this will be the ID of the account's parent. + :vartype parent_hierarchy_id: str + """ + + _validation = { + "organization_membership_type": {"required": True}, + } + + _attribute_map = { + "organization_membership_type": {"key": "organizationMembershipType", "type": "str"}, + "parent_hierarchy_id": {"key": "parentHierarchyId", "type": "str"}, + } + + def __init__(self, *, parent_hierarchy_id: Optional[str] = None, **kwargs: Any) -> None: + """ + :keyword parent_hierarchy_id: If the multi cloud account is not of membership type + organization, this will be the ID of the account's parent. + :paramtype parent_hierarchy_id: str + """ + super().__init__(**kwargs) + self.organization_membership_type: str = "Member" + self.parent_hierarchy_id = parent_hierarchy_id + + +class ResourceAutoGenerated(_serialization.Model): + """Common fields that are returned in the response for all Azure Resource Manager resources. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + """ + + _validation = { + "id": {"readonly": True}, + "name": {"readonly": True}, + "type": {"readonly": True}, + } + + _attribute_map = { + "id": {"key": "id", "type": "str"}, + "name": {"key": "name", "type": "str"}, + "type": {"key": "type", "type": "str"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.id: Optional[str] = None + self.name: Optional[str] = None + self.type: Optional[str] = None + + +class ProxyResource(ResourceAutoGenerated): + """The resource model definition for a Azure Resource Manager proxy resource. It will not have + tags and a location. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + """ + + +class AzureDevOpsOrg(ProxyResource): + """Azure DevOps Organization resource. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Azure DevOps Organization properties. + :vartype properties: ~azure.mgmt.security.models.AzureDevOpsOrgProperties + """ + + _validation = { + "id": {"readonly": True}, + "name": {"readonly": True}, + "type": {"readonly": True}, + "system_data": {"readonly": True}, + } + + _attribute_map = { + "id": {"key": "id", "type": "str"}, + "name": {"key": "name", "type": "str"}, + "type": {"key": "type", "type": "str"}, + "system_data": {"key": "systemData", "type": "SystemData"}, + "properties": {"key": "properties", "type": "AzureDevOpsOrgProperties"}, + } + + def __init__(self, *, properties: Optional["_models.AzureDevOpsOrgProperties"] = None, **kwargs: Any) -> None: + """ + :keyword properties: Azure DevOps Organization properties. + :paramtype properties: ~azure.mgmt.security.models.AzureDevOpsOrgProperties + """ + super().__init__(**kwargs) + self.system_data: Optional["_models.SystemData"] = None + self.properties = properties + + +class AzureDevOpsOrganizationConfiguration(_serialization.Model): + """AzureDevOps Org Inventory Configuration. :ivar auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and "NotApplicable". :vartype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :ivar repository_configs: AzureDevOps Repository Inventory Configuration. - Dictionary of AzureDevOps repository name to desired repository configuration. - If AutoDiscovery is Enabled, this field should be null or empty. - :vartype repository_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] + :ivar project_configs: AzureDevOps Project Inventory Configuration. Dictionary of AzureDevOps + project name to desired project configuration. If AutoDiscovery is Enabled, this field should + be empty or null. + :vartype project_configs: dict[str, + ~azure.mgmt.security.models.AzureDevOpsProjectConfiguration] """ _attribute_map = { "auto_discovery": {"key": "autoDiscovery", "type": "str"}, - "repository_configs": {"key": "repositoryConfigs", "type": "{BaseResourceConfiguration}"}, + "project_configs": {"key": "projectConfigs", "type": "{AzureDevOpsProjectConfiguration}"}, } def __init__( self, *, auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, - repository_configs: Optional[Dict[str, "_models.BaseResourceConfiguration"]] = None, + project_configs: Optional[dict[str, "_models.AzureDevOpsProjectConfiguration"]] = None, **kwargs: Any ) -> None: """ :keyword auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and "NotApplicable". :paramtype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :keyword repository_configs: AzureDevOps Repository Inventory Configuration. - Dictionary of AzureDevOps repository name to desired repository configuration. - If AutoDiscovery is Enabled, this field should be null or empty. - :paramtype repository_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] + :keyword project_configs: AzureDevOps Project Inventory Configuration. Dictionary of + AzureDevOps project name to desired project configuration. If AutoDiscovery is Enabled, this + field should be empty or null. + :paramtype project_configs: dict[str, + ~azure.mgmt.security.models.AzureDevOpsProjectConfiguration] """ super().__init__(**kwargs) self.auto_discovery = auto_discovery - self.repository_configs = repository_configs + self.project_configs = project_configs -class AzureDevOpsProjectListResponse(_serialization.Model): +class AzureDevOpsOrgListResponse(_serialization.Model): """List of RP resources which supports pagination. :ivar value: Gets or sets list of resources. - :vartype value: list[~azure.mgmt.security.models.AzureDevOpsProject] + :vartype value: list[~azure.mgmt.security.models.AzureDevOpsOrg] :ivar next_link: Gets or sets next link to scroll over the results. :vartype next_link: str """ _attribute_map = { - "value": {"key": "value", "type": "[AzureDevOpsProject]"}, + "value": {"key": "value", "type": "[AzureDevOpsOrg]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( - self, - *, - value: Optional[List["_models.AzureDevOpsProject"]] = None, - next_link: Optional[str] = None, - **kwargs: Any + self, *, value: Optional[list["_models.AzureDevOpsOrg"]] = None, next_link: Optional[str] = None, **kwargs: Any ) -> None: """ :keyword value: Gets or sets list of resources. - :paramtype value: list[~azure.mgmt.security.models.AzureDevOpsProject] + :paramtype value: list[~azure.mgmt.security.models.AzureDevOpsOrg] :keyword next_link: Gets or sets next link to scroll over the results. :paramtype next_link: str """ @@ -4209,8 +4058,8 @@ def __init__( self.next_link = next_link -class AzureDevOpsProjectProperties(_serialization.Model): - """Azure DevOps Project properties. +class AzureDevOpsOrgProperties(_serialization.Model): + """Azure DevOps Organization properties. Variables are only populated by the server, and will be ignored when sending a request. @@ -4229,10 +4078,6 @@ class AzureDevOpsProjectProperties(_serialization.Model): DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState - :ivar parent_org_name: Gets or sets parent Azure DevOps Organization name. - :vartype parent_org_name: str - :ivar project_id: Gets or sets Azure DevOps Project id. - :vartype project_id: str :ivar onboarding_state: Details about resource onboarding status across all connectors. OnboardedByOtherConnector - this resource has already been onboarded to another connector. This @@ -4250,15 +4095,12 @@ class AzureDevOpsProjectProperties(_serialization.Model): "provisioning_status_message": {"readonly": True}, "provisioning_status_update_time_utc": {"readonly": True}, "provisioning_state": {"readonly": True}, - "project_id": {"readonly": True}, } _attribute_map = { "provisioning_status_message": {"key": "provisioningStatusMessage", "type": "str"}, "provisioning_status_update_time_utc": {"key": "provisioningStatusUpdateTimeUtc", "type": "iso-8601"}, "provisioning_state": {"key": "provisioningState", "type": "str"}, - "parent_org_name": {"key": "parentOrgName", "type": "str"}, - "project_id": {"key": "projectId", "type": "str"}, "onboarding_state": {"key": "onboardingState", "type": "str"}, "actionable_remediation": {"key": "actionableRemediation", "type": "ActionableRemediation"}, } @@ -4266,14 +4108,11 @@ class AzureDevOpsProjectProperties(_serialization.Model): def __init__( self, *, - parent_org_name: Optional[str] = None, onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, actionable_remediation: Optional["_models.ActionableRemediation"] = None, **kwargs: Any ) -> None: """ - :keyword parent_org_name: Gets or sets parent Azure DevOps Organization name. - :paramtype parent_org_name: str :keyword onboarding_state: Details about resource onboarding status across all connectors. OnboardedByOtherConnector - this resource has already been onboarded to another connector. This @@ -4290,14 +4129,12 @@ def __init__( self.provisioning_status_message: Optional[str] = None self.provisioning_status_update_time_utc: Optional[datetime.datetime] = None self.provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = None - self.parent_org_name = parent_org_name - self.project_id: Optional[str] = None self.onboarding_state = onboarding_state self.actionable_remediation = actionable_remediation -class AzureDevOpsRepository(ProxyResource): - """Azure DevOps Repository resource. +class AzureDevOpsProject(ProxyResource): + """Azure DevOps Project resource. Variables are only populated by the server, and will be ignored when sending a request. @@ -4311,8 +4148,8 @@ class AzureDevOpsRepository(ProxyResource): :vartype type: str :ivar system_data: Metadata pertaining to creation and last modification of the resource. :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar properties: Azure DevOps Repository properties. - :vartype properties: ~azure.mgmt.security.models.AzureDevOpsRepositoryProperties + :ivar properties: Azure DevOps Project properties. + :vartype properties: ~azure.mgmt.security.models.AzureDevOpsProjectProperties """ _validation = { @@ -4327,31 +4164,232 @@ class AzureDevOpsRepository(ProxyResource): "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "system_data": {"key": "systemData", "type": "SystemData"}, - "properties": {"key": "properties", "type": "AzureDevOpsRepositoryProperties"}, + "properties": {"key": "properties", "type": "AzureDevOpsProjectProperties"}, } - def __init__( - self, *, properties: Optional["_models.AzureDevOpsRepositoryProperties"] = None, **kwargs: Any - ) -> None: + def __init__(self, *, properties: Optional["_models.AzureDevOpsProjectProperties"] = None, **kwargs: Any) -> None: """ - :keyword properties: Azure DevOps Repository properties. - :paramtype properties: ~azure.mgmt.security.models.AzureDevOpsRepositoryProperties + :keyword properties: Azure DevOps Project properties. + :paramtype properties: ~azure.mgmt.security.models.AzureDevOpsProjectProperties """ super().__init__(**kwargs) self.system_data: Optional["_models.SystemData"] = None self.properties = properties -class AzureDevOpsRepositoryListResponse(_serialization.Model): - """List of RP resources which supports pagination. - - :ivar value: Gets or sets list of resources. - :vartype value: list[~azure.mgmt.security.models.AzureDevOpsRepository] - :ivar next_link: Gets or sets next link to scroll over the results. - :vartype next_link: str - """ +class AzureDevOpsProjectConfiguration(_serialization.Model): + """AzureDevOps Project Inventory Configuration. - _attribute_map = { + :ivar auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and + "NotApplicable". + :vartype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery + :ivar repository_configs: AzureDevOps Repository Inventory Configuration. Dictionary of + AzureDevOps repository name to desired repository configuration. If AutoDiscovery is Enabled, + this field should be null or empty. + :vartype repository_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] + """ + + _attribute_map = { + "auto_discovery": {"key": "autoDiscovery", "type": "str"}, + "repository_configs": {"key": "repositoryConfigs", "type": "{BaseResourceConfiguration}"}, + } + + def __init__( + self, + *, + auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, + repository_configs: Optional[dict[str, "_models.BaseResourceConfiguration"]] = None, + **kwargs: Any + ) -> None: + """ + :keyword auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and + "NotApplicable". + :paramtype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery + :keyword repository_configs: AzureDevOps Repository Inventory Configuration. Dictionary of + AzureDevOps repository name to desired repository configuration. If AutoDiscovery is Enabled, + this field should be null or empty. + :paramtype repository_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] + """ + super().__init__(**kwargs) + self.auto_discovery = auto_discovery + self.repository_configs = repository_configs + + +class AzureDevOpsProjectListResponse(_serialization.Model): + """List of RP resources which supports pagination. + + :ivar value: Gets or sets list of resources. + :vartype value: list[~azure.mgmt.security.models.AzureDevOpsProject] + :ivar next_link: Gets or sets next link to scroll over the results. + :vartype next_link: str + """ + + _attribute_map = { + "value": {"key": "value", "type": "[AzureDevOpsProject]"}, + "next_link": {"key": "nextLink", "type": "str"}, + } + + def __init__( + self, + *, + value: Optional[list["_models.AzureDevOpsProject"]] = None, + next_link: Optional[str] = None, + **kwargs: Any + ) -> None: + """ + :keyword value: Gets or sets list of resources. + :paramtype value: list[~azure.mgmt.security.models.AzureDevOpsProject] + :keyword next_link: Gets or sets next link to scroll over the results. + :paramtype next_link: str + """ + super().__init__(**kwargs) + self.value = value + self.next_link = next_link + + +class AzureDevOpsProjectProperties(_serialization.Model): + """Azure DevOps Project properties. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar provisioning_status_message: Gets the resource status message. + :vartype provisioning_status_message: str + :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. + :vartype provisioning_status_update_time_utc: ~datetime.datetime + :ivar provisioning_state: The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", + "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". + :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState + :ivar parent_org_name: Gets or sets parent Azure DevOps Organization name. + :vartype parent_org_name: str + :ivar project_id: Gets or sets Azure DevOps Project id. + :vartype project_id: str + :ivar onboarding_state: Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". + :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState + :ivar actionable_remediation: Configuration payload for PR Annotations. + :vartype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation + """ + + _validation = { + "provisioning_status_message": {"readonly": True}, + "provisioning_status_update_time_utc": {"readonly": True}, + "provisioning_state": {"readonly": True}, + "project_id": {"readonly": True}, + } + + _attribute_map = { + "provisioning_status_message": {"key": "provisioningStatusMessage", "type": "str"}, + "provisioning_status_update_time_utc": {"key": "provisioningStatusUpdateTimeUtc", "type": "iso-8601"}, + "provisioning_state": {"key": "provisioningState", "type": "str"}, + "parent_org_name": {"key": "parentOrgName", "type": "str"}, + "project_id": {"key": "projectId", "type": "str"}, + "onboarding_state": {"key": "onboardingState", "type": "str"}, + "actionable_remediation": {"key": "actionableRemediation", "type": "ActionableRemediation"}, + } + + def __init__( + self, + *, + parent_org_name: Optional[str] = None, + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, + actionable_remediation: Optional["_models.ActionableRemediation"] = None, + **kwargs: Any + ) -> None: + """ + :keyword parent_org_name: Gets or sets parent Azure DevOps Organization name. + :paramtype parent_org_name: str + :keyword onboarding_state: Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". + :paramtype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState + :keyword actionable_remediation: Configuration payload for PR Annotations. + :paramtype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation + """ + super().__init__(**kwargs) + self.provisioning_status_message: Optional[str] = None + self.provisioning_status_update_time_utc: Optional[datetime.datetime] = None + self.provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = None + self.parent_org_name = parent_org_name + self.project_id: Optional[str] = None + self.onboarding_state = onboarding_state + self.actionable_remediation = actionable_remediation + + +class AzureDevOpsRepository(ProxyResource): + """Azure DevOps Repository resource. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Metadata pertaining to creation and last modification of the resource. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Azure DevOps Repository properties. + :vartype properties: ~azure.mgmt.security.models.AzureDevOpsRepositoryProperties + """ + + _validation = { + "id": {"readonly": True}, + "name": {"readonly": True}, + "type": {"readonly": True}, + "system_data": {"readonly": True}, + } + + _attribute_map = { + "id": {"key": "id", "type": "str"}, + "name": {"key": "name", "type": "str"}, + "type": {"key": "type", "type": "str"}, + "system_data": {"key": "systemData", "type": "SystemData"}, + "properties": {"key": "properties", "type": "AzureDevOpsRepositoryProperties"}, + } + + def __init__( + self, *, properties: Optional["_models.AzureDevOpsRepositoryProperties"] = None, **kwargs: Any + ) -> None: + """ + :keyword properties: Azure DevOps Repository properties. + :paramtype properties: ~azure.mgmt.security.models.AzureDevOpsRepositoryProperties + """ + super().__init__(**kwargs) + self.system_data: Optional["_models.SystemData"] = None + self.properties = properties + + +class AzureDevOpsRepositoryListResponse(_serialization.Model): + """List of RP resources which supports pagination. + + :ivar value: Gets or sets list of resources. + :vartype value: list[~azure.mgmt.security.models.AzureDevOpsRepository] + :ivar next_link: Gets or sets next link to scroll over the results. + :vartype next_link: str + """ + + _attribute_map = { "value": {"key": "value", "type": "[AzureDevOpsRepository]"}, "next_link": {"key": "nextLink", "type": "str"}, } @@ -4359,7 +4397,7 @@ class AzureDevOpsRepositoryListResponse(_serialization.Model): def __init__( self, *, - value: Optional[List["_models.AzureDevOpsRepository"]] = None, + value: Optional[list["_models.AzureDevOpsRepository"]] = None, next_link: Optional[str] = None, **kwargs: Any ) -> None: @@ -4648,7 +4686,7 @@ def __init__(self, **kwargs: Any) -> None: self.id: Optional[str] = None -class ResourceAutoGenerated(_serialization.Model): +class ResourceAutoGenerated2(_serialization.Model): """Common fields that are returned in the response for all Azure Resource Manager resources. Variables are only populated by the server, and will be ignored when sending a request. @@ -4689,7 +4727,7 @@ def __init__(self, **kwargs: Any) -> None: self.system_data: Optional["_models.SystemData"] = None -class ServerVulnerabilityAssessmentsSetting(ResourceAutoGenerated): +class ServerVulnerabilityAssessmentsSetting(ResourceAutoGenerated2): """A base vulnerability assessments setting on servers in the defined scope. You probably want to use the sub-classes and not this class directly. Known sub-classes are: @@ -4819,7 +4857,7 @@ class Baseline(_serialization.Model): def __init__( self, *, - expected_results: Optional[List[List[str]]] = None, + expected_results: Optional[list[list[str]]] = None, updated_time: Optional[datetime.datetime] = None, **kwargs: Any ) -> None: @@ -4839,12 +4877,12 @@ class BaselineAdjustedResult(_serialization.Model): :ivar baseline: Baseline details. :vartype baseline: ~azure.mgmt.security.models.Baseline - :ivar status: The rule result status. Known values are: "NonFinding", "Finding", and - "InternalError". + :ivar status: The rule result status. Known values are: "NonFinding", "Finding", + "InternalError", and "NotApplicable". :vartype status: str or ~azure.mgmt.security.models.RuleStatus - :ivar results_not_in_baseline: Results the are not in baseline. + :ivar results_not_in_baseline: Results that are not in the baseline. :vartype results_not_in_baseline: list[list[str]] - :ivar results_only_in_baseline: Results the are in baseline. + :ivar results_only_in_baseline: Results that are in the baseline. :vartype results_only_in_baseline: list[list[str]] """ @@ -4860,19 +4898,19 @@ def __init__( *, baseline: Optional["_models.Baseline"] = None, status: Optional[Union[str, "_models.RuleStatus"]] = None, - results_not_in_baseline: Optional[List[List[str]]] = None, - results_only_in_baseline: Optional[List[List[str]]] = None, + results_not_in_baseline: Optional[list[list[str]]] = None, + results_only_in_baseline: Optional[list[list[str]]] = None, **kwargs: Any ) -> None: """ :keyword baseline: Baseline details. :paramtype baseline: ~azure.mgmt.security.models.Baseline - :keyword status: The rule result status. Known values are: "NonFinding", "Finding", and - "InternalError". + :keyword status: The rule result status. Known values are: "NonFinding", "Finding", + "InternalError", and "NotApplicable". :paramtype status: str or ~azure.mgmt.security.models.RuleStatus - :keyword results_not_in_baseline: Results the are not in baseline. + :keyword results_not_in_baseline: Results that are not in the baseline. :paramtype results_not_in_baseline: list[list[str]] - :keyword results_only_in_baseline: Results the are in baseline. + :keyword results_only_in_baseline: Results that are in the baseline. :paramtype results_only_in_baseline: list[list[str]] """ super().__init__(**kwargs) @@ -5029,14 +5067,10 @@ class CategoryConfiguration(_serialization.Model): :ivar minimum_severity_level: Gets or sets minimum severity level for a given category. :vartype minimum_severity_level: str - :ivar category: Rule categories. - Code - code scanning results. - Artifact scanning results. - Dependencies scanning results. - IaC results. - Secrets scanning results. - Container scanning results. Known values are: "Code", "Artifacts", "Dependencies", "Secrets", - "IaC", and "Containers". + :ivar category: Rule categories. Code - code scanning results. Artifact scanning results. + Dependencies scanning results. IaC results. Secrets scanning results. Container scanning + results. Known values are: "Code", "Artifacts", "Dependencies", "Secrets", "IaC", and + "Containers". :vartype category: str or ~azure.mgmt.security.models.RuleCategory """ @@ -5055,145 +5089,1881 @@ def __init__( """ :keyword minimum_severity_level: Gets or sets minimum severity level for a given category. :paramtype minimum_severity_level: str - :keyword category: Rule categories. - Code - code scanning results. - Artifact scanning results. - Dependencies scanning results. - IaC results. - Secrets scanning results. - Container scanning results. Known values are: "Code", "Artifacts", "Dependencies", "Secrets", - "IaC", and "Containers". + :keyword category: Rule categories. Code - code scanning results. Artifact scanning results. + Dependencies scanning results. IaC results. Secrets scanning results. Container scanning + results. Known values are: "Code", "Artifacts", "Dependencies", "Secrets", "IaC", and + "Containers". :paramtype category: str or ~azure.mgmt.security.models.RuleCategory """ super().__init__(**kwargs) - self.minimum_severity_level = minimum_severity_level - self.category = category + self.minimum_severity_level = minimum_severity_level + self.category = category + + +class CefExternalSecuritySolution(ExternalSecuritySolution): + """Represents a security solution which sends CEF logs to an OMS workspace. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar location: Location where the resource is stored. + :vartype location: str + :ivar kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". + :vartype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum + :ivar id: Resource Id. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :ivar properties: The external security solution properties for CEF solutions. + :vartype properties: ~azure.mgmt.security.models.CefSolutionProperties + """ + + _validation = { + "location": {"readonly": True}, + "id": {"readonly": True}, + "name": {"readonly": True}, + "type": {"readonly": True}, + } + + _attribute_map = { + "location": {"key": "location", "type": "str"}, + "kind": {"key": "kind", "type": "str"}, + "id": {"key": "id", "type": "str"}, + "name": {"key": "name", "type": "str"}, + "type": {"key": "type", "type": "str"}, + "properties": {"key": "properties", "type": "CefSolutionProperties"}, + } + + def __init__( + self, + *, + kind: Optional[Union[str, "_models.ExternalSecuritySolutionKindEnum"]] = None, + properties: Optional["_models.CefSolutionProperties"] = None, + **kwargs: Any + ) -> None: + """ + :keyword kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". + :paramtype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum + :keyword properties: The external security solution properties for CEF solutions. + :paramtype properties: ~azure.mgmt.security.models.CefSolutionProperties + """ + super().__init__(kind=kind, **kwargs) + self.properties = properties + + +class CefSolutionProperties(ExternalSecuritySolutionProperties): + """The external security solution properties for CEF solutions. + + :ivar additional_properties: Unmatched properties from the message are deserialized to this + collection. + :vartype additional_properties: dict[str, any] + :ivar device_vendor: + :vartype device_vendor: str + :ivar device_type: + :vartype device_type: str + :ivar workspace: Represents an OMS workspace to which the solution is connected. + :vartype workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :ivar hostname: + :vartype hostname: str + :ivar agent: + :vartype agent: str + :ivar last_event_received: + :vartype last_event_received: str + """ + + _attribute_map = { + "additional_properties": {"key": "", "type": "{object}"}, + "device_vendor": {"key": "deviceVendor", "type": "str"}, + "device_type": {"key": "deviceType", "type": "str"}, + "workspace": {"key": "workspace", "type": "ConnectedWorkspace"}, + "hostname": {"key": "hostname", "type": "str"}, + "agent": {"key": "agent", "type": "str"}, + "last_event_received": {"key": "lastEventReceived", "type": "str"}, + } + + def __init__( + self, + *, + additional_properties: Optional[dict[str, Any]] = None, + device_vendor: Optional[str] = None, + device_type: Optional[str] = None, + workspace: Optional["_models.ConnectedWorkspace"] = None, + hostname: Optional[str] = None, + agent: Optional[str] = None, + last_event_received: Optional[str] = None, + **kwargs: Any + ) -> None: + """ + :keyword additional_properties: Unmatched properties from the message are deserialized to this + collection. + :paramtype additional_properties: dict[str, any] + :keyword device_vendor: + :paramtype device_vendor: str + :keyword device_type: + :paramtype device_type: str + :keyword workspace: Represents an OMS workspace to which the solution is connected. + :paramtype workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :keyword hostname: + :paramtype hostname: str + :keyword agent: + :paramtype agent: str + :keyword last_event_received: + :paramtype last_event_received: str + """ + super().__init__( + additional_properties=additional_properties, + device_vendor=device_vendor, + device_type=device_type, + workspace=workspace, + **kwargs + ) + self.hostname = hostname + self.agent = agent + self.last_event_received = last_event_received + + +class CloudErrorAutoGenerated(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated10(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated10] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated10]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated10"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated11(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated11] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated11]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated11"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated12(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated12] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated12]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated12"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated13(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated13] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated13]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated13"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated14(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated14] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated14]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated14"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated15(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated15] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated15]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated15"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated16(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated16] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated16]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated16"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated17(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated17] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated17]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated17"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated18(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated18] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated18]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated18"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated19(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated19] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated19]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated19"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated2(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated2] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated2]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated2"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated20(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated20] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated20]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated20"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated3(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated3] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated3]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated3"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated4(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated4] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated4]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated4"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated5(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated5] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated5]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated5"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated6(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated6] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated6]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated6"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated7(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated7] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated7]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated7"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated8(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated8] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated8]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated8"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorAutoGenerated9(_serialization.Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated9] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "error.code", "type": "str"}, + "message": {"key": "error.message", "type": "str"}, + "target": {"key": "error.target", "type": "str"}, + "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated9]"}, + "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated9"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBody(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBody] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBody]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBody"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated10(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated10] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated10]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated10"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated11(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated11] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated11]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated11"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated12(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated12] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated12]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated12"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated13(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated13] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated13]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated13"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated14(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated14] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated14]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated14"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated15(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated15] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated15]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated15"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated16(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated16] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated16]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated16"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated17(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated17] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated17]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated17"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated18(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated18] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated18]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated18"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated19(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated19] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated19]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated19"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated2(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated2] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated2]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated2"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated20(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated20] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated20]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated20"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated3(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated3] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated3]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated3"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated4(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated4] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated4]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated4"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated5(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated5] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated5]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated5"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None + + +class CloudErrorBodyAutoGenerated6(_serialization.Model): + """The error detail. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated6] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] + """ + + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated6]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated6"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None -class CefExternalSecuritySolution(ExternalSecuritySolution): - """Represents a security solution which sends CEF logs to an OMS workspace. +class CloudErrorBodyAutoGenerated7(_serialization.Model): + """The error detail. Variables are only populated by the server, and will be ignored when sending a request. - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :vartype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: The external security solution properties for CEF solutions. - :vartype properties: ~azure.mgmt.security.models.CefSolutionProperties + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated7] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] """ _validation = { - "location": {"readonly": True}, - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, } _attribute_map = { - "location": {"key": "location", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "CefSolutionProperties"}, + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated7]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, } - def __init__( - self, - *, - kind: Optional[Union[str, "_models.ExternalSecuritySolutionKindEnum"]] = None, - properties: Optional["_models.CefSolutionProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :paramtype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - :keyword properties: The external security solution properties for CEF solutions. - :paramtype properties: ~azure.mgmt.security.models.CefSolutionProperties - """ - super().__init__(kind=kind, **kwargs) - self.properties = properties + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated7"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None -class CefSolutionProperties(ExternalSecuritySolutionProperties): - """The external security solution properties for CEF solutions. +class CloudErrorBodyAutoGenerated8(_serialization.Model): + """The error detail. - :ivar additional_properties: Unmatched properties from the message are deserialized to this - collection. - :vartype additional_properties: dict[str, any] - :ivar device_vendor: - :vartype device_vendor: str - :ivar device_type: - :vartype device_type: str - :ivar workspace: Represents an OMS workspace to which the solution is connected. - :vartype workspace: ~azure.mgmt.security.models.ConnectedWorkspace - :ivar hostname: - :vartype hostname: str - :ivar agent: - :vartype agent: str - :ivar last_event_received: - :vartype last_event_received: str + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated8] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] """ + _validation = { + "code": {"readonly": True}, + "message": {"readonly": True}, + "target": {"readonly": True}, + "details": {"readonly": True}, + "additional_info": {"readonly": True}, + } + _attribute_map = { - "additional_properties": {"key": "", "type": "{object}"}, - "device_vendor": {"key": "deviceVendor", "type": "str"}, - "device_type": {"key": "deviceType", "type": "str"}, - "workspace": {"key": "workspace", "type": "ConnectedWorkspace"}, - "hostname": {"key": "hostname", "type": "str"}, - "agent": {"key": "agent", "type": "str"}, - "last_event_received": {"key": "lastEventReceived", "type": "str"}, + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + "target": {"key": "target", "type": "str"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated8]"}, + "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, } - def __init__( - self, - *, - additional_properties: Optional[Dict[str, Any]] = None, - device_vendor: Optional[str] = None, - device_type: Optional[str] = None, - workspace: Optional["_models.ConnectedWorkspace"] = None, - hostname: Optional[str] = None, - agent: Optional[str] = None, - last_event_received: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword additional_properties: Unmatched properties from the message are deserialized to this - collection. - :paramtype additional_properties: dict[str, any] - :keyword device_vendor: - :paramtype device_vendor: str - :keyword device_type: - :paramtype device_type: str - :keyword workspace: Represents an OMS workspace to which the solution is connected. - :paramtype workspace: ~azure.mgmt.security.models.ConnectedWorkspace - :keyword hostname: - :paramtype hostname: str - :keyword agent: - :paramtype agent: str - :keyword last_event_received: - :paramtype last_event_received: str - """ - super().__init__( - additional_properties=additional_properties, - device_vendor=device_vendor, - device_type=device_type, - workspace=workspace, - **kwargs - ) - self.hostname = hostname - self.agent = agent - self.last_event_received = last_event_received + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.code: Optional[str] = None + self.message: Optional[str] = None + self.target: Optional[str] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated8"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None -class CloudErrorBody(_serialization.Model): +class CloudErrorBodyAutoGenerated9(_serialization.Model): """The error detail. Variables are only populated by the server, and will be ignored when sending a request. @@ -5205,7 +6975,7 @@ class CloudErrorBody(_serialization.Model): :ivar target: The error target. :vartype target: str :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBody] + :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated9] :ivar additional_info: The error additional info. :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] """ @@ -5222,7 +6992,7 @@ class CloudErrorBody(_serialization.Model): "code": {"key": "code", "type": "str"}, "message": {"key": "message", "type": "str"}, "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBody]"}, + "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated9]"}, "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, } @@ -5232,8 +7002,8 @@ def __init__(self, **kwargs: Any) -> None: self.code: Optional[str] = None self.message: Optional[str] = None self.target: Optional[str] = None - self.details: Optional[List["_models.CloudErrorBody"]] = None - self.additional_info: Optional[List["_models.ErrorAdditionalInfo"]] = None + self.details: Optional[list["_models.CloudErrorBodyAutoGenerated9"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None class CloudOffering(_serialization.Model): @@ -5349,7 +7119,7 @@ def __init__(self, **kwargs: Any) -> None: super().__init__(**kwargs) self.assessment_timestamp_utc_date: Optional[datetime.datetime] = None self.resource_count: Optional[int] = None - self.assessment_result: Optional[List["_models.ComplianceSegment"]] = None + self.assessment_result: Optional[list["_models.ComplianceSegment"]] = None class ComplianceList(_serialization.Model): @@ -5372,7 +7142,7 @@ class ComplianceList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: Optional[List["_models.Compliance"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.Compliance"]] = None, **kwargs: Any) -> None: """ :keyword value: List of Compliance objects. :paramtype value: list[~azure.mgmt.security.models.Compliance] @@ -5441,7 +7211,7 @@ class ComplianceResultList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: List["_models.ComplianceResult"], **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.ComplianceResult"], **kwargs: Any) -> None: """ :keyword value: List of compliance results. Required. :paramtype value: list[~azure.mgmt.security.models.ComplianceResult] @@ -5534,7 +7304,7 @@ class Condition(_serialization.Model): see examples. :vartype value: str :ivar operator: The governance rule Condition's Operator, for example Equals for severity or In - for list of assessments, see examples. Known values are: "Equals", "In", and "In". + for list of assessments, see examples. Known values are: "Equals" and "In". :vartype operator: str or ~azure.mgmt.security.models.GovernanceRuleConditionOperator """ @@ -5560,7 +7330,7 @@ def __init__( keys, see examples. :paramtype value: str :keyword operator: The governance rule Condition's Operator, for example Equals for severity or - In for list of assessments, see examples. Known values are: "Equals", "In", and "In". + In for list of assessments, see examples. Known values are: "Equals" and "In". :paramtype operator: str or ~azure.mgmt.security.models.GovernanceRuleConditionOperator """ super().__init__(**kwargs) @@ -5600,8 +7370,8 @@ def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) self.id: Optional[str] = None - self.inbound_connected_resources: Optional[List["_models.ConnectedResource"]] = None - self.outbound_connected_resources: Optional[List["_models.ConnectedResource"]] = None + self.inbound_connected_resources: Optional[list["_models.ConnectedResource"]] = None + self.outbound_connected_resources: Optional[list["_models.ConnectedResource"]] = None class ConnectedResource(_serialization.Model): @@ -5699,7 +7469,7 @@ class ConnectionFromIpNotAllowed(AllowlistCustomAlertRule): "allowlist_values": {"key": "allowlistValues", "type": "[str]"}, } - def __init__(self, *, is_enabled: bool, allowlist_values: List[str], **kwargs: Any) -> None: + def __init__(self, *, is_enabled: bool, allowlist_values: list[str], **kwargs: Any) -> None: """ :keyword is_enabled: Status of the custom alert. Required. :paramtype is_enabled: bool @@ -5719,139 +7489,50 @@ class ConnectionToIpNotAllowed(AllowlistCustomAlertRule): All required parameters must be populated in order to send to server. - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar value_type: The value type of the items in the list. Known values are: "IpCidr" and - "String". - :vartype value_type: str or ~azure.mgmt.security.models.ValueType - :ivar allowlist_values: The values to allow. The format of the values depends on the rule type. - Required. - :vartype allowlist_values: list[str] - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "value_type": {"readonly": True}, - "allowlist_values": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "value_type": {"key": "valueType", "type": "str"}, - "allowlist_values": {"key": "allowlistValues", "type": "[str]"}, - } - - def __init__(self, *, is_enabled: bool, allowlist_values: List[str], **kwargs: Any) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword allowlist_values: The values to allow. The format of the values depends on the rule - type. Required. - :paramtype allowlist_values: list[str] - """ - super().__init__(is_enabled=is_enabled, allowlist_values=allowlist_values, **kwargs) - self.rule_type: str = "ConnectionToIpNotAllowed" - - -class ConnectorSetting(Resource): - """The connector setting. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar hybrid_compute_settings: Settings for hybrid compute management. These settings are - relevant only for Arc autoProvision (Hybrid Compute). - :vartype hybrid_compute_settings: ~azure.mgmt.security.models.HybridComputeSettingsProperties - :ivar authentication_details: Settings for authentication management, these settings are - relevant only for the cloud connector. - :vartype authentication_details: ~azure.mgmt.security.models.AuthenticationDetailsProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "hybrid_compute_settings": { - "key": "properties.hybridComputeSettings", - "type": "HybridComputeSettingsProperties", - }, - "authentication_details": { - "key": "properties.authenticationDetails", - "type": "AuthenticationDetailsProperties", - }, - } - - def __init__( - self, - *, - hybrid_compute_settings: Optional["_models.HybridComputeSettingsProperties"] = None, - authentication_details: Optional["_models.AuthenticationDetailsProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword hybrid_compute_settings: Settings for hybrid compute management. These settings are - relevant only for Arc autoProvision (Hybrid Compute). - :paramtype hybrid_compute_settings: ~azure.mgmt.security.models.HybridComputeSettingsProperties - :keyword authentication_details: Settings for authentication management, these settings are - relevant only for the cloud connector. - :paramtype authentication_details: ~azure.mgmt.security.models.AuthenticationDetailsProperties - """ - super().__init__(**kwargs) - self.hybrid_compute_settings = hybrid_compute_settings - self.authentication_details = authentication_details - - -class ConnectorSettingList(_serialization.Model): - """For a subscription, list of all cloud account connectors and their settings. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of all the cloud account connector settings. - :vartype value: list[~azure.mgmt.security.models.ConnectorSetting] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str + :ivar display_name: The display name of the custom alert. + :vartype display_name: str + :ivar description: The description of the custom alert. + :vartype description: str + :ivar is_enabled: Status of the custom alert. Required. + :vartype is_enabled: bool + :ivar rule_type: The type of the custom alert rule. Required. + :vartype rule_type: str + :ivar value_type: The value type of the items in the list. Known values are: "IpCidr" and + "String". + :vartype value_type: str or ~azure.mgmt.security.models.ValueType + :ivar allowlist_values: The values to allow. The format of the values depends on the rule type. + Required. + :vartype allowlist_values: list[str] """ _validation = { - "next_link": {"readonly": True}, + "display_name": {"readonly": True}, + "description": {"readonly": True}, + "is_enabled": {"required": True}, + "rule_type": {"required": True}, + "value_type": {"readonly": True}, + "allowlist_values": {"required": True}, } _attribute_map = { - "value": {"key": "value", "type": "[ConnectorSetting]"}, - "next_link": {"key": "nextLink", "type": "str"}, + "display_name": {"key": "displayName", "type": "str"}, + "description": {"key": "description", "type": "str"}, + "is_enabled": {"key": "isEnabled", "type": "bool"}, + "rule_type": {"key": "ruleType", "type": "str"}, + "value_type": {"key": "valueType", "type": "str"}, + "allowlist_values": {"key": "allowlistValues", "type": "[str]"}, } - def __init__(self, *, value: Optional[List["_models.ConnectorSetting"]] = None, **kwargs: Any) -> None: + def __init__(self, *, is_enabled: bool, allowlist_values: list[str], **kwargs: Any) -> None: """ - :keyword value: List of all the cloud account connector settings. - :paramtype value: list[~azure.mgmt.security.models.ConnectorSetting] + :keyword is_enabled: Status of the custom alert. Required. + :paramtype is_enabled: bool + :keyword allowlist_values: The values to allow. The format of the values depends on the rule + type. Required. + :paramtype allowlist_values: list[str] """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None + super().__init__(is_enabled=is_enabled, allowlist_values=allowlist_values, **kwargs) + self.rule_type: str = "ConnectionToIpNotAllowed" class ContainerRegistryVulnerabilityProperties(AdditionalData): @@ -5912,11 +7593,11 @@ def __init__(self, **kwargs: Any) -> None: super().__init__(**kwargs) self.assessed_resource_type: str = "ContainerRegistryVulnerability" self.type: Optional[str] = None - self.cvss: Optional[Dict[str, "_models.CVSS"]] = None + self.cvss: Optional[dict[str, "_models.CVSS"]] = None self.patchable: Optional[bool] = None - self.cve: Optional[List["_models.CVE"]] = None + self.cve: Optional[list["_models.CVE"]] = None self.published_time: Optional[datetime.datetime] = None - self.vendor_references: Optional[List["_models.VendorReference"]] = None + self.vendor_references: Optional[list["_models.VendorReference"]] = None self.repository_name: Optional[str] = None self.image_digest: Optional[str] = None @@ -6254,334 +7935,6 @@ def __init__(self, **kwargs: Any) -> None: self.offering_type: str = "CspmMonitorJFrog" -class CustomAssessmentAutomation(Resource): - """Custom Assessment Automation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar compressed_query: GZip encoded KQL query representing the assessment automation results - required. - :vartype compressed_query: str - :ivar supported_cloud: Relevant cloud for the custom assessment automation. Known values are: - "AWS" and "GCP". - :vartype supported_cloud: str or ~azure.mgmt.security.models.SupportedCloudEnum - :ivar severity: The severity to relate to the assessments generated by this assessment - automation. Known values are: "High", "Medium", and "Low". - :vartype severity: str or ~azure.mgmt.security.models.SeverityEnum - :ivar display_name: The display name of the assessments generated by this assessment - automation. - :vartype display_name: str - :ivar description: The description to relate to the assessments generated by this assessment - automation. - :vartype description: str - :ivar remediation_description: The remediation description to relate to the assessments - generated by this assessment automation. - :vartype remediation_description: str - :ivar assessment_key: The assessment metadata key used when an assessment is generated for this - assessment automation. - :vartype assessment_key: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "compressed_query": {"key": "properties.compressedQuery", "type": "str"}, - "supported_cloud": {"key": "properties.supportedCloud", "type": "str"}, - "severity": {"key": "properties.severity", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "remediation_description": {"key": "properties.remediationDescription", "type": "str"}, - "assessment_key": {"key": "properties.assessmentKey", "type": "str"}, - } - - def __init__( - self, - *, - compressed_query: Optional[str] = None, - supported_cloud: Union[str, "_models.SupportedCloudEnum"] = "AWS", - severity: Union[str, "_models.SeverityEnum"] = "Low", - display_name: Optional[str] = None, - description: Optional[str] = None, - remediation_description: Optional[str] = None, - assessment_key: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword compressed_query: GZip encoded KQL query representing the assessment automation - results required. - :paramtype compressed_query: str - :keyword supported_cloud: Relevant cloud for the custom assessment automation. Known values - are: "AWS" and "GCP". - :paramtype supported_cloud: str or ~azure.mgmt.security.models.SupportedCloudEnum - :keyword severity: The severity to relate to the assessments generated by this assessment - automation. Known values are: "High", "Medium", and "Low". - :paramtype severity: str or ~azure.mgmt.security.models.SeverityEnum - :keyword display_name: The display name of the assessments generated by this assessment - automation. - :paramtype display_name: str - :keyword description: The description to relate to the assessments generated by this assessment - automation. - :paramtype description: str - :keyword remediation_description: The remediation description to relate to the assessments - generated by this assessment automation. - :paramtype remediation_description: str - :keyword assessment_key: The assessment metadata key used when an assessment is generated for - this assessment automation. - :paramtype assessment_key: str - """ - super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.compressed_query = compressed_query - self.supported_cloud = supported_cloud - self.severity = severity - self.display_name = display_name - self.description = description - self.remediation_description = remediation_description - self.assessment_key = assessment_key - - -class CustomAssessmentAutomationRequest(Resource): - """Custom Assessment Automation request. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar compressed_query: Base 64 encoded KQL query representing the assessment automation - results required. - :vartype compressed_query: str - :ivar supported_cloud: Relevant cloud for the custom assessment automation. Known values are: - "AWS" and "GCP". - :vartype supported_cloud: str or ~azure.mgmt.security.models.SupportedCloudEnum - :ivar severity: The severity to relate to the assessments generated by this assessment - automation. Known values are: "High", "Medium", and "Low". - :vartype severity: str or ~azure.mgmt.security.models.SeverityEnum - :ivar display_name: The display name of the assessments generated by this assessment - automation. - :vartype display_name: str - :ivar description: The description to relate to the assessments generated by this assessment - automation. - :vartype description: str - :ivar remediation_description: The remediation description to relate to the assessments - generated by this assessment automation. - :vartype remediation_description: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "compressed_query": {"key": "properties.compressedQuery", "type": "str"}, - "supported_cloud": {"key": "properties.supportedCloud", "type": "str"}, - "severity": {"key": "properties.severity", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "remediation_description": {"key": "properties.remediationDescription", "type": "str"}, - } - - def __init__( - self, - *, - compressed_query: Optional[str] = None, - supported_cloud: Union[str, "_models.SupportedCloudEnum"] = "AWS", - severity: Union[str, "_models.SeverityEnum"] = "Low", - display_name: Optional[str] = None, - description: Optional[str] = None, - remediation_description: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword compressed_query: Base 64 encoded KQL query representing the assessment automation - results required. - :paramtype compressed_query: str - :keyword supported_cloud: Relevant cloud for the custom assessment automation. Known values - are: "AWS" and "GCP". - :paramtype supported_cloud: str or ~azure.mgmt.security.models.SupportedCloudEnum - :keyword severity: The severity to relate to the assessments generated by this assessment - automation. Known values are: "High", "Medium", and "Low". - :paramtype severity: str or ~azure.mgmt.security.models.SeverityEnum - :keyword display_name: The display name of the assessments generated by this assessment - automation. - :paramtype display_name: str - :keyword description: The description to relate to the assessments generated by this assessment - automation. - :paramtype description: str - :keyword remediation_description: The remediation description to relate to the assessments - generated by this assessment automation. - :paramtype remediation_description: str - """ - super().__init__(**kwargs) - self.compressed_query = compressed_query - self.supported_cloud = supported_cloud - self.severity = severity - self.display_name = display_name - self.description = description - self.remediation_description = remediation_description - - -class CustomAssessmentAutomationsListResult(_serialization.Model): - """A list of Custom Assessment Automations. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Collection of Custom Assessment Automations. - :vartype value: list[~azure.mgmt.security.models.CustomAssessmentAutomation] - :ivar next_link: The link used to get the next page of operations. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[CustomAssessmentAutomation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, next_link: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword next_link: The link used to get the next page of operations. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value: Optional[List["_models.CustomAssessmentAutomation"]] = None - self.next_link = next_link - - -class CustomEntityStoreAssignment(Resource): - """Custom entity store assignment. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar principal: The principal assigned with entity store. Format of principal is: [AAD - type]=[PrincipalObjectId];[TenantId]. - :vartype principal: str - :ivar entity_store_database_link: The link to entity store database. - :vartype entity_store_database_link: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "principal": {"key": "properties.principal", "type": "str"}, - "entity_store_database_link": {"key": "properties.entityStoreDatabaseLink", "type": "str"}, - } - - def __init__( - self, *, principal: Optional[str] = None, entity_store_database_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword principal: The principal assigned with entity store. Format of principal is: [AAD - type]=[PrincipalObjectId];[TenantId]. - :paramtype principal: str - :keyword entity_store_database_link: The link to entity store database. - :paramtype entity_store_database_link: str - """ - super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.principal = principal - self.entity_store_database_link = entity_store_database_link - - -class CustomEntityStoreAssignmentRequest(_serialization.Model): - """describes the custom entity store assignment request. - - :ivar principal: The principal assigned with entity store. If not provided, will use caller - principal. Format of principal is: [AAD type]=[PrincipalObjectId];[TenantId]. - :vartype principal: str - """ - - _attribute_map = { - "principal": {"key": "properties.principal", "type": "str"}, - } - - def __init__(self, *, principal: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword principal: The principal assigned with entity store. If not provided, will use caller - principal. Format of principal is: [AAD type]=[PrincipalObjectId];[TenantId]. - :paramtype principal: str - """ - super().__init__(**kwargs) - self.principal = principal - - -class CustomEntityStoreAssignmentsListResult(_serialization.Model): - """A list of custom entity store assignments. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Collection of custom entity store assignments. - :vartype value: list[~azure.mgmt.security.models.CustomEntityStoreAssignment] - :ivar next_link: The link used to get the next page of operations. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[CustomEntityStoreAssignment]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, next_link: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword next_link: The link used to get the next page of operations. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value: Optional[List["_models.CustomEntityStoreAssignment"]] = None - self.next_link = next_link - - class CustomRecommendation(Resource): """Custom Recommendation. @@ -6648,7 +8001,7 @@ def __init__( self, *, query: Optional[str] = None, - cloud_providers: Optional[List[Union[str, "_models.RecommendationSupportedClouds"]]] = None, + cloud_providers: Optional[list[Union[str, "_models.RecommendationSupportedClouds"]]] = None, severity: Union[str, "_models.SeverityEnum"] = "Low", security_issue: Union[str, "_models.SecurityIssue"] = "BestPractices", display_name: Optional[str] = None, @@ -6718,7 +8071,7 @@ def __init__(self, *, next_link: Optional[str] = None, **kwargs: Any) -> None: :paramtype next_link: str """ super().__init__(**kwargs) - self.value: Optional[List["_models.CustomRecommendation"]] = None + self.value: Optional[list["_models.CustomRecommendation"]] = None self.next_link = next_link @@ -9086,6 +10439,34 @@ def __init__( self.properties = properties +class DefenderForStorageSettingList(_serialization.Model): + """List of Defender for Storage settings. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar value: List of Defender for Storage settings. + :vartype value: list[~azure.mgmt.security.models.DefenderForStorageSetting] + :ivar next_link: The URI to fetch the next page. + :vartype next_link: str + """ + + _validation = { + "value": {"readonly": True}, + "next_link": {"readonly": True}, + } + + _attribute_map = { + "value": {"key": "value", "type": "[DefenderForStorageSetting]"}, + "next_link": {"key": "nextLink", "type": "str"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.value: Optional[list["_models.DefenderForStorageSetting"]] = None + self.next_link: Optional[str] = None + + class DefenderForStorageSettingProperties(_serialization.Model): """Defender for Storage resource properties. @@ -9176,7 +10557,7 @@ class DenylistCustomAlertRule(ListCustomAlertRule): "denylist_values": {"key": "denylistValues", "type": "[str]"}, } - def __init__(self, *, is_enabled: bool, denylist_values: List[str], **kwargs: Any) -> None: + def __init__(self, *, is_enabled: bool, denylist_values: list[str], **kwargs: Any) -> None: """ :keyword is_enabled: Status of the custom alert. Required. :paramtype is_enabled: bool @@ -9229,10 +10610,10 @@ class DeviceSecurityGroup(Resource): def __init__( self, *, - threshold_rules: Optional[List["_models.ThresholdCustomAlertRule"]] = None, - time_window_rules: Optional[List["_models.TimeWindowCustomAlertRule"]] = None, - allowlist_rules: Optional[List["_models.AllowlistCustomAlertRule"]] = None, - denylist_rules: Optional[List["_models.DenylistCustomAlertRule"]] = None, + threshold_rules: Optional[list["_models.ThresholdCustomAlertRule"]] = None, + time_window_rules: Optional[list["_models.TimeWindowCustomAlertRule"]] = None, + allowlist_rules: Optional[list["_models.AllowlistCustomAlertRule"]] = None, + denylist_rules: Optional[list["_models.DenylistCustomAlertRule"]] = None, **kwargs: Any ) -> None: """ @@ -9272,7 +10653,7 @@ class DeviceSecurityGroupList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: Optional[List["_models.DeviceSecurityGroup"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.DeviceSecurityGroup"]] = None, **kwargs: Any) -> None: """ :keyword value: List of device security group objects. :paramtype value: list[~azure.mgmt.security.models.DeviceSecurityGroup] @@ -9371,7 +10752,7 @@ class DevOpsConfigurationListResponse(_serialization.Model): def __init__( self, *, - value: Optional[List["_models.DevOpsConfiguration"]] = None, + value: Optional[list["_models.DevOpsConfiguration"]] = None, next_link: Optional[str] = None, **kwargs: Any ) -> None: @@ -9412,8 +10793,7 @@ class DevOpsConfigurationProperties(_serialization.Model): "NotApplicable". :vartype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery :ivar top_level_inventory_list: List of top-level inventory to select when AutoDiscovery is - disabled. - This field is ignored when AutoDiscovery is enabled. + disabled. This field is ignored when AutoDiscovery is enabled. :vartype top_level_inventory_list: list[str] :ivar capabilities: List of capabilities assigned to the DevOps configuration during the discovery process. @@ -9445,7 +10825,7 @@ def __init__( *, authorization: Optional["_models.Authorization"] = None, auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, - top_level_inventory_list: Optional[List[str]] = None, + top_level_inventory_list: Optional[list[str]] = None, agentless_configuration: Optional["_models.AgentlessConfiguration"] = None, **kwargs: Any ) -> None: @@ -9456,8 +10836,7 @@ def __init__( "NotApplicable". :paramtype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery :keyword top_level_inventory_list: List of top-level inventory to select when AutoDiscovery is - disabled. - This field is ignored when AutoDiscovery is enabled. + disabled. This field is ignored when AutoDiscovery is enabled. :paramtype top_level_inventory_list: list[str] :keyword agentless_configuration: Details about Agentless configuration. :paramtype agentless_configuration: ~azure.mgmt.security.models.AgentlessConfiguration @@ -9469,7 +10848,7 @@ def __init__( self.authorization = authorization self.auto_discovery = auto_discovery self.top_level_inventory_list = top_level_inventory_list - self.capabilities: Optional[List["_models.DevOpsCapability"]] = None + self.capabilities: Optional[list["_models.DevOpsCapability"]] = None self.agentless_configuration = agentless_configuration @@ -9644,7 +11023,7 @@ class DiscoveredSecuritySolutionList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: Optional[List["_models.DiscoveredSecuritySolution"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.DiscoveredSecuritySolution"]] = None, **kwargs: Any) -> None: """ :keyword value: :paramtype value: list[~azure.mgmt.security.models.DiscoveredSecuritySolution] @@ -9864,8 +11243,8 @@ def __init__(self, **kwargs: Any) -> None: self.code: Optional[str] = None self.message: Optional[str] = None self.target: Optional[str] = None - self.details: Optional[List["_models.ErrorDetail"]] = None - self.additional_info: Optional[List["_models.ErrorAdditionalInfo"]] = None + self.details: Optional[list["_models.ErrorDetail"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None class ErrorDetailAutoGenerated(_serialization.Model): @@ -9907,8 +11286,8 @@ def __init__(self, **kwargs: Any) -> None: self.code: Optional[str] = None self.message: Optional[str] = None self.target: Optional[str] = None - self.details: Optional[List["_models.ErrorDetailAutoGenerated"]] = None - self.additional_info: Optional[List["_models.ErrorAdditionalInfo"]] = None + self.details: Optional[list["_models.ErrorDetailAutoGenerated"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None class ErrorDetailAutoGenerated2(_serialization.Model): @@ -9950,8 +11329,8 @@ def __init__(self, **kwargs: Any) -> None: self.code: Optional[str] = None self.message: Optional[str] = None self.target: Optional[str] = None - self.details: Optional[List["_models.ErrorDetailAutoGenerated2"]] = None - self.additional_info: Optional[List["_models.ErrorAdditionalInfo"]] = None + self.details: Optional[list["_models.ErrorDetailAutoGenerated2"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None class ErrorResponse(_serialization.Model): @@ -10097,7 +11476,7 @@ class Extension(_serialization.Model): :vartype additional_extension_properties: dict[str, any] :ivar operation_status: Optional. A status describing the success/failure of the extension's enablement/disablement operation. - :vartype operation_status: ~azure.mgmt.security.models.OperationStatusAutoGenerated + :vartype operation_status: ~azure.mgmt.security.models.OperationStatus """ _validation = { @@ -10110,7 +11489,7 @@ class Extension(_serialization.Model): "name": {"key": "name", "type": "str"}, "is_enabled": {"key": "isEnabled", "type": "str"}, "additional_extension_properties": {"key": "additionalExtensionProperties", "type": "{object}"}, - "operation_status": {"key": "operationStatus", "type": "OperationStatusAutoGenerated"}, + "operation_status": {"key": "operationStatus", "type": "OperationStatus"}, } def __init__( @@ -10118,7 +11497,7 @@ def __init__( *, name: str, is_enabled: Union[str, "_models.IsEnabled"], - additional_extension_properties: Optional[Dict[str, Any]] = None, + additional_extension_properties: Optional[dict[str, Any]] = None, **kwargs: Any ) -> None: """ @@ -10178,7 +11557,7 @@ def __init__( self.name = name self.is_enabled = is_enabled self.additional_extension_properties = additional_extension_properties - self.operation_status: Optional["_models.OperationStatusAutoGenerated"] = None + self.operation_status: Optional["_models.OperationStatus"] = None class ExternalSecuritySolutionList(_serialization.Model): @@ -10201,7 +11580,7 @@ class ExternalSecuritySolutionList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: Optional[List["_models.ExternalSecuritySolution"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.ExternalSecuritySolution"]] = None, **kwargs: Any) -> None: """ :keyword value: :paramtype value: list[~azure.mgmt.security.models.ExternalSecuritySolution] @@ -10283,6 +11662,60 @@ def __init__( self.rule_type: str = "FailedLocalLoginsNotInAllowedRange" +class FilesScanSummary(_serialization.Model): + """A summary of the scan results of the files that were scanned. + + :ivar total_files_scanned: The total number of files that were scanned. + :vartype total_files_scanned: int + :ivar malicious_files_count: The number of malicious files that were detected during the scan. + :vartype malicious_files_count: int + :ivar skipped_files_count: The number of files that were skipped. + :vartype skipped_files_count: int + :ivar failed_files_count: The number of failed file scans. + :vartype failed_files_count: int + :ivar scanned_files_in_gb: The number of gigabytes of data that were scanned. + :vartype scanned_files_in_gb: float + """ + + _attribute_map = { + "total_files_scanned": {"key": "totalFilesScanned", "type": "int"}, + "malicious_files_count": {"key": "maliciousFilesCount", "type": "int"}, + "skipped_files_count": {"key": "skippedFilesCount", "type": "int"}, + "failed_files_count": {"key": "failedFilesCount", "type": "int"}, + "scanned_files_in_gb": {"key": "scannedFilesInGB", "type": "float"}, + } + + def __init__( + self, + *, + total_files_scanned: Optional[int] = None, + malicious_files_count: Optional[int] = None, + skipped_files_count: Optional[int] = None, + failed_files_count: Optional[int] = None, + scanned_files_in_gb: Optional[float] = None, + **kwargs: Any + ) -> None: + """ + :keyword total_files_scanned: The total number of files that were scanned. + :paramtype total_files_scanned: int + :keyword malicious_files_count: The number of malicious files that were detected during the + scan. + :paramtype malicious_files_count: int + :keyword skipped_files_count: The number of files that were skipped. + :paramtype skipped_files_count: int + :keyword failed_files_count: The number of failed file scans. + :paramtype failed_files_count: int + :keyword scanned_files_in_gb: The number of gigabytes of data that were scanned. + :paramtype scanned_files_in_gb: float + """ + super().__init__(**kwargs) + self.total_files_scanned = total_files_scanned + self.malicious_files_count = malicious_files_count + self.skipped_files_count = skipped_files_count + self.failed_files_count = failed_files_count + self.scanned_files_in_gb = scanned_files_in_gb + + class FileUploadsNotInAllowedRange(TimeWindowCustomAlertRule): """Number of file uploads is not in allowed range. @@ -10355,141 +11788,6 @@ def __init__( self.rule_type: str = "FileUploadsNotInAllowedRange" -class GcpCredentialsDetailsProperties(AuthenticationDetailsProperties): - """GCP cloud account connector based service to service credentials, the credentials are composed - of the organization ID and a JSON API key (write only). - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar authentication_provisioning_state: State of the multi-cloud connector. Known values are: - "Valid", "Invalid", "Expired", and "IncorrectPolicy". - :vartype authentication_provisioning_state: str or - ~azure.mgmt.security.models.AuthenticationProvisioningState - :ivar granted_permissions: The permissions detected in the cloud account. - :vartype granted_permissions: list[str or ~azure.mgmt.security.models.PermissionProperty] - :ivar authentication_type: Connect to your cloud account, for AWS use either account - credentials or role-based authentication. For GCP use account organization credentials. - Required. Known values are: "awsCreds", "awsAssumeRole", and "gcpCredentials". - :vartype authentication_type: str or ~azure.mgmt.security.models.AuthenticationType - :ivar organization_id: The organization ID of the GCP cloud account. Required. - :vartype organization_id: str - :ivar type: Type field of the API key (write only). Required. - :vartype type: str - :ivar project_id: Project ID field of the API key (write only). Required. - :vartype project_id: str - :ivar private_key_id: Private key ID field of the API key (write only). Required. - :vartype private_key_id: str - :ivar private_key: Private key field of the API key (write only). Required. - :vartype private_key: str - :ivar client_email: Client email field of the API key (write only). Required. - :vartype client_email: str - :ivar client_id: Client ID field of the API key (write only). Required. - :vartype client_id: str - :ivar auth_uri: Auth URI field of the API key (write only). Required. - :vartype auth_uri: str - :ivar token_uri: Token URI field of the API key (write only). Required. - :vartype token_uri: str - :ivar auth_provider_x509_cert_url: Auth provider x509 certificate URL field of the API key - (write only). Required. - :vartype auth_provider_x509_cert_url: str - :ivar client_x509_cert_url: Client x509 certificate URL field of the API key (write only). - Required. - :vartype client_x509_cert_url: str - """ - - _validation = { - "authentication_provisioning_state": {"readonly": True}, - "granted_permissions": {"readonly": True}, - "authentication_type": {"required": True}, - "organization_id": {"required": True}, - "type": {"required": True}, - "project_id": {"required": True}, - "private_key_id": {"required": True}, - "private_key": {"required": True}, - "client_email": {"required": True}, - "client_id": {"required": True}, - "auth_uri": {"required": True}, - "token_uri": {"required": True}, - "auth_provider_x509_cert_url": {"required": True}, - "client_x509_cert_url": {"required": True}, - } - - _attribute_map = { - "authentication_provisioning_state": {"key": "authenticationProvisioningState", "type": "str"}, - "granted_permissions": {"key": "grantedPermissions", "type": "[str]"}, - "authentication_type": {"key": "authenticationType", "type": "str"}, - "organization_id": {"key": "organizationId", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "project_id": {"key": "projectId", "type": "str"}, - "private_key_id": {"key": "privateKeyId", "type": "str"}, - "private_key": {"key": "privateKey", "type": "str"}, - "client_email": {"key": "clientEmail", "type": "str"}, - "client_id": {"key": "clientId", "type": "str"}, - "auth_uri": {"key": "authUri", "type": "str"}, - "token_uri": {"key": "tokenUri", "type": "str"}, - "auth_provider_x509_cert_url": {"key": "authProviderX509CertUrl", "type": "str"}, - "client_x509_cert_url": {"key": "clientX509CertUrl", "type": "str"}, - } - - def __init__( - self, - *, - organization_id: str, - type: str, - project_id: str, - private_key_id: str, - private_key: str, - client_email: str, - client_id: str, - auth_uri: str, - token_uri: str, - auth_provider_x509_cert_url: str, - client_x509_cert_url: str, - **kwargs: Any - ) -> None: - """ - :keyword organization_id: The organization ID of the GCP cloud account. Required. - :paramtype organization_id: str - :keyword type: Type field of the API key (write only). Required. - :paramtype type: str - :keyword project_id: Project ID field of the API key (write only). Required. - :paramtype project_id: str - :keyword private_key_id: Private key ID field of the API key (write only). Required. - :paramtype private_key_id: str - :keyword private_key: Private key field of the API key (write only). Required. - :paramtype private_key: str - :keyword client_email: Client email field of the API key (write only). Required. - :paramtype client_email: str - :keyword client_id: Client ID field of the API key (write only). Required. - :paramtype client_id: str - :keyword auth_uri: Auth URI field of the API key (write only). Required. - :paramtype auth_uri: str - :keyword token_uri: Token URI field of the API key (write only). Required. - :paramtype token_uri: str - :keyword auth_provider_x509_cert_url: Auth provider x509 certificate URL field of the API key - (write only). Required. - :paramtype auth_provider_x509_cert_url: str - :keyword client_x509_cert_url: Client x509 certificate URL field of the API key (write only). - Required. - :paramtype client_x509_cert_url: str - """ - super().__init__(**kwargs) - self.authentication_type: str = "gcpCredentials" - self.organization_id = organization_id - self.type = type - self.project_id = project_id - self.private_key_id = private_key_id - self.private_key = private_key - self.client_email = client_email - self.client_id = client_id - self.auth_uri = auth_uri - self.token_uri = token_uri - self.auth_provider_x509_cert_url = auth_provider_x509_cert_url - self.client_x509_cert_url = client_x509_cert_url - - class GcpOrganizationalData(_serialization.Model): """The gcpOrganization data. @@ -10613,7 +11911,7 @@ class GcpOrganizationalDataOrganization(GcpOrganizationalData): def __init__( self, *, - excluded_project_numbers: Optional[List[str]] = None, + excluded_project_numbers: Optional[list[str]] = None, service_account_email_address: Optional[str] = None, workload_identity_provider_id: Optional[str] = None, **kwargs: Any @@ -10743,7 +12041,7 @@ class GetSensitivitySettingsListResponse(_serialization.Model): } def __init__( - self, *, value: Optional[List["_models.GetSensitivitySettingsResponse"]] = None, **kwargs: Any + self, *, value: Optional[list["_models.GetSensitivitySettingsResponse"]] = None, **kwargs: Any ) -> None: """ :keyword value: @@ -10823,7 +12121,7 @@ class GetSensitivitySettingsResponseProperties(_serialization.Model): def __init__( self, *, - sensitive_info_types_ids: Optional[List[str]] = None, + sensitive_info_types_ids: Optional[list[str]] = None, sensitivity_threshold_label_order: Optional[float] = None, sensitivity_threshold_label_id: Optional[str] = None, mip_information: Optional["_models.GetSensitivitySettingsResponsePropertiesMipInformation"] = None, @@ -10877,9 +12175,9 @@ def __init__( self, *, mip_integration_status: Optional[Union[str, "_models.MipIntegrationStatus"]] = None, - labels: Optional[List["_models.Label"]] = None, - custom_info_types: Optional[List["_models.InfoType"]] = None, - built_in_info_types: Optional[List["_models.BuiltInInfoType"]] = None, + labels: Optional[list["_models.Label"]] = None, + custom_info_types: Optional[list["_models.InfoType"]] = None, + built_in_info_types: Optional[list["_models.BuiltInInfoType"]] = None, **kwargs: Any ) -> None: """ @@ -10950,9 +12248,9 @@ class GitHubOwnerConfiguration(_serialization.Model): :ivar auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and "NotApplicable". :vartype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :ivar repository_configs: GitHub Repository Inventory Configuration. - Dictionary of GitHub repository name to desired repository configuration. - If AutoDiscovery is Enabled, this field should be null or empty. + :ivar repository_configs: GitHub Repository Inventory Configuration. Dictionary of GitHub + repository name to desired repository configuration. If AutoDiscovery is Enabled, this field + should be null or empty. :vartype repository_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] """ @@ -10965,16 +12263,16 @@ def __init__( self, *, auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, - repository_configs: Optional[Dict[str, "_models.BaseResourceConfiguration"]] = None, + repository_configs: Optional[dict[str, "_models.BaseResourceConfiguration"]] = None, **kwargs: Any ) -> None: """ :keyword auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and "NotApplicable". :paramtype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :keyword repository_configs: GitHub Repository Inventory Configuration. - Dictionary of GitHub repository name to desired repository configuration. - If AutoDiscovery is Enabled, this field should be null or empty. + :keyword repository_configs: GitHub Repository Inventory Configuration. Dictionary of GitHub + repository name to desired repository configuration. If AutoDiscovery is Enabled, this field + should be null or empty. :paramtype repository_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] """ super().__init__(**kwargs) @@ -10997,7 +12295,7 @@ class GitHubOwnerListResponse(_serialization.Model): } def __init__( - self, *, value: Optional[List["_models.GitHubOwner"]] = None, next_link: Optional[str] = None, **kwargs: Any + self, *, value: Optional[list["_models.GitHubOwner"]] = None, next_link: Optional[str] = None, **kwargs: Any ) -> None: """ :keyword value: Gets or sets list of resources. @@ -11146,7 +12444,7 @@ class GitHubRepositoryListResponse(_serialization.Model): def __init__( self, *, - value: Optional[List["_models.GitHubRepository"]] = None, + value: Optional[list["_models.GitHubRepository"]] = None, next_link: Optional[str] = None, **kwargs: Any ) -> None: @@ -11186,11 +12484,9 @@ class GitHubRepositoryProperties(_serialization.Model): This is a numeric id defined by Github. Eg: "123456". :vartype repo_id: str - :ivar repo_name: Gets or sets GitHub Repository name. - Eg: "new-repo-1". + :ivar repo_name: Gets or sets GitHub Repository name. Eg: "new-repo-1". :vartype repo_name: str - :ivar repo_full_name: Gets or sets GitHub Full Name. - Repository name, prefixed with Owner name. + :ivar repo_full_name: Gets or sets GitHub Full Name. Repository name, prefixed with Owner name. Eg: "my-org/new-repo-1". :vartype repo_full_name: str :ivar onboarding_state: Details about resource onboarding status across all connectors. @@ -11337,9 +12633,9 @@ class GitLabGroupConfiguration(_serialization.Model): :ivar auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and "NotApplicable". :vartype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :ivar project_configs: GitLab Project Inventory Configuration. - Dictionary of GitLab fully-qualified project name to desired project configuration. - If AutoDiscovery is Enabled, this field should be null or empty. + :ivar project_configs: GitLab Project Inventory Configuration. Dictionary of GitLab + fully-qualified project name to desired project configuration. If AutoDiscovery is Enabled, + this field should be null or empty. :vartype project_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] """ @@ -11352,16 +12648,16 @@ def __init__( self, *, auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, - project_configs: Optional[Dict[str, "_models.BaseResourceConfiguration"]] = None, + project_configs: Optional[dict[str, "_models.BaseResourceConfiguration"]] = None, **kwargs: Any ) -> None: """ :keyword auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and "NotApplicable". :paramtype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :keyword project_configs: GitLab Project Inventory Configuration. - Dictionary of GitLab fully-qualified project name to desired project configuration. - If AutoDiscovery is Enabled, this field should be null or empty. + :keyword project_configs: GitLab Project Inventory Configuration. Dictionary of GitLab + fully-qualified project name to desired project configuration. If AutoDiscovery is Enabled, + this field should be null or empty. :paramtype project_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] """ super().__init__(**kwargs) @@ -11384,7 +12680,7 @@ class GitLabGroupListResponse(_serialization.Model): } def __init__( - self, *, value: Optional[List["_models.GitLabGroup"]] = None, next_link: Optional[str] = None, **kwargs: Any + self, *, value: Optional[list["_models.GitLabGroup"]] = None, next_link: Optional[str] = None, **kwargs: Any ) -> None: """ :keyword value: Gets or sets list of resources. @@ -11543,7 +12839,7 @@ class GitLabProjectListResponse(_serialization.Model): } def __init__( - self, *, value: Optional[List["_models.GitLabProject"]] = None, next_link: Optional[str] = None, **kwargs: Any + self, *, value: Optional[list["_models.GitLabProject"]] = None, next_link: Optional[str] = None, **kwargs: Any ) -> None: """ :keyword value: Gets or sets list of resources. @@ -11835,7 +13131,7 @@ class GovernanceAssignmentsList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.GovernanceAssignment"]] = None + self.value: Optional[list["_models.GovernanceAssignment"]] = None self.next_link: Optional[str] = None @@ -11968,8 +13264,8 @@ def __init__( is_disabled: Optional[bool] = None, rule_type: Optional[Union[str, "_models.GovernanceRuleType"]] = None, source_resource_type: Optional[Union[str, "_models.GovernanceRuleSourceResourceType"]] = None, - excluded_scopes: Optional[List[str]] = None, - condition_sets: Optional[List[JSON]] = None, + excluded_scopes: Optional[list[str]] = None, + condition_sets: Optional[list[JSON]] = None, include_member_scopes: Optional[bool] = None, owner_source: Optional["_models.GovernanceRuleOwnerSource"] = None, governance_email_notification: Optional["_models.GovernanceRuleEmailNotification"] = None, @@ -12093,7 +13389,7 @@ class GovernanceRuleList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.GovernanceRule"]] = None + self.value: Optional[list["_models.GovernanceRule"]] = None self.next_link: Optional[str] = None @@ -12269,9 +13565,9 @@ def __init__( environment_details: Optional["_models.EnvironmentDetails"] = None, health_data_classification: Optional["_models.HealthDataClassification"] = None, status: Optional["_models.StatusAutoGenerated"] = None, - affected_defenders_plans: Optional[List[str]] = None, - affected_defenders_sub_plans: Optional[List[str]] = None, - issues: Optional[List["_models.Issue"]] = None, + affected_defenders_plans: Optional[list[str]] = None, + affected_defenders_sub_plans: Optional[list[str]] = None, + issues: Optional[list["_models.Issue"]] = None, **kwargs: Any ) -> None: """ @@ -12297,7 +13593,7 @@ def __init__( self.status = status self.affected_defenders_plans = affected_defenders_plans self.affected_defenders_sub_plans = affected_defenders_sub_plans - self.report_additional_data: Optional[Dict[str, str]] = None + self.report_additional_data: Optional[dict[str, str]] = None self.issues = issues @@ -12325,7 +13621,7 @@ class HealthReportsList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.HealthReport"]] = None + self.value: Optional[list["_models.HealthReport"]] = None self.next_link: Optional[str] = None @@ -12545,81 +13841,6 @@ def __init__( self.rule_type: str = "HttpD2CMessagesNotInAllowedRange" -class HybridComputeSettingsProperties(_serialization.Model): - """Settings for hybrid compute management. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar hybrid_compute_provisioning_state: State of the service principal and its secret. Known - values are: "Valid", "Invalid", and "Expired". - :vartype hybrid_compute_provisioning_state: str or - ~azure.mgmt.security.models.HybridComputeProvisioningState - :ivar auto_provision: Whether or not to automatically install Azure Arc (hybrid compute) agents - on machines. Required. Known values are: "On" and "Off". - :vartype auto_provision: str or ~azure.mgmt.security.models.AutoProvision - :ivar resource_group_name: The name of the resource group where Arc (Hybrid Compute) connectors - are connected. - :vartype resource_group_name: str - :ivar region: The location where the metadata of machines will be stored. - :vartype region: str - :ivar proxy_server: For a non-Azure machine that is not connected directly to the internet, - specify a proxy server that the non-Azure machine can use. - :vartype proxy_server: ~azure.mgmt.security.models.ProxyServerProperties - :ivar service_principal: An object to access resources that are secured by an Azure AD tenant. - :vartype service_principal: ~azure.mgmt.security.models.ServicePrincipalProperties - """ - - _validation = { - "hybrid_compute_provisioning_state": {"readonly": True}, - "auto_provision": {"required": True}, - } - - _attribute_map = { - "hybrid_compute_provisioning_state": {"key": "hybridComputeProvisioningState", "type": "str"}, - "auto_provision": {"key": "autoProvision", "type": "str"}, - "resource_group_name": {"key": "resourceGroupName", "type": "str"}, - "region": {"key": "region", "type": "str"}, - "proxy_server": {"key": "proxyServer", "type": "ProxyServerProperties"}, - "service_principal": {"key": "servicePrincipal", "type": "ServicePrincipalProperties"}, - } - - def __init__( - self, - *, - auto_provision: Union[str, "_models.AutoProvision"], - resource_group_name: Optional[str] = None, - region: Optional[str] = None, - proxy_server: Optional["_models.ProxyServerProperties"] = None, - service_principal: Optional["_models.ServicePrincipalProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword auto_provision: Whether or not to automatically install Azure Arc (hybrid compute) - agents on machines. Required. Known values are: "On" and "Off". - :paramtype auto_provision: str or ~azure.mgmt.security.models.AutoProvision - :keyword resource_group_name: The name of the resource group where Arc (Hybrid Compute) - connectors are connected. - :paramtype resource_group_name: str - :keyword region: The location where the metadata of machines will be stored. - :paramtype region: str - :keyword proxy_server: For a non-Azure machine that is not connected directly to the internet, - specify a proxy server that the non-Azure machine can use. - :paramtype proxy_server: ~azure.mgmt.security.models.ProxyServerProperties - :keyword service_principal: An object to access resources that are secured by an Azure AD - tenant. - :paramtype service_principal: ~azure.mgmt.security.models.ServicePrincipalProperties - """ - super().__init__(**kwargs) - self.hybrid_compute_provisioning_state: Optional[Union[str, "_models.HybridComputeProvisioningState"]] = None - self.auto_provision = auto_provision - self.resource_group_name = resource_group_name - self.region = region - self.proxy_server = proxy_server - self.service_principal = service_principal - - class Identity(_serialization.Model): """Identity for the resource. @@ -12743,8 +13964,8 @@ class InformationProtectionPolicy(Resource): def __init__( self, *, - labels: Optional[Dict[str, "_models.SensitivityLabel"]] = None, - information_types: Optional[Dict[str, "_models.InformationType"]] = None, + labels: Optional[dict[str, "_models.SensitivityLabel"]] = None, + information_types: Optional[dict[str, "_models.InformationType"]] = None, **kwargs: Any ) -> None: """ @@ -12780,7 +14001,7 @@ class InformationProtectionPolicyList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: Optional[List["_models.InformationProtectionPolicy"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.InformationProtectionPolicy"]] = None, **kwargs: Any) -> None: """ :keyword value: List of information protection policies. :paramtype value: list[~azure.mgmt.security.models.InformationProtectionPolicy] @@ -12829,7 +14050,7 @@ def __init__( recommended_label_id: Optional[str] = None, enabled: Optional[bool] = None, custom: Optional[bool] = None, - keywords: Optional[List["_models.InformationProtectionKeyword"]] = None, + keywords: Optional[list["_models.InformationProtectionKeyword"]] = None, **kwargs: Any ) -> None: """ @@ -12943,7 +14164,7 @@ class TagsResource(_serialization.Model): "tags": {"key": "tags", "type": "{str}"}, } - def __init__(self, *, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: + def __init__(self, *, tags: Optional[dict[str, str]] = None, **kwargs: Any) -> None: """ :keyword tags: Resource tags. :paramtype tags: dict[str, str] @@ -13038,7 +14259,7 @@ class IoTSecurityAggregatedAlert(Resource, TagsResource): }, } - def __init__(self, *, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: + def __init__(self, *, tags: Optional[dict[str, str]] = None, **kwargs: Any) -> None: """ :keyword tags: Resource tags. :paramtype tags: dict[str, str] @@ -13057,7 +14278,7 @@ def __init__(self, *, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> N self.system_source: Optional[str] = None self.action_taken: Optional[str] = None self.log_analytics_query: Optional[str] = None - self.top_devices_list: Optional[List["_models.IoTSecurityAggregatedAlertPropertiesTopDevicesListItem"]] = None + self.top_devices_list: Optional[list["_models.IoTSecurityAggregatedAlertPropertiesTopDevicesListItem"]] = None self.id: Optional[str] = None self.name: Optional[str] = None self.type: Optional[str] = None @@ -13087,7 +14308,7 @@ class IoTSecurityAggregatedAlertList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: List["_models.IoTSecurityAggregatedAlert"], **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.IoTSecurityAggregatedAlert"], **kwargs: Any) -> None: """ :keyword value: List of aggregated alerts data. Required. :paramtype value: list[~azure.mgmt.security.models.IoTSecurityAggregatedAlert] @@ -13199,7 +14420,7 @@ class IoTSecurityAggregatedRecommendation(Resource, TagsResource): } def __init__( - self, *, tags: Optional[Dict[str, str]] = None, recommendation_name: Optional[str] = None, **kwargs: Any + self, *, tags: Optional[dict[str, str]] = None, recommendation_name: Optional[str] = None, **kwargs: Any ) -> None: """ :keyword tags: Resource tags. @@ -13248,7 +14469,7 @@ class IoTSecurityAggregatedRecommendationList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: List["_models.IoTSecurityAggregatedRecommendation"], **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.IoTSecurityAggregatedRecommendation"], **kwargs: Any) -> None: """ :keyword value: List of aggregated recommendations data. Required. :paramtype value: list[~azure.mgmt.security.models.IoTSecurityAggregatedRecommendation] @@ -13417,9 +14638,9 @@ class IoTSecuritySolutionAnalyticsModel(Resource): def __init__( self, *, - top_alerted_devices: Optional[List["_models.IoTSecurityAlertedDevice"]] = None, - most_prevalent_device_alerts: Optional[List["_models.IoTSecurityDeviceAlert"]] = None, - most_prevalent_device_recommendations: Optional[List["_models.IoTSecurityDeviceRecommendation"]] = None, + top_alerted_devices: Optional[list["_models.IoTSecurityAlertedDevice"]] = None, + most_prevalent_device_alerts: Optional[list["_models.IoTSecurityDeviceAlert"]] = None, + most_prevalent_device_recommendations: Optional[list["_models.IoTSecurityDeviceRecommendation"]] = None, **kwargs: Any ) -> None: """ @@ -13437,7 +14658,7 @@ def __init__( self.metrics: Optional["_models.IoTSeverityMetrics"] = None self.unhealthy_device_count: Optional[int] = None self.devices_metrics: Optional[ - List["_models.IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem"] + list["_models.IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem"] ] = None self.top_alerted_devices = top_alerted_devices self.most_prevalent_device_alerts = most_prevalent_device_alerts @@ -13468,7 +14689,7 @@ class IoTSecuritySolutionAnalyticsModelList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: List["_models.IoTSecuritySolutionAnalyticsModel"], **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.IoTSecuritySolutionAnalyticsModel"], **kwargs: Any) -> None: """ :keyword value: List of Security analytics of your IoT Security solution. Required. :paramtype value: list[~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModel] @@ -13594,18 +14815,18 @@ class IoTSecuritySolutionModel(Resource, TagsResource): def __init__( self, *, - tags: Optional[Dict[str, str]] = None, + tags: Optional[dict[str, str]] = None, location: Optional[str] = None, workspace: Optional[str] = None, display_name: Optional[str] = None, status: Union[str, "_models.SecuritySolutionStatus"] = "Enabled", - export: Optional[List[Union[str, "_models.ExportData"]]] = None, - disabled_data_sources: Optional[List[Union[str, "_models.DataSource"]]] = None, - iot_hubs: Optional[List[str]] = None, + export: Optional[list[Union[str, "_models.ExportData"]]] = None, + disabled_data_sources: Optional[list[Union[str, "_models.DataSource"]]] = None, + iot_hubs: Optional[list[str]] = None, user_defined_resources: Optional["_models.UserDefinedResourcesProperties"] = None, - recommendations_configuration: Optional[List["_models.RecommendationConfigurationProperties"]] = None, + recommendations_configuration: Optional[list["_models.RecommendationConfigurationProperties"]] = None, unmasked_ip_logging_status: Union[str, "_models.UnmaskedIpLoggingStatus"] = "Disabled", - additional_workspaces: Optional[List["_models.AdditionalWorkspacesProperties"]] = None, + additional_workspaces: Optional[list["_models.AdditionalWorkspacesProperties"]] = None, **kwargs: Any ) -> None: """ @@ -13653,7 +14874,7 @@ def __init__( self.disabled_data_sources = disabled_data_sources self.iot_hubs = iot_hubs self.user_defined_resources = user_defined_resources - self.auto_discovered_resources: Optional[List[str]] = None + self.auto_discovered_resources: Optional[list[str]] = None self.recommendations_configuration = recommendations_configuration self.unmasked_ip_logging_status = unmasked_ip_logging_status self.additional_workspaces = additional_workspaces @@ -13685,7 +14906,7 @@ class IoTSecuritySolutionsList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: List["_models.IoTSecuritySolutionModel"], **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.IoTSecuritySolutionModel"], **kwargs: Any) -> None: """ :keyword value: List of IoT Security solutions. Required. :paramtype value: list[~azure.mgmt.security.models.IoTSecuritySolutionModel] @@ -13772,11 +14993,11 @@ def __init__( *, issue_key: str, issue_name: Optional[str] = None, - security_values: Optional[List[str]] = None, + security_values: Optional[list[str]] = None, issue_description: Optional[str] = None, remediation_steps: Optional[str] = None, remediation_script: Optional[str] = None, - issue_additional_data: Optional[Dict[str, str]] = None, + issue_additional_data: Optional[dict[str, str]] = None, **kwargs: Any ) -> None: """ @@ -13808,6 +15029,28 @@ def __init__( self.issue_additional_data = issue_additional_data +class IssueCreationRequest(_serialization.Model): + """The issue creation request model. + + :ivar security_assessment_resource_id: The security assessment resource id that the issue will + be opened based on. + :vartype security_assessment_resource_id: str + """ + + _attribute_map = { + "security_assessment_resource_id": {"key": "securityAssessmentResourceId", "type": "str"}, + } + + def __init__(self, *, security_assessment_resource_id: Optional[str] = None, **kwargs: Any) -> None: + """ + :keyword security_assessment_resource_id: The security assessment resource id that the issue + will be opened based on. + :paramtype security_assessment_resource_id: str + """ + super().__init__(**kwargs) + self.security_assessment_resource_id = security_assessment_resource_id + + class JFrogEnvironmentData(EnvironmentData): """The JFrog Artifactory connector environment data. @@ -13861,7 +15104,7 @@ class JitNetworkAccessPoliciesList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: Optional[List["_models.JitNetworkAccessPolicy"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.JitNetworkAccessPolicy"]] = None, **kwargs: Any) -> None: """ :keyword value: :paramtype value: list[~azure.mgmt.security.models.JitNetworkAccessPolicy] @@ -13921,9 +15164,9 @@ class JitNetworkAccessPolicy(Resource, Kind, Location): def __init__( self, *, - virtual_machines: List["_models.JitNetworkAccessPolicyVirtualMachine"], + virtual_machines: list["_models.JitNetworkAccessPolicyVirtualMachine"], kind: Optional[str] = None, - requests: Optional[List["_models.JitNetworkAccessRequest"]] = None, + requests: Optional[list["_models.JitNetworkAccessRequest"]] = None, **kwargs: Any ) -> None: """ @@ -14019,7 +15262,7 @@ class JitNetworkAccessPolicyInitiateRequest(_serialization.Model): def __init__( self, *, - virtual_machines: List["_models.JitNetworkAccessPolicyInitiateVirtualMachine"], + virtual_machines: list["_models.JitNetworkAccessPolicyInitiateVirtualMachine"], justification: Optional[str] = None, **kwargs: Any ) -> None: @@ -14060,7 +15303,7 @@ def __init__( self, *, id: str, # pylint: disable=redefined-builtin - ports: List["_models.JitNetworkAccessPolicyInitiatePort"], + ports: list["_models.JitNetworkAccessPolicyInitiatePort"], **kwargs: Any ) -> None: """ @@ -14103,7 +15346,7 @@ def __init__( self, *, id: str, # pylint: disable=redefined-builtin - ports: List["_models.JitNetworkAccessPortRule"], + ports: list["_models.JitNetworkAccessPortRule"], public_ip_address: Optional[str] = None, **kwargs: Any ) -> None: @@ -14163,7 +15406,7 @@ def __init__( protocol: Union[str, "_models.ProtocolEnum"], max_request_access_duration: str, allowed_source_address_prefix: Optional[str] = None, - allowed_source_address_prefixes: Optional[List[str]] = None, + allowed_source_address_prefixes: Optional[list[str]] = None, **kwargs: Any ) -> None: """ @@ -14222,7 +15465,7 @@ class JitNetworkAccessRequest(_serialization.Model): def __init__( self, *, - virtual_machines: List["_models.JitNetworkAccessRequestVirtualMachine"], + virtual_machines: list["_models.JitNetworkAccessRequestVirtualMachine"], start_time_utc: datetime.datetime, requestor: str, justification: Optional[str] = None, @@ -14296,7 +15539,7 @@ def __init__( status: Union[str, "_models.Status"], status_reason: Union[str, "_models.StatusReason"], allowed_source_address_prefix: Optional[str] = None, - allowed_source_address_prefixes: Optional[List[str]] = None, + allowed_source_address_prefixes: Optional[list[str]] = None, mapped_port: Optional[int] = None, **kwargs: Any ) -> None: @@ -14356,7 +15599,7 @@ def __init__( self, *, id: str, # pylint: disable=redefined-builtin - ports: List["_models.JitNetworkAccessRequestPort"], + ports: list["_models.JitNetworkAccessRequestPort"], **kwargs: Any ) -> None: """ @@ -14452,7 +15695,7 @@ class LocalUserNotAllowed(AllowlistCustomAlertRule): "allowlist_values": {"key": "allowlistValues", "type": "[str]"}, } - def __init__(self, *, is_enabled: bool, allowlist_values: List[str], **kwargs: Any) -> None: + def __init__(self, *, is_enabled: bool, allowlist_values: list[str], **kwargs: Any) -> None: """ :keyword is_enabled: Status of the custom alert. Required. :paramtype is_enabled: bool @@ -14546,12 +15789,15 @@ class MalwareScanningProperties(_serialization.Model): :ivar scan_results_event_grid_topic_resource_id: Optional. Resource id of an Event Grid Topic to send scan results to. :vartype scan_results_event_grid_topic_resource_id: str - :ivar blob_scan_results_options: Optional. Write scan result on blobIndexTags by default. Known - values are: "blobIndexTags" and "None". + :ivar blob_scan_results_options: Optional. Write scan result on BlobIndexTags by default. Known + values are: "BlobIndexTags" and "None". :vartype blob_scan_results_options: str or ~azure.mgmt.security.models.BlobScanResultsOptions + :ivar automated_response: Optional. Specifies the automated response action to take when + malware is detected. Known values are: "None" and "BlobSoftDelete". + :vartype automated_response: str or ~azure.mgmt.security.models.AutomatedResponseType :ivar operation_status: Upon failure or partial success. Additional data describing Malware Scanning enable/disable operation. - :vartype operation_status: ~azure.mgmt.security.models.OperationStatus + :vartype operation_status: ~azure.mgmt.security.models.OperationStatusAutoGenerated """ _validation = { @@ -14562,7 +15808,8 @@ class MalwareScanningProperties(_serialization.Model): "on_upload": {"key": "onUpload", "type": "OnUploadProperties"}, "scan_results_event_grid_topic_resource_id": {"key": "scanResultsEventGridTopicResourceId", "type": "str"}, "blob_scan_results_options": {"key": "blobScanResultsOptions", "type": "str"}, - "operation_status": {"key": "operationStatus", "type": "OperationStatus"}, + "automated_response": {"key": "automatedResponse", "type": "str"}, + "operation_status": {"key": "operationStatus", "type": "OperationStatusAutoGenerated"}, } def __init__( @@ -14570,7 +15817,8 @@ def __init__( *, on_upload: Optional["_models.OnUploadProperties"] = None, scan_results_event_grid_topic_resource_id: Optional[str] = None, - blob_scan_results_options: Optional[Union[str, "_models.BlobScanResultsOptions"]] = None, + blob_scan_results_options: Union[str, "_models.BlobScanResultsOptions"] = "BlobIndexTags", + automated_response: Union[str, "_models.AutomatedResponseType"] = "None", **kwargs: Any ) -> None: """ @@ -14579,15 +15827,19 @@ def __init__( :keyword scan_results_event_grid_topic_resource_id: Optional. Resource id of an Event Grid Topic to send scan results to. :paramtype scan_results_event_grid_topic_resource_id: str - :keyword blob_scan_results_options: Optional. Write scan result on blobIndexTags by default. - Known values are: "blobIndexTags" and "None". + :keyword blob_scan_results_options: Optional. Write scan result on BlobIndexTags by default. + Known values are: "BlobIndexTags" and "None". :paramtype blob_scan_results_options: str or ~azure.mgmt.security.models.BlobScanResultsOptions + :keyword automated_response: Optional. Specifies the automated response action to take when + malware is detected. Known values are: "None" and "BlobSoftDelete". + :paramtype automated_response: str or ~azure.mgmt.security.models.AutomatedResponseType """ super().__init__(**kwargs) self.on_upload = on_upload self.scan_results_event_grid_topic_resource_id = scan_results_event_grid_topic_resource_id self.blob_scan_results_options = blob_scan_results_options - self.operation_status: Optional["_models.OperationStatus"] = None + self.automated_response = automated_response + self.operation_status: Optional["_models.OperationStatusAutoGenerated"] = None class MalwareScanProperties(_serialization.Model): @@ -14717,7 +15969,7 @@ class MdeOnboardingDataList(_serialization.Model): "value": {"key": "value", "type": "[MdeOnboardingData]"}, } - def __init__(self, *, value: Optional[List["_models.MdeOnboardingData"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.MdeOnboardingData"]] = None, **kwargs: Any) -> None: """ :keyword value: List of the resources of the configuration or data needed to onboard the machine to MDE. @@ -14976,105 +16228,6 @@ def __init__(self, *, id: str, type: str, **kwargs: Any) -> None: # pylint: dis self.type = type -class NotificationsSource(_serialization.Model): - """A valid notification source type. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - NotificationsSourceAlert, NotificationsSourceAttackPath - - All required parameters must be populated in order to send to server. - - :ivar source_type: The source type that will trigger the notification. Required. Known values - are: "Alert" and "AttackPath". - :vartype source_type: str or ~azure.mgmt.security.models.SourceType - """ - - _validation = { - "source_type": {"required": True}, - } - - _attribute_map = { - "source_type": {"key": "sourceType", "type": "str"}, - } - - _subtype_map = {"source_type": {"Alert": "NotificationsSourceAlert", "AttackPath": "NotificationsSourceAttackPath"}} - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.source_type: Optional[str] = None - - -class NotificationsSourceAlert(NotificationsSource): - """Alert notification source. - - All required parameters must be populated in order to send to server. - - :ivar source_type: The source type that will trigger the notification. Required. Known values - are: "Alert" and "AttackPath". - :vartype source_type: str or ~azure.mgmt.security.models.SourceType - :ivar minimal_severity: Defines the minimal alert severity which will be sent as email - notifications. Known values are: "High", "Medium", and "Low". - :vartype minimal_severity: str or ~azure.mgmt.security.models.MinimalSeverity - """ - - _validation = { - "source_type": {"required": True}, - } - - _attribute_map = { - "source_type": {"key": "sourceType", "type": "str"}, - "minimal_severity": {"key": "minimalSeverity", "type": "str"}, - } - - def __init__( - self, *, minimal_severity: Optional[Union[str, "_models.MinimalSeverity"]] = None, **kwargs: Any - ) -> None: - """ - :keyword minimal_severity: Defines the minimal alert severity which will be sent as email - notifications. Known values are: "High", "Medium", and "Low". - :paramtype minimal_severity: str or ~azure.mgmt.security.models.MinimalSeverity - """ - super().__init__(**kwargs) - self.source_type: str = "Alert" - self.minimal_severity = minimal_severity - - -class NotificationsSourceAttackPath(NotificationsSource): - """Attack path notification source. - - All required parameters must be populated in order to send to server. - - :ivar source_type: The source type that will trigger the notification. Required. Known values - are: "Alert" and "AttackPath". - :vartype source_type: str or ~azure.mgmt.security.models.SourceType - :ivar minimal_risk_level: Defines the minimal attach path risk level which will be sent as - email notifications. Known values are: "Critical", "High", "Medium", and "Low". - :vartype minimal_risk_level: str or ~azure.mgmt.security.models.MinimalRiskLevel - """ - - _validation = { - "source_type": {"required": True}, - } - - _attribute_map = { - "source_type": {"key": "sourceType", "type": "str"}, - "minimal_risk_level": {"key": "minimalRiskLevel", "type": "str"}, - } - - def __init__( - self, *, minimal_risk_level: Optional[Union[str, "_models.MinimalRiskLevel"]] = None, **kwargs: Any - ) -> None: - """ - :keyword minimal_risk_level: Defines the minimal attach path risk level which will be sent as - email notifications. Known values are: "Critical", "High", "Medium", and "Low". - :paramtype minimal_risk_level: str or ~azure.mgmt.security.models.MinimalRiskLevel - """ - super().__init__(**kwargs) - self.source_type: str = "AttackPath" - self.minimal_risk_level = minimal_risk_level - - class OnPremiseResourceDetails(ResourceDetails): """Details of the On Premise resource that was assessed. @@ -15219,13 +16372,10 @@ class OnUploadFilters(_serialization.Model): performed between each filter type. :ivar exclude_blobs_with_prefix: Optional. A list of prefixes to exclude from on-upload malware - scanning. - Format: ``container-name/blob-name`` (start with the container name; do not include the storage - account name). - Exclude entire containers: Use prefix of container names you want to exclude without a trailing - ``/``. - Exclude a single container: Add a trailing slash ``/`` after the container name to avoid - excluding other containers with similar prefixes. + scanning. Format: ``container-name/blob-name`` (start with the container name; do not include + the storage account name). Exclude entire containers: Use prefix of container names you want to + exclude without a trailing ``/``. Exclude a single container: Add a trailing slash ``/`` after + the container name to avoid excluding other containers with similar prefixes. :vartype exclude_blobs_with_prefix: list[str] :ivar exclude_blobs_with_suffix: Optional. A list of suffixes to exclude from on-upload malware scanning. Suffixes match only the end of blob names, and should be used for file extensions or @@ -15246,20 +16396,17 @@ class OnUploadFilters(_serialization.Model): def __init__( self, *, - exclude_blobs_with_prefix: Optional[List[str]] = None, - exclude_blobs_with_suffix: Optional[List[str]] = None, + exclude_blobs_with_prefix: Optional[list[str]] = None, + exclude_blobs_with_suffix: Optional[list[str]] = None, exclude_blobs_larger_than: Optional[Any] = None, **kwargs: Any ) -> None: """ :keyword exclude_blobs_with_prefix: Optional. A list of prefixes to exclude from on-upload - malware scanning. - Format: ``container-name/blob-name`` (start with the container name; do not include the storage - account name). - Exclude entire containers: Use prefix of container names you want to exclude without a trailing - ``/``. - Exclude a single container: Add a trailing slash ``/`` after the container name to avoid - excluding other containers with similar prefixes. + malware scanning. Format: ``container-name/blob-name`` (start with the container name; do not + include the storage account name). Exclude entire containers: Use prefix of container names you + want to exclude without a trailing ``/``. Exclude a single container: Add a trailing slash + ``/`` after the container name to avoid excluding other containers with similar prefixes. :paramtype exclude_blobs_with_prefix: list[str] :keyword exclude_blobs_with_suffix: Optional. A list of suffixes to exclude from on-upload malware scanning. Suffixes match only the end of blob names, and should be used for file @@ -15436,7 +16583,7 @@ class OperationListResult(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.Operation"]] = None + self.value: Optional[list["_models.Operation"]] = None self.next_link: Optional[str] = None @@ -15465,6 +16612,34 @@ def __init__(self, **kwargs: Any) -> None: class OperationStatus(_serialization.Model): + """A status describing the success/failure of the extension's enablement/disablement operation. + + :ivar code: The operation status code. Known values are: "Succeeded" and "Failed". + :vartype code: str or ~azure.mgmt.security.models.Code + :ivar message: Additional information regarding the success/failure of the operation. + :vartype message: str + """ + + _attribute_map = { + "code": {"key": "code", "type": "str"}, + "message": {"key": "message", "type": "str"}, + } + + def __init__( + self, *, code: Optional[Union[str, "_models.Code"]] = None, message: Optional[str] = None, **kwargs: Any + ) -> None: + """ + :keyword code: The operation status code. Known values are: "Succeeded" and "Failed". + :paramtype code: str or ~azure.mgmt.security.models.Code + :keyword message: Additional information regarding the success/failure of the operation. + :paramtype message: str + """ + super().__init__(**kwargs) + self.code = code + self.message = message + + +class OperationStatusAutoGenerated(_serialization.Model): """A status describing the success/failure of the enablement/disablement operation. :ivar code: The operation status code. @@ -15490,41 +16665,99 @@ def __init__(self, *, code: Optional[str] = None, message: Optional[str] = None, self.message = message -class OperationStatusAutoGenerated(_serialization.Model): - """A status describing the success/failure of the extension's enablement/disablement operation. +class OperationStatusResult(_serialization.Model): + """The current status of an async operation. - :ivar code: The operation status code. Known values are: "Succeeded" and "Failed". - :vartype code: str or ~azure.mgmt.security.models.Code - :ivar message: Additional information regarding the success/failure of the operation. - :vartype message: str + All required parameters must be populated in order to send to server. + + :ivar id: Fully qualified ID for the async operation. + :vartype id: str + :ivar name: Name of the async operation. + :vartype name: str + :ivar status: Operation status. Required. + :vartype status: str + :ivar percent_complete: Percent of the operation that is complete. + :vartype percent_complete: float + :ivar start_time: The start time of the operation. + :vartype start_time: ~datetime.datetime + :ivar end_time: The end time of the operation. + :vartype end_time: ~datetime.datetime + :ivar operations: The operations list. + :vartype operations: list[~azure.mgmt.security.models.OperationStatusResult] + :ivar error: If present, details of the operation error. + :vartype error: ~azure.mgmt.security.models.ErrorDetailAutoGenerated """ + _validation = { + "status": {"required": True}, + "percent_complete": {"maximum": 100, "minimum": 0}, + } + _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, + "id": {"key": "id", "type": "str"}, + "name": {"key": "name", "type": "str"}, + "status": {"key": "status", "type": "str"}, + "percent_complete": {"key": "percentComplete", "type": "float"}, + "start_time": {"key": "startTime", "type": "iso-8601"}, + "end_time": {"key": "endTime", "type": "iso-8601"}, + "operations": {"key": "operations", "type": "[OperationStatusResult]"}, + "error": {"key": "error", "type": "ErrorDetailAutoGenerated"}, } def __init__( - self, *, code: Optional[Union[str, "_models.Code"]] = None, message: Optional[str] = None, **kwargs: Any + self, + *, + status: str, + id: Optional[str] = None, # pylint: disable=redefined-builtin + name: Optional[str] = None, + percent_complete: Optional[float] = None, + start_time: Optional[datetime.datetime] = None, + end_time: Optional[datetime.datetime] = None, + operations: Optional[list["_models.OperationStatusResult"]] = None, + error: Optional["_models.ErrorDetailAutoGenerated"] = None, + **kwargs: Any ) -> None: """ - :keyword code: The operation status code. Known values are: "Succeeded" and "Failed". - :paramtype code: str or ~azure.mgmt.security.models.Code - :keyword message: Additional information regarding the success/failure of the operation. - :paramtype message: str + :keyword id: Fully qualified ID for the async operation. + :paramtype id: str + :keyword name: Name of the async operation. + :paramtype name: str + :keyword status: Operation status. Required. + :paramtype status: str + :keyword percent_complete: Percent of the operation that is complete. + :paramtype percent_complete: float + :keyword start_time: The start time of the operation. + :paramtype start_time: ~datetime.datetime + :keyword end_time: The end time of the operation. + :paramtype end_time: ~datetime.datetime + :keyword operations: The operations list. + :paramtype operations: list[~azure.mgmt.security.models.OperationStatusResult] + :keyword error: If present, details of the operation error. + :paramtype error: ~azure.mgmt.security.models.ErrorDetailAutoGenerated """ super().__init__(**kwargs) - self.code = code - self.message = message + self.id = id + self.name = name + self.status = status + self.percent_complete = percent_complete + self.start_time = start_time + self.end_time = end_time + self.operations = operations + self.error = error -class OperationStatusResult(_serialization.Model): +class OperationStatusResultAutoGenerated(_serialization.Model): """The current status of an async operation. + Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to server. :ivar id: Fully qualified ID for the async operation. :vartype id: str + :ivar resource_id: Fully qualified ID of the resource against which the original async + operation was started. + :vartype resource_id: str :ivar name: Name of the async operation. :vartype name: str :ivar status: Operation status. Required. @@ -15536,24 +16769,26 @@ class OperationStatusResult(_serialization.Model): :ivar end_time: The end time of the operation. :vartype end_time: ~datetime.datetime :ivar operations: The operations list. - :vartype operations: list[~azure.mgmt.security.models.OperationStatusResult] + :vartype operations: list[~azure.mgmt.security.models.OperationStatusResultAutoGenerated] :ivar error: If present, details of the operation error. :vartype error: ~azure.mgmt.security.models.ErrorDetailAutoGenerated2 """ _validation = { + "resource_id": {"readonly": True}, "status": {"required": True}, "percent_complete": {"maximum": 100, "minimum": 0}, } _attribute_map = { "id": {"key": "id", "type": "str"}, + "resource_id": {"key": "resourceId", "type": "str"}, "name": {"key": "name", "type": "str"}, "status": {"key": "status", "type": "str"}, "percent_complete": {"key": "percentComplete", "type": "float"}, "start_time": {"key": "startTime", "type": "iso-8601"}, "end_time": {"key": "endTime", "type": "iso-8601"}, - "operations": {"key": "operations", "type": "[OperationStatusResult]"}, + "operations": {"key": "operations", "type": "[OperationStatusResultAutoGenerated]"}, "error": {"key": "error", "type": "ErrorDetailAutoGenerated2"}, } @@ -15566,7 +16801,7 @@ def __init__( percent_complete: Optional[float] = None, start_time: Optional[datetime.datetime] = None, end_time: Optional[datetime.datetime] = None, - operations: Optional[List["_models.OperationStatusResult"]] = None, + operations: Optional[list["_models.OperationStatusResultAutoGenerated"]] = None, error: Optional["_models.ErrorDetailAutoGenerated2"] = None, **kwargs: Any ) -> None: @@ -15584,12 +16819,13 @@ def __init__( :keyword end_time: The end time of the operation. :paramtype end_time: ~datetime.datetime :keyword operations: The operations list. - :paramtype operations: list[~azure.mgmt.security.models.OperationStatusResult] + :paramtype operations: list[~azure.mgmt.security.models.OperationStatusResultAutoGenerated] :keyword error: If present, details of the operation error. :paramtype error: ~azure.mgmt.security.models.ErrorDetailAutoGenerated2 """ super().__init__(**kwargs) self.id = id + self.resource_id: Optional[str] = None self.name = name self.status = status self.percent_complete = percent_complete @@ -15648,8 +16884,8 @@ def __init__( self, *, id: str, # pylint: disable=redefined-builtin - nodes: List["_models.NodeIdentifier"], - edges: List["_models.EdgeIdentifiers"], + nodes: list["_models.NodeIdentifier"], + edges: list["_models.EdgeIdentifiers"], **kwargs: Any ) -> None: """ @@ -15765,7 +17001,7 @@ def __init__( pricing_tier: Optional[Union[str, "_models.PricingTier"]] = None, sub_plan: Optional[str] = None, enforce: Optional[Union[str, "_models.Enforce"]] = None, - extensions: Optional[List["_models.Extension"]] = None, + extensions: Optional[list["_models.Extension"]] = None, **kwargs: Any ) -> None: """ @@ -15799,7 +17035,7 @@ def __init__( self.resources_coverage_status: Optional[Union[str, "_models.ResourcesCoverageStatus"]] = None self.extensions = extensions self.deprecated: Optional[bool] = None - self.replaced_by: Optional[List[str]] = None + self.replaced_by: Optional[list[str]] = None class PricingList(_serialization.Model): @@ -15819,7 +17055,7 @@ class PricingList(_serialization.Model): "value": {"key": "value", "type": "[Pricing]"}, } - def __init__(self, *, value: List["_models.Pricing"], **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.Pricing"], **kwargs: Any) -> None: """ :keyword value: List of pricing configurations. Required. :paramtype value: list[~azure.mgmt.security.models.Pricing] @@ -15851,7 +17087,7 @@ def __init__(self, **kwargs: Any) -> None: self.id: Optional[str] = None -class PrivateEndpointConnection(ResourceAutoGenerated): +class PrivateEndpointConnection(ResourceAutoGenerated2): """The private endpoint connection resource. Variables are only populated by the server, and will be ignored when sending a request. @@ -15920,7 +17156,7 @@ def __init__( ~azure.mgmt.security.models.PrivateLinkServiceConnectionState """ super().__init__(**kwargs) - self.group_ids: Optional[List[str]] = None + self.group_ids: Optional[list[str]] = None self.private_endpoint = private_endpoint self.private_link_service_connection_state = private_link_service_connection_state self.provisioning_state: Optional[Union[str, "_models.PrivateEndpointConnectionProvisioningState"]] = None @@ -15946,7 +17182,7 @@ class PrivateEndpointConnectionListResult(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: Optional[List["_models.PrivateEndpointConnection"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.PrivateEndpointConnection"]] = None, **kwargs: Any) -> None: """ :keyword value: Array of private endpoint connections. :paramtype value: list[~azure.mgmt.security.models.PrivateEndpointConnection] @@ -15989,7 +17225,7 @@ def __init__(self, *, private_link_name: str, **kwargs: Any) -> None: self.private_link_name = private_link_name -class ResourceAutoGenerated2(_serialization.Model): +class ResourceAutoGenerated3(_serialization.Model): """Common fields that are returned in the response for all Azure Resource Manager resources. Variables are only populated by the server, and will be ignored when sending a request. @@ -16030,7 +17266,7 @@ def __init__(self, **kwargs: Any) -> None: self.system_data: Optional["_models.SystemData"] = None -class TrackedResourceAutoGenerated(ResourceAutoGenerated2): +class TrackedResourceAutoGenerated(ResourceAutoGenerated3): """The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location'. @@ -16072,7 +17308,7 @@ class TrackedResourceAutoGenerated(ResourceAutoGenerated2): "location": {"key": "location", "type": "str"}, } - def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: + def __init__(self, *, location: str, tags: Optional[dict[str, str]] = None, **kwargs: Any) -> None: """ :keyword tags: Resource tags. :paramtype tags: dict[str, str] @@ -16121,6 +17357,9 @@ class PrivateLinkResource(TrackedResourceAutoGenerated): endpoints. :vartype private_link_resources: list[~azure.mgmt.security.models.PrivateLinkResourceAutoGenerated] + :ivar public_network_access: This determines if traffic is allowed over public network. By + default it is disabled. Known values are: "Enabled" and "Disabled". + :vartype public_network_access: str or ~azure.mgmt.security.models.PublicNetworkAccess """ _validation = { @@ -16150,22 +17389,34 @@ class PrivateLinkResource(TrackedResourceAutoGenerated): "key": "properties.privateLinkResources", "type": "[PrivateLinkResourceAutoGenerated]", }, + "public_network_access": {"key": "properties.publicNetworkAccess", "type": "str"}, } - def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: + def __init__( + self, + *, + location: str, + tags: Optional[dict[str, str]] = None, + public_network_access: Union[str, "_models.PublicNetworkAccess"] = "Disabled", + **kwargs: Any + ) -> None: """ :keyword tags: Resource tags. :paramtype tags: dict[str, str] :keyword location: The geo-location where the resource lives. Required. :paramtype location: str + :keyword public_network_access: This determines if traffic is allowed over public network. By + default it is disabled. Known values are: "Enabled" and "Disabled". + :paramtype public_network_access: str or ~azure.mgmt.security.models.PublicNetworkAccess """ super().__init__(tags=tags, location=location, **kwargs) self.provisioning_state: Optional[Union[str, "_models.ProvisioningState"]] = None - self.private_endpoint_connections: Optional[List["_models.PrivateEndpointConnection"]] = None - self.private_link_resources: Optional[List["_models.PrivateLinkResourceAutoGenerated"]] = None + self.private_endpoint_connections: Optional[list["_models.PrivateEndpointConnection"]] = None + self.private_link_resources: Optional[list["_models.PrivateLinkResourceAutoGenerated"]] = None + self.public_network_access = public_network_access -class PrivateLinkResourceAutoGenerated(ResourceAutoGenerated): +class PrivateLinkResourceAutoGenerated(ResourceAutoGenerated2): """A private link resource. Variables are only populated by the server, and will be ignored when sending a request. @@ -16208,14 +17459,14 @@ class PrivateLinkResourceAutoGenerated(ResourceAutoGenerated): "required_zone_names": {"key": "properties.requiredZoneNames", "type": "[str]"}, } - def __init__(self, *, required_zone_names: Optional[List[str]] = None, **kwargs: Any) -> None: + def __init__(self, *, required_zone_names: Optional[list[str]] = None, **kwargs: Any) -> None: """ :keyword required_zone_names: The private link resource private link DNS zone name. :paramtype required_zone_names: list[str] """ super().__init__(**kwargs) self.group_id: Optional[str] = None - self.required_members: Optional[List[str]] = None + self.required_members: Optional[list[str]] = None self.required_zone_names = required_zone_names @@ -16240,7 +17491,7 @@ class PrivateLinkResourceListResult(_serialization.Model): } def __init__( - self, *, value: Optional[List["_models.PrivateLinkResourceAutoGenerated"]] = None, **kwargs: Any + self, *, value: Optional[list["_models.PrivateLinkResourceAutoGenerated"]] = None, **kwargs: Any ) -> None: """ :keyword value: Array of private link resources. @@ -16323,7 +17574,7 @@ class PrivateLinksList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.PrivateLinkResource"]] = None + self.value: Optional[list["_models.PrivateLinkResource"]] = None self.next_link: Optional[str] = None @@ -16339,7 +17590,7 @@ class PrivateLinkUpdate(_serialization.Model): "tags": {"key": "tags", "type": "{str}"}, } - def __init__(self, *, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: + def __init__(self, *, tags: Optional[dict[str, str]] = None, **kwargs: Any) -> None: """ :keyword tags: Resource tags. :paramtype tags: dict[str, str] @@ -16389,7 +17640,7 @@ class ProcessNotAllowed(AllowlistCustomAlertRule): "allowlist_values": {"key": "allowlistValues", "type": "[str]"}, } - def __init__(self, *, is_enabled: bool, allowlist_values: List[str], **kwargs: Any) -> None: + def __init__(self, *, is_enabled: bool, allowlist_values: list[str], **kwargs: Any) -> None: """ :keyword is_enabled: Status of the custom alert. Required. :paramtype is_enabled: bool @@ -16401,33 +17652,6 @@ def __init__(self, *, is_enabled: bool, allowlist_values: List[str], **kwargs: A self.rule_type: str = "ProcessNotAllowed" -class ProxyServerProperties(_serialization.Model): - """For a non-Azure machine that is not connected directly to the internet, specify a proxy server - that the non-Azure machine can use. - - :ivar ip: Proxy server IP. - :vartype ip: str - :ivar port: Proxy server port. - :vartype port: str - """ - - _attribute_map = { - "ip": {"key": "ip", "type": "str"}, - "port": {"key": "port", "type": "str"}, - } - - def __init__(self, *, ip: Optional[str] = None, port: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword ip: Proxy server IP. - :paramtype ip: str - :keyword port: Proxy server port. - :paramtype port: str - """ - super().__init__(**kwargs) - self.ip = ip - self.port = port - - class QueryCheck(_serialization.Model): """The rule query details. @@ -16449,8 +17673,8 @@ def __init__( self, *, query: Optional[str] = None, - expected_result: Optional[List[List[str]]] = None, - column_names: Optional[List[str]] = None, + expected_result: Optional[list[list[str]]] = None, + column_names: Optional[list[str]] = None, **kwargs: Any ) -> None: """ @@ -16698,7 +17922,7 @@ class RegulatoryComplianceAssessmentList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: List["_models.RegulatoryComplianceAssessment"], **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.RegulatoryComplianceAssessment"], **kwargs: Any) -> None: """ :keyword value: Required. :paramtype value: list[~azure.mgmt.security.models.RegulatoryComplianceAssessment] @@ -16793,7 +18017,7 @@ class RegulatoryComplianceControlList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: List["_models.RegulatoryComplianceControl"], **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.RegulatoryComplianceControl"], **kwargs: Any) -> None: """ :keyword value: List of regulatory compliance controls. Required. :paramtype value: list[~azure.mgmt.security.models.RegulatoryComplianceControl] @@ -16889,7 +18113,7 @@ class RegulatoryComplianceStandardList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: List["_models.RegulatoryComplianceStandard"], **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.RegulatoryComplianceStandard"], **kwargs: Any) -> None: """ :keyword value: Required. :paramtype value: list[~azure.mgmt.security.models.RegulatoryComplianceStandard] @@ -16923,7 +18147,7 @@ def __init__( self, *, description: Optional[str] = None, - scripts: Optional[List[str]] = None, + scripts: Optional[list[str]] = None, automated: Optional[bool] = None, portal_link: Optional[str] = None, **kwargs: Any @@ -17057,8 +18281,8 @@ class RuleResultsInput(_serialization.Model): :ivar latest_scan: Take results from latest scan. :vartype latest_scan: bool - :ivar results: Expected results to be inserted into the baseline. - Leave this field empty it LatestScan == true. + :ivar results: Expected results to be inserted into the baseline. Leave this field empty if + latestScan == true. :vartype results: list[list[str]] """ @@ -17068,13 +18292,13 @@ class RuleResultsInput(_serialization.Model): } def __init__( - self, *, latest_scan: Optional[bool] = None, results: Optional[List[List[str]]] = None, **kwargs: Any + self, *, latest_scan: Optional[bool] = None, results: Optional[list[list[str]]] = None, **kwargs: Any ) -> None: """ :keyword latest_scan: Take results from latest scan. :paramtype latest_scan: bool - :keyword results: Expected results to be inserted into the baseline. - Leave this field empty it LatestScan == true. + :keyword results: Expected results to be inserted into the baseline. Leave this field empty if + latestScan == true. :paramtype results: list[list[str]] """ super().__init__(**kwargs) @@ -17087,19 +18311,27 @@ class RuleResultsProperties(_serialization.Model): :ivar results: Expected results in the baseline. :vartype results: list[list[str]] + :ivar latest_scan: Take results from latest scan. + :vartype latest_scan: bool """ _attribute_map = { "results": {"key": "results", "type": "[[str]]"}, + "latest_scan": {"key": "latestScan", "type": "bool"}, } - def __init__(self, *, results: Optional[List[List[str]]] = None, **kwargs: Any) -> None: + def __init__( + self, *, results: Optional[list[list[str]]] = None, latest_scan: Optional[bool] = None, **kwargs: Any + ) -> None: """ :keyword results: Expected results in the baseline. :paramtype results: list[list[str]] + :keyword latest_scan: Take results from latest scan. + :paramtype latest_scan: bool """ super().__init__(**kwargs) self.results = results + self.latest_scan = latest_scan class RulesResults(_serialization.Model): @@ -17113,7 +18345,7 @@ class RulesResults(_serialization.Model): "value": {"key": "value", "type": "[RuleResults]"}, } - def __init__(self, *, value: Optional[List["_models.RuleResults"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.RuleResults"]] = None, **kwargs: Any) -> None: """ :keyword value: List of rule results. :paramtype value: list[~azure.mgmt.security.models.RuleResults] @@ -17127,8 +18359,8 @@ class RulesResultsInput(_serialization.Model): :ivar latest_scan: Take results from latest scan. :vartype latest_scan: bool - :ivar results: Expected results to be inserted into the baseline. - Leave this field empty it LatestScan == true. + :ivar results: Expected results to be inserted into the baseline. Leave this field empty if + latestScan == true. :vartype results: dict[str, list[list[str]]] """ @@ -17138,13 +18370,13 @@ class RulesResultsInput(_serialization.Model): } def __init__( - self, *, latest_scan: Optional[bool] = None, results: Optional[Dict[str, List[List[str]]]] = None, **kwargs: Any + self, *, latest_scan: Optional[bool] = None, results: Optional[dict[str, list[list[str]]]] = None, **kwargs: Any ) -> None: """ :keyword latest_scan: Take results from latest scan. :paramtype latest_scan: bool - :keyword results: Expected results to be inserted into the baseline. - Leave this field empty it LatestScan == true. + :keyword results: Expected results to be inserted into the baseline. Leave this field empty if + latestScan == true. :paramtype results: dict[str, list[list[str]]] """ super().__init__(**kwargs) @@ -17152,44 +18384,7 @@ def __init__( self.results = results -class Scan(Resource): - """A vulnerability assessment scan record. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: A vulnerability assessment scan record properties. - :vartype properties: ~azure.mgmt.security.models.ScanProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "ScanProperties"}, - } - - def __init__(self, *, properties: Optional["_models.ScanProperties"] = None, **kwargs: Any) -> None: - """ - :keyword properties: A vulnerability assessment scan record properties. - :paramtype properties: ~azure.mgmt.security.models.ScanProperties - """ - super().__init__(**kwargs) - self.properties = properties - - -class ScanProperties(_serialization.Model): +class ScanPropertiesV2(_serialization.Model): """A vulnerability assessment scan record properties. :ivar trigger_type: The scan trigger type. Known values are: "OnDemand" and "Recurring". @@ -17356,10 +18551,10 @@ class ScanResultProperties(_serialization.Model): :ivar rule_id: The rule Id. :vartype rule_id: str - :ivar status: The rule result status. Known values are: "NonFinding", "Finding", and - "InternalError". + :ivar status: The rule result status. Known values are: "NonFinding", "Finding", + "InternalError", and "NotApplicable". :vartype status: str or ~azure.mgmt.security.models.RuleStatus - :ivar is_trimmed: Indicated whether the results specified here are trimmed. + :ivar is_trimmed: Indicates whether the results specified here are trimmed. :vartype is_trimmed: bool :ivar query_results: The results of the query that was run. :vartype query_results: list[list[str]] @@ -17387,7 +18582,7 @@ def __init__( rule_id: Optional[str] = None, status: Optional[Union[str, "_models.RuleStatus"]] = None, is_trimmed: Optional[bool] = None, - query_results: Optional[List[List[str]]] = None, + query_results: Optional[list[list[str]]] = None, remediation: Optional["_models.Remediation"] = None, baseline_adjusted_result: Optional["_models.BaselineAdjustedResult"] = None, rule_metadata: Optional["_models.VaRule"] = None, @@ -17396,10 +18591,10 @@ def __init__( """ :keyword rule_id: The rule Id. :paramtype rule_id: str - :keyword status: The rule result status. Known values are: "NonFinding", "Finding", and - "InternalError". + :keyword status: The rule result status. Known values are: "NonFinding", "Finding", + "InternalError", and "NotApplicable". :paramtype status: str or ~azure.mgmt.security.models.RuleStatus - :keyword is_trimmed: Indicated whether the results specified here are trimmed. + :keyword is_trimmed: Indicates whether the results specified here are trimmed. :paramtype is_trimmed: bool :keyword query_results: The results of the query that was run. :paramtype query_results: list[list[str]] @@ -17431,7 +18626,7 @@ class ScanResults(_serialization.Model): "value": {"key": "value", "type": "[ScanResult]"}, } - def __init__(self, *, value: Optional[List["_models.ScanResult"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.ScanResult"]] = None, **kwargs: Any) -> None: """ :keyword value: List of vulnerability assessment scan results. :paramtype value: list[~azure.mgmt.security.models.ScanResult] @@ -17440,31 +18635,13 @@ def __init__(self, *, value: Optional[List["_models.ScanResult"]] = None, **kwar self.value = value -class Scans(_serialization.Model): - """A list of vulnerability assessment scan records. - - :ivar value: List of vulnerability assessment scan records. - :vartype value: list[~azure.mgmt.security.models.Scan] - """ - - _attribute_map = { - "value": {"key": "value", "type": "[Scan]"}, - } - - def __init__(self, *, value: Optional[List["_models.Scan"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of vulnerability assessment scan records. - :paramtype value: list[~azure.mgmt.security.models.Scan] - """ - super().__init__(**kwargs) - self.value = value - - class ScanSummary(_serialization.Model): """A summary of the scan results. :ivar blobs: A summary of the scan results of the blobs that were scanned. :vartype blobs: ~azure.mgmt.security.models.BlobsScanSummary + :ivar files: A summary of the scan results of the files that were scanned. + :vartype files: ~azure.mgmt.security.models.FilesScanSummary :ivar estimated_scan_cost_usd: The estimated cost of the scan. Only available for a scan which has terminated. :vartype estimated_scan_cost_usd: float @@ -17472,6 +18649,7 @@ class ScanSummary(_serialization.Model): _attribute_map = { "blobs": {"key": "blobs", "type": "BlobsScanSummary"}, + "files": {"key": "files", "type": "FilesScanSummary"}, "estimated_scan_cost_usd": {"key": "estimatedScanCostUSD", "type": "float"}, } @@ -17479,21 +18657,82 @@ def __init__( self, *, blobs: Optional["_models.BlobsScanSummary"] = None, + files: Optional["_models.FilesScanSummary"] = None, estimated_scan_cost_usd: Optional[float] = None, **kwargs: Any ) -> None: """ :keyword blobs: A summary of the scan results of the blobs that were scanned. :paramtype blobs: ~azure.mgmt.security.models.BlobsScanSummary + :keyword files: A summary of the scan results of the files that were scanned. + :paramtype files: ~azure.mgmt.security.models.FilesScanSummary :keyword estimated_scan_cost_usd: The estimated cost of the scan. Only available for a scan which has terminated. :paramtype estimated_scan_cost_usd: float """ super().__init__(**kwargs) self.blobs = blobs + self.files = files self.estimated_scan_cost_usd = estimated_scan_cost_usd +class ScansV2(_serialization.Model): + """A list of vulnerability assessment scan records. + + :ivar value: List of vulnerability assessment scan records. + :vartype value: list[~azure.mgmt.security.models.ScanV2] + """ + + _attribute_map = { + "value": {"key": "value", "type": "[ScanV2]"}, + } + + def __init__(self, *, value: Optional[list["_models.ScanV2"]] = None, **kwargs: Any) -> None: + """ + :keyword value: List of vulnerability assessment scan records. + :paramtype value: list[~azure.mgmt.security.models.ScanV2] + """ + super().__init__(**kwargs) + self.value = value + + +class ScanV2(Resource): + """A vulnerability assessment scan record. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar id: Resource Id. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :ivar properties: A vulnerability assessment scan record properties. + :vartype properties: ~azure.mgmt.security.models.ScanPropertiesV2 + """ + + _validation = { + "id": {"readonly": True}, + "name": {"readonly": True}, + "type": {"readonly": True}, + } + + _attribute_map = { + "id": {"key": "id", "type": "str"}, + "name": {"key": "name", "type": "str"}, + "type": {"key": "type", "type": "str"}, + "properties": {"key": "properties", "type": "ScanPropertiesV2"}, + } + + def __init__(self, *, properties: Optional["_models.ScanPropertiesV2"] = None, **kwargs: Any) -> None: + """ + :keyword properties: A vulnerability assessment scan record properties. + :paramtype properties: ~azure.mgmt.security.models.ScanPropertiesV2 + """ + super().__init__(**kwargs) + self.properties = properties + + class ScopeElement(_serialization.Model): """A more specific scope used to identify the alerts to suppress. @@ -17510,7 +18749,7 @@ class ScopeElement(_serialization.Model): } def __init__( - self, *, additional_properties: Optional[Dict[str, Any]] = None, field: Optional[str] = None, **kwargs: Any + self, *, additional_properties: Optional[dict[str, Any]] = None, field: Optional[str] = None, **kwargs: Any ) -> None: """ :keyword additional_properties: Unmatched properties from the message are deserialized to this @@ -17577,7 +18816,7 @@ def __init__(self, **kwargs: Any) -> None: self.description: Optional[str] = None self.max_score: Optional[int] = None self.source: Optional["_models.SecureScoreControlDefinitionSource"] = None - self.assessment_definitions: Optional[List["_models.AzureResourceLink"]] = None + self.assessment_definitions: Optional[list["_models.AzureResourceLink"]] = None class SecureScoreControlDefinitionList(_serialization.Model): @@ -17604,7 +18843,7 @@ class SecureScoreControlDefinitionList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.SecureScoreControlDefinitionItem"]] = None + self.value: Optional[list["_models.SecureScoreControlDefinitionItem"]] = None self.next_link: Optional[str] = None @@ -17735,7 +18974,7 @@ class SecureScoreControlList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.SecureScoreControlDetails"]] = None + self.value: Optional[list["_models.SecureScoreControlDetails"]] = None self.next_link: Optional[str] = None @@ -17855,7 +19094,7 @@ class SecureScoresList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.SecureScoreItem"]] = None + self.value: Optional[list["_models.SecureScoreItem"]] = None self.next_link: Optional[str] = None @@ -17915,7 +19154,7 @@ def __init__( *, risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, resource_details: Optional["_models.ResourceDetails"] = None, - additional_data: Optional[Dict[str, str]] = None, + additional_data: Optional[dict[str, str]] = None, metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, status: Optional["_models.AssessmentStatus"] = None, @@ -17970,7 +19209,7 @@ class SecurityAssessmentList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.SecurityAssessmentResponse"]] = None + self.value: Optional[list["_models.SecurityAssessmentResponse"]] = None self.next_link: Optional[str] = None @@ -18011,9 +19250,9 @@ class SecurityAssessmentMetadata(Resource): :ivar preview: True if this assessment is in preview release status. :vartype preview: bool :ivar assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, - Custom if the assessment based on custom Azure Policy definition. Known values are: "BuiltIn", - "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", "ManualBuiltInPolicy", - "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". + Custom if the assessment based on custom Azure Policy definition. Known values are: "Unknown", + "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", + "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". :vartype assessment_type: str or ~azure.mgmt.security.models.AssessmentType :ivar partner_data: Describes the partner that created the assessment. :vartype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData @@ -18050,11 +19289,11 @@ def __init__( display_name: Optional[str] = None, description: Optional[str] = None, remediation_description: Optional[str] = None, - categories: Optional[List[Union[str, "_models.Categories"]]] = None, + categories: Optional[list[Union[str, "_models.Categories"]]] = None, severity: Optional[Union[str, "_models.Severity"]] = None, user_impact: Optional[Union[str, "_models.UserImpact"]] = None, implementation_effort: Optional[Union[str, "_models.ImplementationEffort"]] = None, - threats: Optional[List[Union[str, "_models.Threats"]]] = None, + threats: Optional[list[Union[str, "_models.Threats"]]] = None, preview: Optional[bool] = None, assessment_type: Optional[Union[str, "_models.AssessmentType"]] = None, partner_data: Optional["_models.SecurityAssessmentMetadataPartnerData"] = None, @@ -18084,9 +19323,9 @@ def __init__( :keyword preview: True if this assessment is in preview release status. :paramtype preview: bool :keyword assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, - Custom if the assessment based on custom Azure Policy definition. Known values are: "BuiltIn", - "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", "ManualBuiltInPolicy", - "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". + Custom if the assessment based on custom Azure Policy definition. Known values are: "Unknown", + "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", + "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". :paramtype assessment_type: str or ~azure.mgmt.security.models.AssessmentType :keyword partner_data: Describes the partner that created the assessment. :paramtype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData @@ -18181,8 +19420,9 @@ class SecurityAssessmentMetadataProperties(_serialization.Model): :vartype preview: bool :ivar assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition. Required. Known values are: - "BuiltIn", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", - "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". + "Unknown", "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", + "VerifiedPartner", "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and + "DynamicBuiltIn". :vartype assessment_type: str or ~azure.mgmt.security.models.AssessmentType :ivar partner_data: Describes the partner that created the assessment. :vartype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData @@ -18218,10 +19458,10 @@ def __init__( assessment_type: Union[str, "_models.AssessmentType"], description: Optional[str] = None, remediation_description: Optional[str] = None, - categories: Optional[List[Union[str, "_models.Categories"]]] = None, + categories: Optional[list[Union[str, "_models.Categories"]]] = None, user_impact: Optional[Union[str, "_models.UserImpact"]] = None, implementation_effort: Optional[Union[str, "_models.ImplementationEffort"]] = None, - threats: Optional[List[Union[str, "_models.Threats"]]] = None, + threats: Optional[list[Union[str, "_models.Threats"]]] = None, preview: Optional[bool] = None, partner_data: Optional["_models.SecurityAssessmentMetadataPartnerData"] = None, **kwargs: Any @@ -18251,8 +19491,9 @@ def __init__( :paramtype preview: bool :keyword assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition. Required. Known values are: - "BuiltIn", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", - "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". + "Unknown", "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", + "VerifiedPartner", "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and + "DynamicBuiltIn". :paramtype assessment_type: str or ~azure.mgmt.security.models.AssessmentType :keyword partner_data: Describes the partner that created the assessment. :paramtype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData @@ -18308,8 +19549,9 @@ class SecurityAssessmentMetadataPropertiesResponse( :vartype preview: bool :ivar assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition. Required. Known values are: - "BuiltIn", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", - "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". + "Unknown", "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", + "VerifiedPartner", "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and + "DynamicBuiltIn". :vartype assessment_type: str or ~azure.mgmt.security.models.AssessmentType :ivar partner_data: Describes the partner that created the assessment. :vartype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData @@ -18359,16 +19601,16 @@ def __init__( assessment_type: Union[str, "_models.AssessmentType"], description: Optional[str] = None, remediation_description: Optional[str] = None, - categories: Optional[List[Union[str, "_models.Categories"]]] = None, + categories: Optional[list[Union[str, "_models.Categories"]]] = None, user_impact: Optional[Union[str, "_models.UserImpact"]] = None, implementation_effort: Optional[Union[str, "_models.ImplementationEffort"]] = None, - threats: Optional[List[Union[str, "_models.Threats"]]] = None, + threats: Optional[list[Union[str, "_models.Threats"]]] = None, preview: Optional[bool] = None, partner_data: Optional["_models.SecurityAssessmentMetadataPartnerData"] = None, publish_dates: Optional["_models.SecurityAssessmentMetadataPropertiesResponsePublishDates"] = None, planned_deprecation_date: Optional[str] = None, - tactics: Optional[List[Union[str, "_models.Tactics"]]] = None, - techniques: Optional[List[Union[str, "_models.Techniques"]]] = None, + tactics: Optional[list[Union[str, "_models.Tactics"]]] = None, + techniques: Optional[list[Union[str, "_models.Techniques"]]] = None, **kwargs: Any ) -> None: """ @@ -18396,8 +19638,9 @@ def __init__( :paramtype preview: bool :keyword assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition. Required. Known values are: - "BuiltIn", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", - "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". + "Unknown", "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", + "VerifiedPartner", "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and + "DynamicBuiltIn". :paramtype assessment_type: str or ~azure.mgmt.security.models.AssessmentType :keyword partner_data: Describes the partner that created the assessment. :paramtype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData @@ -18501,9 +19744,9 @@ class SecurityAssessmentMetadataResponse(Resource): :ivar preview: True if this assessment is in preview release status. :vartype preview: bool :ivar assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, - Custom if the assessment based on custom Azure Policy definition. Known values are: "BuiltIn", - "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", "ManualBuiltInPolicy", - "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". + Custom if the assessment based on custom Azure Policy definition. Known values are: "Unknown", + "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", + "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". :vartype assessment_type: str or ~azure.mgmt.security.models.AssessmentType :ivar partner_data: Describes the partner that created the assessment. :vartype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData @@ -18557,18 +19800,18 @@ def __init__( display_name: Optional[str] = None, description: Optional[str] = None, remediation_description: Optional[str] = None, - categories: Optional[List[Union[str, "_models.Categories"]]] = None, + categories: Optional[list[Union[str, "_models.Categories"]]] = None, severity: Optional[Union[str, "_models.Severity"]] = None, user_impact: Optional[Union[str, "_models.UserImpact"]] = None, implementation_effort: Optional[Union[str, "_models.ImplementationEffort"]] = None, - threats: Optional[List[Union[str, "_models.Threats"]]] = None, + threats: Optional[list[Union[str, "_models.Threats"]]] = None, preview: Optional[bool] = None, assessment_type: Optional[Union[str, "_models.AssessmentType"]] = None, partner_data: Optional["_models.SecurityAssessmentMetadataPartnerData"] = None, publish_dates: Optional["_models.SecurityAssessmentMetadataPropertiesResponsePublishDates"] = None, planned_deprecation_date: Optional[str] = None, - tactics: Optional[List[Union[str, "_models.Tactics"]]] = None, - techniques: Optional[List[Union[str, "_models.Techniques"]]] = None, + tactics: Optional[list[Union[str, "_models.Tactics"]]] = None, + techniques: Optional[list[Union[str, "_models.Techniques"]]] = None, **kwargs: Any ) -> None: """ @@ -18595,9 +19838,9 @@ def __init__( :keyword preview: True if this assessment is in preview release status. :paramtype preview: bool :keyword assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, - Custom if the assessment based on custom Azure Policy definition. Known values are: "BuiltIn", - "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", "ManualBuiltInPolicy", - "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". + Custom if the assessment based on custom Azure Policy definition. Known values are: "Unknown", + "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", + "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". :paramtype assessment_type: str or ~azure.mgmt.security.models.AssessmentType :keyword partner_data: Describes the partner that created the assessment. :paramtype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData @@ -18654,7 +19897,7 @@ class SecurityAssessmentMetadataResponseList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.SecurityAssessmentMetadataResponse"]] = None + self.value: Optional[list["_models.SecurityAssessmentMetadataResponse"]] = None self.next_link: Optional[str] = None @@ -18735,7 +19978,7 @@ def __init__( *, resource_details: "_models.ResourceDetails", risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, - additional_data: Optional[Dict[str, str]] = None, + additional_data: Optional[dict[str, str]] = None, metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, **kwargs: Any @@ -18811,7 +20054,7 @@ def __init__( resource_details: "_models.ResourceDetails", status: "_models.AssessmentStatus", risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, - additional_data: Optional[Dict[str, str]] = None, + additional_data: Optional[dict[str, str]] = None, metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, **kwargs: Any @@ -18846,7 +20089,7 @@ class SecurityAssessmentPropertiesBaseRisk(_serialization.Model): :ivar risk_factors: The factors of the risk adding base factor. :vartype risk_factors: list[str] - :ivar level: The risk level. Known values are: "Low", "Medium", and "High". + :ivar level: The risk level. Known values are: "None", "Low", "Medium", "High", and "Critical". :vartype level: str or ~azure.mgmt.security.models.RiskLevel :ivar attack_paths_references: The attack paths references of the risk. :vartype attack_paths_references: list[str] @@ -18871,17 +20114,18 @@ class SecurityAssessmentPropertiesBaseRisk(_serialization.Model): def __init__( self, *, - risk_factors: Optional[List[str]] = None, + risk_factors: Optional[list[str]] = None, level: Optional[Union[str, "_models.RiskLevel"]] = None, - attack_paths_references: Optional[List[str]] = None, - paths: Optional[List["_models.SecurityAssessmentPropertiesBaseRiskPathsItem"]] = None, + attack_paths_references: Optional[list[str]] = None, + paths: Optional[list["_models.SecurityAssessmentPropertiesBaseRiskPathsItem"]] = None, is_contextual_risk: Optional[bool] = None, **kwargs: Any ) -> None: """ :keyword risk_factors: The factors of the risk adding base factor. :paramtype risk_factors: list[str] - :keyword level: The risk level. Known values are: "Low", "Medium", and "High". + :keyword level: The risk level. Known values are: "None", "Low", "Medium", "High", and + "Critical". :paramtype level: str or ~azure.mgmt.security.models.RiskLevel :keyword attack_paths_references: The attack paths references of the risk. :paramtype attack_paths_references: list[str] @@ -18925,9 +20169,9 @@ def __init__( self, *, id: Optional[str] = None, # pylint: disable=redefined-builtin - nodes: Optional[List["_models.SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem"]] = None, + nodes: Optional[list["_models.SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem"]] = None, edges: Optional[ - List[ + list[ "_models.Components1Uu4J47SchemasSecurityassessmentpropertiesbasePropertiesRiskPropertiesPathsItemsPropertiesEdgesItems" ] ] = None, @@ -18969,7 +20213,7 @@ def __init__( self, *, id: Optional[str] = None, # pylint: disable=redefined-builtin - node_properties_label: Optional[List[str]] = None, + node_properties_label: Optional[list[str]] = None, **kwargs: Any ) -> None: """ @@ -19032,7 +20276,7 @@ def __init__( resource_details: "_models.ResourceDetails", status: "_models.AssessmentStatusResponse", risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, - additional_data: Optional[Dict[str, str]] = None, + additional_data: Optional[dict[str, str]] = None, metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, **kwargs: Any @@ -19118,7 +20362,7 @@ def __init__( *, risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, resource_details: Optional["_models.ResourceDetails"] = None, - additional_data: Optional[Dict[str, str]] = None, + additional_data: Optional[dict[str, str]] = None, metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, status: Optional["_models.AssessmentStatusResponse"] = None, @@ -19217,13 +20461,13 @@ class SecurityConnector(TrackedResource): def __init__( self, *, - tags: Optional[Dict[str, str]] = None, + tags: Optional[dict[str, str]] = None, etag: Optional[str] = None, kind: Optional[str] = None, location: Optional[str] = None, hierarchy_identifier: Optional[str] = None, environment_name: Optional[Union[str, "_models.CloudName"]] = None, - offerings: Optional[List["_models.CloudOffering"]] = None, + offerings: Optional[list["_models.CloudOffering"]] = None, environment_data: Optional["_models.EnvironmentData"] = None, **kwargs: Any ) -> None: @@ -19277,170 +20521,17 @@ class SecurityConnectorsList(_serialization.Model): _attribute_map = { "value": {"key": "value", "type": "[SecurityConnector]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: List["_models.SecurityConnector"], **kwargs: Any) -> None: - """ - :keyword value: The list of security connectors under the given scope. Required. - :paramtype value: list[~azure.mgmt.security.models.SecurityConnector] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class SecurityContact(Resource): - """Contact details and configurations for notifications coming from Microsoft Defender for Cloud. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar emails: List of email addresses which will get notifications from Microsoft Defender for - Cloud by the configurations defined in this security contact. - :vartype emails: str - :ivar phone: The security contact's phone number. - :vartype phone: str - :ivar is_enabled: Indicates whether the security contact is enabled. - :vartype is_enabled: bool - :ivar notifications_sources: A collection of sources types which evaluate the email - notification. - :vartype notifications_sources: list[~azure.mgmt.security.models.NotificationsSource] - :ivar notifications_by_role: Defines whether to send email notifications from Microsoft - Defender for Cloud to persons with specific RBAC roles on the subscription. - :vartype notifications_by_role: - ~azure.mgmt.security.models.SecurityContactPropertiesNotificationsByRole - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "emails": {"key": "properties.emails", "type": "str"}, - "phone": {"key": "properties.phone", "type": "str"}, - "is_enabled": {"key": "properties.isEnabled", "type": "bool"}, - "notifications_sources": {"key": "properties.notificationsSources", "type": "[NotificationsSource]"}, - "notifications_by_role": { - "key": "properties.notificationsByRole", - "type": "SecurityContactPropertiesNotificationsByRole", - }, - } - - def __init__( - self, - *, - emails: Optional[str] = None, - phone: Optional[str] = None, - is_enabled: Optional[bool] = None, - notifications_sources: Optional[List["_models.NotificationsSource"]] = None, - notifications_by_role: Optional["_models.SecurityContactPropertiesNotificationsByRole"] = None, - **kwargs: Any - ) -> None: - """ - :keyword emails: List of email addresses which will get notifications from Microsoft Defender - for Cloud by the configurations defined in this security contact. - :paramtype emails: str - :keyword phone: The security contact's phone number. - :paramtype phone: str - :keyword is_enabled: Indicates whether the security contact is enabled. - :paramtype is_enabled: bool - :keyword notifications_sources: A collection of sources types which evaluate the email - notification. - :paramtype notifications_sources: list[~azure.mgmt.security.models.NotificationsSource] - :keyword notifications_by_role: Defines whether to send email notifications from Microsoft - Defender for Cloud to persons with specific RBAC roles on the subscription. - :paramtype notifications_by_role: - ~azure.mgmt.security.models.SecurityContactPropertiesNotificationsByRole - """ - super().__init__(**kwargs) - self.emails = emails - self.phone = phone - self.is_enabled = is_enabled - self.notifications_sources = notifications_sources - self.notifications_by_role = notifications_by_role - - -class SecurityContactList(_serialization.Model): - """List of security contacts response. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: List of security contacts. Required. - :vartype value: list[~azure.mgmt.security.models.SecurityContact] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[SecurityContact]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: List["_models.SecurityContact"], **kwargs: Any) -> None: - """ - :keyword value: List of security contacts. Required. - :paramtype value: list[~azure.mgmt.security.models.SecurityContact] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class SecurityContactPropertiesNotificationsByRole(_serialization.Model): # pylint: disable=name-too-long - """Defines whether to send email notifications from Microsoft Defender for Cloud to persons with - specific RBAC roles on the subscription. - - :ivar state: Defines whether to send email notifications from AMicrosoft Defender for Cloud to - persons with specific RBAC roles on the subscription. Known values are: "Passed", "Failed", - "Skipped", and "Unsupported". - :vartype state: str or ~azure.mgmt.security.models.State - :ivar roles: Defines which RBAC roles will get email notifications from Microsoft Defender for - Cloud. List of allowed RBAC roles:. - :vartype roles: list[str or ~azure.mgmt.security.models.SecurityContactRole] - """ - - _attribute_map = { - "state": {"key": "state", "type": "str"}, - "roles": {"key": "roles", "type": "[str]"}, + "next_link": {"key": "nextLink", "type": "str"}, } - def __init__( - self, - *, - state: Optional[Union[str, "_models.State"]] = None, - roles: Optional[List[Union[str, "_models.SecurityContactRole"]]] = None, - **kwargs: Any - ) -> None: + def __init__(self, *, value: list["_models.SecurityConnector"], **kwargs: Any) -> None: """ - :keyword state: Defines whether to send email notifications from AMicrosoft Defender for Cloud - to persons with specific RBAC roles on the subscription. Known values are: "Passed", "Failed", - "Skipped", and "Unsupported". - :paramtype state: str or ~azure.mgmt.security.models.State - :keyword roles: Defines which RBAC roles will get email notifications from Microsoft Defender - for Cloud. List of allowed RBAC roles:. - :paramtype roles: list[str or ~azure.mgmt.security.models.SecurityContactRole] + :keyword value: The list of security connectors under the given scope. Required. + :paramtype value: list[~azure.mgmt.security.models.SecurityConnector] """ super().__init__(**kwargs) - self.state = state - self.roles = roles + self.value = value + self.next_link: Optional[str] = None class SecurityOperator(Resource): @@ -19497,7 +20588,7 @@ class SecurityOperatorList(_serialization.Model): "value": {"key": "value", "type": "[SecurityOperator]"}, } - def __init__(self, *, value: List["_models.SecurityOperator"], **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.SecurityOperator"], **kwargs: Any) -> None: """ :keyword value: List of SecurityOperator configurations. Required. :paramtype value: list[~azure.mgmt.security.models.SecurityOperator] @@ -19601,7 +20692,7 @@ class SecuritySolutionList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: Optional[List["_models.SecuritySolution"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.SecuritySolution"]] = None, **kwargs: Any) -> None: """ :keyword value: :paramtype value: list[~azure.mgmt.security.models.SecuritySolution] @@ -19726,7 +20817,7 @@ class SecuritySolutionsReferenceDataList(_serialization.Model): } def __init__( - self, *, value: Optional[List["_models.SecuritySolutionsReferenceData"]] = None, **kwargs: Any + self, *, value: Optional[list["_models.SecuritySolutionsReferenceData"]] = None, **kwargs: Any ) -> None: """ :keyword value: @@ -19789,8 +20880,8 @@ def __init__( *, display_name: Optional[str] = None, description: Optional[str] = None, - assessments: Optional[List["_models.PartialAssessmentProperties"]] = None, - cloud_providers: Optional[List[Union[str, "_models.StandardSupportedCloud"]]] = None, + assessments: Optional[list["_models.PartialAssessmentProperties"]] = None, + cloud_providers: Optional[list[Union[str, "_models.StandardSupportedCloud"]]] = None, policy_set_definition_id: Optional[str] = None, metadata: Optional["_models.StandardMetadata"] = None, **kwargs: Any @@ -19845,7 +20936,7 @@ class SecurityStandardList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.SecurityStandard"]] = None + self.value: Optional[list["_models.SecurityStandard"]] = None self.next_link: Optional[str] = None @@ -19964,7 +21055,7 @@ class SecuritySubAssessmentList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.SecuritySubAssessment"]] = None + self.value: Optional[list["_models.SecuritySubAssessment"]] = None self.next_link: Optional[str] = None @@ -20053,7 +21144,7 @@ class SecurityTaskList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.SecurityTask"]] = None + self.value: Optional[list["_models.SecurityTask"]] = None self.next_link: Optional[str] = None @@ -20078,7 +21169,7 @@ class SecurityTaskParameters(_serialization.Model): "name": {"key": "name", "type": "str"}, } - def __init__(self, *, additional_properties: Optional[Dict[str, Any]] = None, **kwargs: Any) -> None: + def __init__(self, *, additional_properties: Optional[dict[str, Any]] = None, **kwargs: Any) -> None: """ :keyword additional_properties: Unmatched properties from the message are deserialized to this collection. @@ -20098,7 +21189,7 @@ class SensitiveDataDiscoveryProperties(_serialization.Model): :vartype is_enabled: bool :ivar operation_status: Upon failure or partial success. Additional data describing Sensitive Data Discovery enable/disable operation. - :vartype operation_status: ~azure.mgmt.security.models.OperationStatus + :vartype operation_status: ~azure.mgmt.security.models.OperationStatusAutoGenerated """ _validation = { @@ -20107,7 +21198,7 @@ class SensitiveDataDiscoveryProperties(_serialization.Model): _attribute_map = { "is_enabled": {"key": "isEnabled", "type": "bool"}, - "operation_status": {"key": "operationStatus", "type": "OperationStatus"}, + "operation_status": {"key": "operationStatus", "type": "OperationStatusAutoGenerated"}, } def __init__(self, *, is_enabled: Optional[bool] = None, **kwargs: Any) -> None: @@ -20117,7 +21208,7 @@ def __init__(self, *, is_enabled: Optional[bool] = None, **kwargs: Any) -> None: """ super().__init__(**kwargs) self.is_enabled = is_enabled - self.operation_status: Optional["_models.OperationStatus"] = None + self.operation_status: Optional["_models.OperationStatusAutoGenerated"] = None class SensitivityLabel(_serialization.Model): @@ -20226,7 +21317,7 @@ class ServerVulnerabilityAssessmentsList(_serialization.Model): "value": {"key": "value", "type": "[ServerVulnerabilityAssessment]"}, } - def __init__(self, *, value: Optional[List["_models.ServerVulnerabilityAssessment"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.ServerVulnerabilityAssessment"]] = None, **kwargs: Any) -> None: """ :keyword value: :paramtype value: list[~azure.mgmt.security.models.ServerVulnerabilityAssessment] @@ -20259,7 +21350,7 @@ class ServerVulnerabilityAssessmentsSettingsList(_serialization.Model): # pylin def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.ServerVulnerabilityAssessmentsSetting"]] = None + self.value: Optional[list["_models.ServerVulnerabilityAssessmentsSetting"]] = None self.next_link: Optional[str] = None @@ -20317,40 +21408,12 @@ def __init__(self, **kwargs: Any) -> None: super().__init__(**kwargs) self.assessed_resource_type: str = "ServerVulnerabilityAssessment" self.type: Optional[str] = None - self.cvss: Optional[Dict[str, "_models.CVSS"]] = None + self.cvss: Optional[dict[str, "_models.CVSS"]] = None self.patchable: Optional[bool] = None - self.cve: Optional[List["_models.CVE"]] = None + self.cve: Optional[list["_models.CVE"]] = None self.threat: Optional[str] = None self.published_time: Optional[datetime.datetime] = None - self.vendor_references: Optional[List["_models.VendorReference"]] = None - - -class ServicePrincipalProperties(_serialization.Model): - """Details of the service principal. - - :ivar application_id: Application ID of service principal. - :vartype application_id: str - :ivar secret: A secret string that the application uses to prove its identity, also can be - referred to as application password (write only). - :vartype secret: str - """ - - _attribute_map = { - "application_id": {"key": "applicationId", "type": "str"}, - "secret": {"key": "secret", "type": "str"}, - } - - def __init__(self, *, application_id: Optional[str] = None, secret: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword application_id: Application ID of service principal. - :paramtype application_id: str - :keyword secret: A secret string that the application uses to prove its identity, also can be - referred to as application password (write only). - :paramtype secret: str - """ - super().__init__(**kwargs) - self.application_id = application_id - self.secret = secret + self.vendor_references: Optional[list["_models.VendorReference"]] = None class SettingsList(_serialization.Model): @@ -20373,7 +21436,7 @@ class SettingsList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: Optional[List["_models.Setting"]] = None, **kwargs: Any) -> None: + def __init__(self, *, value: Optional[list["_models.Setting"]] = None, **kwargs: Any) -> None: """ :keyword value: The settings list. :paramtype value: list[~azure.mgmt.security.models.Setting] @@ -20383,8 +21446,45 @@ def __init__(self, *, value: Optional[List["_models.Setting"]] = None, **kwargs: self.next_link: Optional[str] = None -class Software(Resource): - """Represents a software data. +class SqlServerVulnerabilityProperties(AdditionalData): + """Details of the resource that was assessed. + + Variables are only populated by the server, and will be ignored when sending a request. + + All required parameters must be populated in order to send to server. + + :ivar assessed_resource_type: Sub-assessment resource type. Required. Known values are: + "SqlServerVulnerability", "ContainerRegistryVulnerability", and "ServerVulnerability". + :vartype assessed_resource_type: str or ~azure.mgmt.security.models.AssessedResourceType + :ivar type: The resource type the sub assessment refers to in its resource details. + :vartype type: str + :ivar query: The T-SQL query that runs on your SQL database to perform the particular check. + :vartype query: str + """ + + _validation = { + "assessed_resource_type": {"required": True}, + "type": {"readonly": True}, + "query": {"readonly": True}, + } + + _attribute_map = { + "assessed_resource_type": {"key": "assessedResourceType", "type": "str"}, + "type": {"key": "type", "type": "str"}, + "query": {"key": "query", "type": "str"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.assessed_resource_type: str = "SqlServerVulnerability" + self.type: Optional[str] = None + self.query: Optional[str] = None + + +class SqlVulnerabilityAssessmentScanOperationResult(Resource): # pylint: disable=name-too-long + """Represents the result of a SQL Vulnerability Assessment scan operation, wrapped in the ARM + resource envelope. Variables are only populated by the server, and will be ignored when sending a request. @@ -20394,27 +21494,10 @@ class Software(Resource): :vartype name: str :ivar type: Resource type. :vartype type: str - :ivar device_id: Unique identifier for the virtual machine in the service. - :vartype device_id: str - :ivar os_platform: Platform of the operating system running on the device. - :vartype os_platform: str - :ivar vendor: Name of the software vendor. - :vartype vendor: str - :ivar software_name: Name of the software product. - :vartype software_name: str - :ivar version: Version number of the software product. - :vartype version: str - :ivar end_of_support_status: End of support status. Known values are: "None", - "noLongerSupported", "versionNoLongerSupported", "upcomingNoLongerSupported", and - "upcomingVersionNoLongerSupported". - :vartype end_of_support_status: str or ~azure.mgmt.security.models.EndOfSupportStatus - :ivar end_of_support_date: The end of support date in case the product is upcoming end of - support. - :vartype end_of_support_date: str - :ivar number_of_known_vulnerabilities: Number of weaknesses. - :vartype number_of_known_vulnerabilities: int - :ivar first_seen_at: First time that the software was seen in the device. - :vartype first_seen_at: str + :ivar properties: Represents the properties of a SQL Vulnerability Assessment scan operation + result. + :vartype properties: + ~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResultProperties """ _validation = { @@ -20427,130 +21510,239 @@ class Software(Resource): "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, - "device_id": {"key": "properties.deviceId", "type": "str"}, - "os_platform": {"key": "properties.osPlatform", "type": "str"}, - "vendor": {"key": "properties.vendor", "type": "str"}, - "software_name": {"key": "properties.softwareName", "type": "str"}, - "version": {"key": "properties.version", "type": "str"}, - "end_of_support_status": {"key": "properties.endOfSupportStatus", "type": "str"}, - "end_of_support_date": {"key": "properties.endOfSupportDate", "type": "str"}, - "number_of_known_vulnerabilities": {"key": "properties.numberOfKnownVulnerabilities", "type": "int"}, - "first_seen_at": {"key": "properties.firstSeenAt", "type": "str"}, + "properties": {"key": "properties", "type": "SqlVulnerabilityAssessmentScanOperationResultProperties"}, + } + + def __init__( + self, + *, + properties: Optional["_models.SqlVulnerabilityAssessmentScanOperationResultProperties"] = None, + **kwargs: Any + ) -> None: + """ + :keyword properties: Represents the properties of a SQL Vulnerability Assessment scan operation + result. + :paramtype properties: + ~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResultProperties + """ + super().__init__(**kwargs) + self.properties = properties + + +class SqlVulnerabilityAssessmentScanOperationResultProperties(_serialization.Model): # pylint: disable=name-too-long + """Represents the properties of a SQL Vulnerability Assessment scan operation result. + + :ivar operation_id: Gets or sets the operation id. + :vartype operation_id: str + :ivar scan_status: The scan operation status. Known values are: "Passed", "Failed", + "FailedToRun", and "InProgress". + :vartype scan_status: str or ~azure.mgmt.security.models.ScanOperationStatus + """ + + _attribute_map = { + "operation_id": {"key": "operationId", "type": "str"}, + "scan_status": {"key": "scanStatus", "type": "str"}, } def __init__( self, *, - device_id: Optional[str] = None, - os_platform: Optional[str] = None, - vendor: Optional[str] = None, - software_name: Optional[str] = None, - version: Optional[str] = None, - end_of_support_status: Optional[Union[str, "_models.EndOfSupportStatus"]] = None, - end_of_support_date: Optional[str] = None, - number_of_known_vulnerabilities: Optional[int] = None, - first_seen_at: Optional[str] = None, + operation_id: Optional[str] = None, + scan_status: Optional[Union[str, "_models.ScanOperationStatus"]] = None, **kwargs: Any ) -> None: """ - :keyword device_id: Unique identifier for the virtual machine in the service. - :paramtype device_id: str - :keyword os_platform: Platform of the operating system running on the device. - :paramtype os_platform: str - :keyword vendor: Name of the software vendor. - :paramtype vendor: str - :keyword software_name: Name of the software product. - :paramtype software_name: str - :keyword version: Version number of the software product. - :paramtype version: str - :keyword end_of_support_status: End of support status. Known values are: "None", - "noLongerSupported", "versionNoLongerSupported", "upcomingNoLongerSupported", and - "upcomingVersionNoLongerSupported". - :paramtype end_of_support_status: str or ~azure.mgmt.security.models.EndOfSupportStatus - :keyword end_of_support_date: The end of support date in case the product is upcoming end of - support. - :paramtype end_of_support_date: str - :keyword number_of_known_vulnerabilities: Number of weaknesses. - :paramtype number_of_known_vulnerabilities: int - :keyword first_seen_at: First time that the software was seen in the device. - :paramtype first_seen_at: str - """ - super().__init__(**kwargs) - self.device_id = device_id - self.os_platform = os_platform - self.vendor = vendor - self.software_name = software_name - self.version = version - self.end_of_support_status = end_of_support_status - self.end_of_support_date = end_of_support_date - self.number_of_known_vulnerabilities = number_of_known_vulnerabilities - self.first_seen_at = first_seen_at - - -class SoftwaresList(_serialization.Model): - """Represents the software inventory of the virtual machine. + :keyword operation_id: Gets or sets the operation id. + :paramtype operation_id: str + :keyword scan_status: The scan operation status. Known values are: "Passed", "Failed", + "FailedToRun", and "InProgress". + :paramtype scan_status: str or ~azure.mgmt.security.models.ScanOperationStatus + """ + super().__init__(**kwargs) + self.operation_id = operation_id + self.scan_status = scan_status + + +class SqlVulnerabilityAssessmentSettings(Resource): + """SQL Vulnerability Assessment settings resource. Variables are only populated by the server, and will be ignored when sending a request. - :ivar value: - :vartype value: list[~azure.mgmt.security.models.Software] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str + :ivar id: Resource Id. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :ivar properties: SQL Vulnerability Assessment settings properties. + :vartype properties: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettingsProperties """ _validation = { - "next_link": {"readonly": True}, + "id": {"readonly": True}, + "name": {"readonly": True}, + "type": {"readonly": True}, } _attribute_map = { - "value": {"key": "value", "type": "[Software]"}, - "next_link": {"key": "nextLink", "type": "str"}, + "id": {"key": "id", "type": "str"}, + "name": {"key": "name", "type": "str"}, + "type": {"key": "type", "type": "str"}, + "properties": {"key": "properties", "type": "SqlVulnerabilityAssessmentSettingsProperties"}, } - def __init__(self, *, value: Optional[List["_models.Software"]] = None, **kwargs: Any) -> None: + def __init__( + self, *, properties: Optional["_models.SqlVulnerabilityAssessmentSettingsProperties"] = None, **kwargs: Any + ) -> None: """ - :keyword value: - :paramtype value: list[~azure.mgmt.security.models.Software] + :keyword properties: SQL Vulnerability Assessment settings properties. + :paramtype properties: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettingsProperties """ super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None + self.properties = properties -class SqlServerVulnerabilityProperties(AdditionalData): - """Details of the resource that was assessed. +class SqlVulnerabilityAssessmentSettingsProperties(_serialization.Model): # pylint: disable=name-too-long + """SQL Vulnerability Assessment settings properties. Variables are only populated by the server, and will be ignored when sending a request. - All required parameters must be populated in order to send to server. + :ivar creation_time: The creation time of the SQL Vulnerability Assessment settings. + :vartype creation_time: ~datetime.datetime + :ivar state: Represents the state of a SQL Vulnerability Assessment. Known values are: + "Enabled" and "Disabled". + :vartype state: str or ~azure.mgmt.security.models.SqlVulnerabilityAssessmentState + """ - :ivar assessed_resource_type: Sub-assessment resource type. Required. Known values are: - "SqlServerVulnerability", "ContainerRegistryVulnerability", and "ServerVulnerability". - :vartype assessed_resource_type: str or ~azure.mgmt.security.models.AssessedResourceType - :ivar type: The resource type the sub assessment refers to in its resource details. + _validation = { + "creation_time": {"readonly": True}, + } + + _attribute_map = { + "creation_time": {"key": "creationTime", "type": "iso-8601"}, + "state": {"key": "state", "type": "str"}, + } + + def __init__( + self, *, state: Optional[Union[str, "_models.SqlVulnerabilityAssessmentState"]] = None, **kwargs: Any + ) -> None: + """ + :keyword state: Represents the state of a SQL Vulnerability Assessment. Known values are: + "Enabled" and "Disabled". + :paramtype state: str or ~azure.mgmt.security.models.SqlVulnerabilityAssessmentState + """ + super().__init__(**kwargs) + self.creation_time: Optional[datetime.datetime] = None + self.state = state + + +class Standard(TrackedResource): + """Security Standard on a resource. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar tags: A list of key value pairs that describe the resource. + :vartype tags: dict[str, str] + :ivar etag: Entity tag is used for comparing two or more entities from the same requested + resource. + :vartype etag: str + :ivar kind: Kind of the resource. + :vartype kind: str + :ivar location: Location where the resource is stored. + :vartype location: str + :ivar id: Resource Id. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. :vartype type: str - :ivar query: The T-SQL query that runs on your SQL database to perform the particular check. - :vartype query: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar display_name: display name of the standard, equivalent to the standardId. + :vartype display_name: str + :ivar standard_type: standard type (Custom or BuiltIn only currently). + :vartype standard_type: str + :ivar description: description of the standard. + :vartype description: str + :ivar category: category of the standard provided. + :vartype category: str + :ivar components: List of component objects containing component unique keys (such as + assessment keys) to apply to standard scope. Currently only supports assessment keys. + :vartype components: list[~azure.mgmt.security.models.StandardComponentProperties] + :ivar supported_clouds: List of all standard supported clouds. + :vartype supported_clouds: list[str or ~azure.mgmt.security.models.StandardSupportedClouds] """ _validation = { - "assessed_resource_type": {"required": True}, + "id": {"readonly": True}, + "name": {"readonly": True}, "type": {"readonly": True}, - "query": {"readonly": True}, + "system_data": {"readonly": True}, + "standard_type": {"readonly": True}, } _attribute_map = { - "assessed_resource_type": {"key": "assessedResourceType", "type": "str"}, + "tags": {"key": "tags", "type": "{str}"}, + "etag": {"key": "etag", "type": "str"}, + "kind": {"key": "kind", "type": "str"}, + "location": {"key": "location", "type": "str"}, + "id": {"key": "id", "type": "str"}, + "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, - "query": {"key": "query", "type": "str"}, + "system_data": {"key": "systemData", "type": "SystemData"}, + "display_name": {"key": "properties.displayName", "type": "str"}, + "standard_type": {"key": "properties.standardType", "type": "str"}, + "description": {"key": "properties.description", "type": "str"}, + "category": {"key": "properties.category", "type": "str"}, + "components": {"key": "properties.components", "type": "[StandardComponentProperties]"}, + "supported_clouds": {"key": "properties.supportedClouds", "type": "[str]"}, } - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.assessed_resource_type: str = "SqlServerVulnerability" - self.type: Optional[str] = None - self.query: Optional[str] = None + def __init__( + self, + *, + tags: Optional[dict[str, str]] = None, + etag: Optional[str] = None, + kind: Optional[str] = None, + location: Optional[str] = None, + display_name: Optional[str] = None, + description: Optional[str] = None, + category: Optional[str] = None, + components: Optional[list["_models.StandardComponentProperties"]] = None, + supported_clouds: Optional[list[Union[str, "_models.StandardSupportedClouds"]]] = None, + **kwargs: Any + ) -> None: + """ + :keyword tags: A list of key value pairs that describe the resource. + :paramtype tags: dict[str, str] + :keyword etag: Entity tag is used for comparing two or more entities from the same requested + resource. + :paramtype etag: str + :keyword kind: Kind of the resource. + :paramtype kind: str + :keyword location: Location where the resource is stored. + :paramtype location: str + :keyword display_name: display name of the standard, equivalent to the standardId. + :paramtype display_name: str + :keyword description: description of the standard. + :paramtype description: str + :keyword category: category of the standard provided. + :paramtype category: str + :keyword components: List of component objects containing component unique keys (such as + assessment keys) to apply to standard scope. Currently only supports assessment keys. + :paramtype components: list[~azure.mgmt.security.models.StandardComponentProperties] + :keyword supported_clouds: List of all standard supported clouds. + :paramtype supported_clouds: list[str or ~azure.mgmt.security.models.StandardSupportedClouds] + """ + super().__init__(tags=tags, etag=etag, kind=kind, location=location, **kwargs) + self.system_data: Optional["_models.SystemData"] = None + self.display_name = display_name + self.standard_type: Optional[str] = None + self.description = description + self.category = category + self.components = components + self.supported_clouds = supported_clouds class StandardAssignment(Resource): @@ -20619,7 +21811,7 @@ def __init__( description: Optional[str] = None, assigned_standard: Optional["_models.AssignedStandardItem"] = None, effect: Optional[Union[str, "_models.Effect"]] = None, - excluded_scopes: Optional[List[str]] = None, + excluded_scopes: Optional[list[str]] = None, expires_on: Optional[datetime.datetime] = None, exemption_data: Optional["_models.StandardAssignmentPropertiesExemptionData"] = None, attestation_data: Optional["_models.StandardAssignmentPropertiesAttestationData"] = None, @@ -20734,7 +21926,7 @@ def __init__( *, compliance_state: Optional[Union[str, "_models.AttestationComplianceState"]] = None, assigned_assessment: Optional["_models.AssignedAssessmentItem"] = None, - evidence: Optional[List["_models.AttestationEvidence"]] = None, + evidence: Optional[list["_models.AttestationEvidence"]] = None, **kwargs: Any ) -> None: """ @@ -20816,7 +22008,55 @@ class StandardAssignmentsList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.StandardAssignment"]] = None + self.value: Optional[list["_models.StandardAssignment"]] = None + self.next_link: Optional[str] = None + + +class StandardComponentProperties(_serialization.Model): + """Describes properties of an component as related to the standard. + + :ivar key: Component Key matching componentMetadata. + :vartype key: str + """ + + _attribute_map = { + "key": {"key": "key", "type": "str"}, + } + + def __init__(self, *, key: Optional[str] = None, **kwargs: Any) -> None: + """ + :keyword key: Component Key matching componentMetadata. + :paramtype key: str + """ + super().__init__(**kwargs) + self.key = key + + +class StandardList(_serialization.Model): + """Page of a Standard list. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar value: Collection of standards in this page. + :vartype value: list[~azure.mgmt.security.models.Standard] + :ivar next_link: The URI to fetch the next page. + :vartype next_link: str + """ + + _validation = { + "value": {"readonly": True}, + "next_link": {"readonly": True}, + } + + _attribute_map = { + "value": {"key": "value", "type": "[Standard]"}, + "next_link": {"key": "nextLink", "type": "str"}, + } + + def __init__(self, **kwargs: Any) -> None: + """ """ + super().__init__(**kwargs) + self.value: Optional[list["_models.Standard"]] = None self.next_link: Optional[str] = None @@ -20965,7 +22205,7 @@ class SuppressionAlertsScope(_serialization.Model): "all_of": {"key": "allOf", "type": "[ScopeElement]"}, } - def __init__(self, *, all_of: List["_models.ScopeElement"], **kwargs: Any) -> None: + def __init__(self, *, all_of: list["_models.ScopeElement"], **kwargs: Any) -> None: """ :keyword all_of: All the conditions inside need to be true in order to suppress the alert. Required. @@ -21060,7 +22300,7 @@ class TargetBranchConfiguration(_serialization.Model): def __init__( self, *, - branch_names: Optional[List[str]] = None, + branch_names: Optional[list[str]] = None, annotate_default_branch: Optional[Union[str, "_models.AnnotateDefaultBranchState"]] = None, **kwargs: Any ) -> None: @@ -21104,7 +22344,7 @@ class TopologyList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.TopologyResource"]] = None + self.value: Optional[list["_models.TopologyResource"]] = None self.next_link: Optional[str] = None @@ -21150,7 +22390,7 @@ def __init__(self, **kwargs: Any) -> None: super().__init__(**kwargs) self.location: Optional[str] = None self.calculated_date_time: Optional[datetime.datetime] = None - self.topology_resources: Optional[List["_models.TopologySingleResource"]] = None + self.topology_resources: Optional[list["_models.TopologySingleResource"]] = None self.id: Optional[str] = None self.name: Optional[str] = None self.type: Optional[str] = None @@ -21213,8 +22453,8 @@ def __init__(self, **kwargs: Any) -> None: self.network_zones: Optional[str] = None self.topology_score: Optional[int] = None self.location: Optional[str] = None - self.parents: Optional[List["_models.TopologySingleResourceParent"]] = None - self.children: Optional[List["_models.TopologySingleResourceChild"]] = None + self.parents: Optional[list["_models.TopologySingleResourceParent"]] = None + self.children: Optional[list["_models.TopologySingleResourceChild"]] = None class TopologySingleResourceChild(_serialization.Model): @@ -21432,9 +22672,9 @@ class UpdateIotSecuritySolutionData(TagsResource): def __init__( self, *, - tags: Optional[Dict[str, str]] = None, + tags: Optional[dict[str, str]] = None, user_defined_resources: Optional["_models.UserDefinedResourcesProperties"] = None, - recommendations_configuration: Optional[List["_models.RecommendationConfigurationProperties"]] = None, + recommendations_configuration: Optional[list["_models.RecommendationConfigurationProperties"]] = None, **kwargs: Any ) -> None: """ @@ -21482,7 +22722,7 @@ class UpdateSensitivitySettingsRequest(_serialization.Model): def __init__( self, *, - sensitive_info_types_ids: List[str], + sensitive_info_types_ids: list[str], sensitivity_threshold_label_order: Optional[float] = None, sensitivity_threshold_label_id: Optional[str] = None, **kwargs: Any @@ -21527,7 +22767,7 @@ class UserDefinedResourcesProperties(_serialization.Model): "query_subscriptions": {"key": "querySubscriptions", "type": "[str]"}, } - def __init__(self, *, query: str, query_subscriptions: List[str], **kwargs: Any) -> None: + def __init__(self, *, query: str, query_subscriptions: list[str], **kwargs: Any) -> None: """ :keyword query: Azure Resource Graph query which represents the security solution's user defined resources. Required to start with "where type != "Microsoft.Devices/IotHubs"". @@ -21590,7 +22830,7 @@ def __init__( description: Optional[str] = None, rationale: Optional[str] = None, query_check: Optional["_models.QueryCheck"] = None, - benchmark_references: Optional[List["_models.BenchmarkReference"]] = None, + benchmark_references: Optional[list["_models.BenchmarkReference"]] = None, **kwargs: Any ) -> None: """ @@ -21673,7 +22913,7 @@ def __init__( self, *, scanning_mode: Optional[Union[str, "_models.ScanningMode"]] = None, - exclusion_tags: Optional[Dict[str, str]] = None, + exclusion_tags: Optional[dict[str, str]] = None, **kwargs: Any ) -> None: """ @@ -21755,7 +22995,7 @@ class WorkspaceSettingList(_serialization.Model): "next_link": {"key": "nextLink", "type": "str"}, } - def __init__(self, *, value: List["_models.WorkspaceSetting"], **kwargs: Any) -> None: + def __init__(self, *, value: list["_models.WorkspaceSetting"], **kwargs: Any) -> None: """ :keyword value: List of workspace settings. Required. :paramtype value: list[~azure.mgmt.security.models.WorkspaceSetting] diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_security_center_enums.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_security_center_enums.py index f6962ed8d90d..00bdd7e22dc9 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_security_center_enums.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_security_center_enums.py @@ -20,10 +20,8 @@ class AadConnectivityStateEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): class ActionableRemediationState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """ActionableRemediation Setting. - None - the setting was never set. - Enabled - ActionableRemediation is enabled. - Disabled - ActionableRemediation is disabled. + """ActionableRemediation Setting. None - the setting was never set. Enabled - + ActionableRemediation is enabled. Disabled - ActionableRemediation is disabled. """ NONE = "None" @@ -112,9 +110,6 @@ class ApplicationConditionOperator(str, Enum, metaclass=CaseInsensitiveEnumMeta) IN = "In" """Checks that the string value of the data defined in Property equals any of the given values (exact fit)""" - IN_ENUM = "In" - """Checks that the string value of the data defined in Property equals any of the given values - (exact fit)""" class ApplicationSourceResourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -148,8 +143,12 @@ class AssessmentType(str, Enum, metaclass=CaseInsensitiveEnumMeta): based on custom Azure Policy definition. """ + UNKNOWN = "Unknown" + """Unknown assessment type""" BUILT_IN = "BuiltIn" """Microsoft Defender for Cloud managed assessments""" + CUSTOM = "Custom" + """User defined custom assessments""" CUSTOM_POLICY = "CustomPolicy" """User defined policies that are automatically ingested from Azure Policy to Microsoft Defender for Cloud""" @@ -178,30 +177,10 @@ class AttestationComplianceState(str, Enum, metaclass=CaseInsensitiveEnumMeta): NON_COMPLIANT = "nonCompliant" -class AuthenticationProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """State of the multi-cloud connector.""" - - VALID = "Valid" - """Valid connector""" - INVALID = "Invalid" - """Invalid connector""" - EXPIRED = "Expired" - """the connection has expired""" - INCORRECT_POLICY = "IncorrectPolicy" - """Incorrect policy of the connector""" - - class AuthenticationType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Connect to your cloud account, for AWS use either account credentials or role-based - authentication. For GCP use account organization credentials. - """ + """The authentication type.""" - AWS_CREDS = "awsCreds" - """AWS cloud account connector user credentials authentication""" - AWS_ASSUME_ROLE = "awsAssumeRole" - """AWS account connector assume role authentication""" - GCP_CREDENTIALS = "gcpCredentials" - """GCP account connector service to service authentication""" + ACCESS_TOKEN = "AccessToken" class AutoDiscovery(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -212,6 +191,15 @@ class AutoDiscovery(str, Enum, metaclass=CaseInsensitiveEnumMeta): NOT_APPLICABLE = "NotApplicable" +class AutomatedResponseType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Optional. Specifies the automated response action to take when malware is detected.""" + + NONE = "None" + """No automated response will be taken when malware is detected.""" + BLOB_SOFT_DELETE = "BlobSoftDelete" + """The blob will be soft deleted when malware is detected.""" + + class AutoProvision(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Describes what kind of security agent provisioning action to take.""" @@ -222,9 +210,9 @@ class AutoProvision(str, Enum, metaclass=CaseInsensitiveEnumMeta): class BlobScanResultsOptions(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Optional. Write scan result on blobIndexTags by default.""" + """Optional. Write scan result on BlobIndexTags by default.""" - BLOB_INDEX_TAGS = "blobIndexTags" + BLOB_INDEX_TAGS = "BlobIndexTags" """Write scan results on the blobs index tags.""" NONE = "None" """Do not write scan results on the blobs index tags.""" @@ -346,16 +334,6 @@ class Effect(str, Enum, metaclass=CaseInsensitiveEnumMeta): ATTEST = "Attest" -class EndOfSupportStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """End of support status.""" - - NONE = "None" - NO_LONGER_SUPPORTED = "noLongerSupported" - VERSION_NO_LONGER_SUPPORTED = "versionNoLongerSupported" - UPCOMING_NO_LONGER_SUPPORTED = "upcomingNoLongerSupported" - UPCOMING_VERSION_NO_LONGER_SUPPORTED = "upcomingVersionNoLongerSupported" - - class Enforce(str, Enum, metaclass=CaseInsensitiveEnumMeta): """If set to "False", it allows the descendants of this scope to override the pricing configuration set on this scope (allows setting inherited="False"). If set to "True", it @@ -448,9 +426,6 @@ class GovernanceRuleConditionOperator(str, Enum, metaclass=CaseInsensitiveEnumMe IN = "In" """Checks that the string value of the data defined in Property equals any of the given values (exact fit)""" - IN_ENUM = "In" - """Checks that the string value of the data defined in Property equals any of the given values - (exact fit)""" class GovernanceRuleOwnerSourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -478,17 +453,6 @@ class GovernanceRuleType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The source of the rule type definition is ServiceNow""" -class HybridComputeProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """State of the service principal and its secret.""" - - VALID = "Valid" - """Valid service principal details.""" - INVALID = "Invalid" - """Invalid service principal details.""" - EXPIRED = "Expired" - """the service principal details are expired""" - - class ImplementationEffort(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The implementation effort required to remediate this assessment.""" @@ -622,30 +586,6 @@ class KindEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Simulate alerts according to bundles""" -class MinimalRiskLevel(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Defines the minimal attack path risk level which will be sent as email notifications.""" - - CRITICAL = "Critical" - """Get notifications on new attack paths with Critical risk level""" - HIGH = "High" - """Get notifications on new attack paths with High or Critical risk level""" - MEDIUM = "Medium" - """Get notifications on new attach paths with Medium, High or Critical risk level""" - LOW = "Low" - """Get notifications on new attach paths with Low, Medium, High or Critical risk level""" - - -class MinimalSeverity(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Defines the minimal alert severity which will be sent as email notifications.""" - - HIGH = "High" - """Get notifications on new alerts with High severity""" - MEDIUM = "Medium" - """Get notifications on new alerts with Medium or High severity""" - LOW = "Low" - """Get notifications on new alerts with Low, Medium or High severity""" - - class MipIntegrationStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Microsoft information protection integration status.""" @@ -748,20 +688,6 @@ class Origin(str, Enum, metaclass=CaseInsensitiveEnumMeta): USER_SYSTEM = "user,system" -class PermissionProperty(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """A permission detected in the cloud account.""" - - AWS_AWS_SECURITY_HUB_READ_ONLY_ACCESS = "AWS::AWSSecurityHubReadOnlyAccess" - """This permission provides read only access to AWS Security Hub resources.""" - AWS_SECURITY_AUDIT = "AWS::SecurityAudit" - """This permission grants access to read security configuration metadata.""" - AWS_AMAZON_SSM_AUTOMATION_ROLE = "AWS::AmazonSSMAutomationRole" - """The permission provides for EC2 Automation service to execute activities defined within - Automation documents.""" - GCP_SECURITY_CENTER_ADMIN_VIEWER = "GCP::Security Center Admin Viewer" - """This permission provides read only access to GCP Security Command Center.""" - - class PricingTier(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Indicates whether the Defender plan is enabled on the selected scope. Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard tier offers advanced @@ -774,7 +700,9 @@ class PricingTier(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Get the standard Microsoft Defender for Cloud experience with advanced security features""" -class PrivateEndpointConnectionProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): +class PrivateEndpointConnectionProvisioningState( # pylint: disable=name-too-long + str, Enum, metaclass=CaseInsensitiveEnumMeta +): """The current provisioning state.""" SUCCEEDED = "Succeeded" @@ -818,6 +746,13 @@ class ProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): UPDATING = "Updating" +class PublicNetworkAccess(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """This determines if traffic is allowed over public network. By default it is disabled.""" + + ENABLED = "Enabled" + DISABLED = "Disabled" + + class Rank(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The rank of the sensitivity label.""" @@ -947,19 +882,16 @@ class ResourceStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): class RiskLevel(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The risk level.""" + NONE = "None" LOW = "Low" MEDIUM = "Medium" HIGH = "High" + CRITICAL = "Critical" class RuleCategory(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Rule categories. - Code - code scanning results. - Artifact scanning results. - Dependencies scanning results. - IaC results. - Secrets scanning results. - Container scanning results. + """Rule categories. Code - code scanning results. Artifact scanning results. Dependencies scanning + results. IaC results. Secrets scanning results. Container scanning results. """ CODE = "Code" @@ -974,15 +906,15 @@ class RuleSeverity(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The rule severity.""" HIGH = "High" - """High""" + """High severity vulnerability requiring immediate attention.""" MEDIUM = "Medium" - """Medium""" + """Medium severity vulnerability that should be addressed.""" LOW = "Low" - """Low""" + """Low severity vulnerability with minimal risk.""" INFORMATIONAL = "Informational" - """Informational""" + """Informational finding that does not indicate a vulnerability.""" OBSOLETE = "Obsolete" - """Obsolete""" + """The rule is obsolete and no longer applicable.""" class RuleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -997,11 +929,13 @@ class RuleStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The rule result status.""" NON_FINDING = "NonFinding" - """NonFinding""" + """No vulnerability was found for this rule.""" FINDING = "Finding" - """Finding""" + """A vulnerability was found for this rule.""" INTERNAL_ERROR = "InternalError" - """InternalError""" + """An internal error occurred while evaluating this rule.""" + NOT_APPLICABLE = "NotApplicable" + """The rule is not applicable to the assessed resource.""" class RuleType(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -1023,6 +957,19 @@ class ScanningMode(str, Enum, metaclass=CaseInsensitiveEnumMeta): DEFAULT = "Default" +class ScanOperationStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """The scan operation status.""" + + PASSED = "Passed" + """The scan completed successfully with no vulnerabilities found.""" + FAILED = "Failed" + """The scan completed but found vulnerabilities.""" + FAILED_TO_RUN = "FailedToRun" + """The scan failed to execute.""" + IN_PROGRESS = "InProgress" + """The scan is currently running.""" + + class ScanState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The scan status.""" @@ -1045,26 +992,6 @@ class ScanTriggerType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Recurring""" -class SecurityContactName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """SecurityContactName.""" - - DEFAULT = "default" - """The single applicable name of the security contact object""" - - -class SecurityContactRole(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """A possible role to configure sending security notification alerts to.""" - - ACCOUNT_ADMIN = "AccountAdmin" - """If enabled, send notification on new alerts to the account admins""" - SERVICE_ADMIN = "ServiceAdmin" - """If enabled, send notification on new alerts to the service admins""" - OWNER = "Owner" - """If enabled, send notification on new alerts to the subscription owners""" - CONTRIBUTOR = "Contributor" - """If enabled, send notification on new alerts to the subscription contributors""" - - class SecurityFamily(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The security family of the discovered solution.""" @@ -1092,7 +1019,9 @@ class SecuritySolutionStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): DISABLED = "Disabled" -class ServerVulnerabilityAssessmentPropertiesProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): +class ServerVulnerabilityAssessmentPropertiesProvisioningState( # pylint: disable=name-too-long + str, Enum, metaclass=CaseInsensitiveEnumMeta +): """The provisioningState of the vulnerability assessment capability on the VM.""" SUCCEEDED = "Succeeded" @@ -1102,20 +1031,26 @@ class ServerVulnerabilityAssessmentPropertiesProvisioningState(str, Enum, metacl DEPROVISIONING = "Deprovisioning" -class ServerVulnerabilityAssessmentsAzureSettingSelectedProvider(str, Enum, metaclass=CaseInsensitiveEnumMeta): +class ServerVulnerabilityAssessmentsAzureSettingSelectedProvider( # pylint: disable=name-too-long + str, Enum, metaclass=CaseInsensitiveEnumMeta +): """The selected vulnerability assessments provider on Azure servers in the defined scope.""" MDE_TVM = "MdeTvm" """Microsoft Defender for Endpoints threat and vulnerability management.""" -class ServerVulnerabilityAssessmentsSettingKind(str, Enum, metaclass=CaseInsensitiveEnumMeta): +class ServerVulnerabilityAssessmentsSettingKind( # pylint: disable=name-too-long + str, Enum, metaclass=CaseInsensitiveEnumMeta +): """The kind of the server vulnerability assessments setting.""" AZURE_SERVERS_SETTING = "AzureServersSetting" -class ServerVulnerabilityAssessmentsSettingKindName(str, Enum, metaclass=CaseInsensitiveEnumMeta): +class ServerVulnerabilityAssessmentsSettingKindName( # pylint: disable=name-too-long + str, Enum, metaclass=CaseInsensitiveEnumMeta +): """ServerVulnerabilityAssessmentsSettingKindName.""" AZURE_SERVERS_SETTING = "azureServersSetting" @@ -1132,13 +1067,6 @@ class SettingKind(str, Enum, metaclass=CaseInsensitiveEnumMeta): class SettingName(str, Enum, metaclass=CaseInsensitiveEnumMeta): """SettingName.""" - CURRENT = "current" - """Name of the Defender for Storage Settings name.""" - - -class SettingNameAutoGenerated(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """SettingNameAutoGenerated.""" - MCAS = "MCAS" WDATP = "WDATP" WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW = "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW" @@ -1146,6 +1074,13 @@ class SettingNameAutoGenerated(str, Enum, metaclass=CaseInsensitiveEnumMeta): SENTINEL = "Sentinel" +class SettingNameAutoGenerated(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """SettingNameAutoGenerated.""" + + CURRENT = "current" + """Name of the Defender for Storage Settings name.""" + + class Severity(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The sub-assessment severity level.""" @@ -1155,7 +1090,7 @@ class Severity(str, Enum, metaclass=CaseInsensitiveEnumMeta): class SeverityEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The severity to relate to the assessments generated by this assessment automation.""" + """The severity to relate to the assessments generated by this Recommendation.""" HIGH = "High" MEDIUM = "Medium" @@ -1173,11 +1108,13 @@ class Source(str, Enum, metaclass=CaseInsensitiveEnumMeta): """SQL Resource in an on premise machine connected to Azure cloud""" -class SourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The source type that will trigger the notification.""" +class SqlVulnerabilityAssessmentState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Represents the state of a SQL Vulnerability Assessment.""" - ALERT = "Alert" - ATTACK_PATH = "AttackPath" + ENABLED = "Enabled" + """Enabled""" + DISABLED = "Disabled" + """Disabled""" class StandardSupportedCloud(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -1188,6 +1125,13 @@ class StandardSupportedCloud(str, Enum, metaclass=CaseInsensitiveEnumMeta): GCP = "GCP" +class StandardSupportedClouds(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """The cloud that the standard is supported on.""" + + AWS = "AWS" + GCP = "GCP" + + class StandardType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Standard type (Custom or Default or Compliance only currently).""" @@ -1251,13 +1195,6 @@ class SubPlan(str, Enum, metaclass=CaseInsensitiveEnumMeta): P2 = "P2" -class SupportedCloudEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Relevant cloud for the custom assessment automation.""" - - AWS = "AWS" - GCP = "GCP" - - class Tactics(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Tactic of the assessment.""" diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/__init__.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/__init__.py index 7cefa0cf68cd..c6ccdcb6b3c4 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/__init__.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/__init__.py @@ -24,10 +24,6 @@ from ._regulatory_compliance_controls_operations import RegulatoryComplianceControlsOperations # type: ignore from ._regulatory_compliance_assessments_operations import RegulatoryComplianceAssessmentsOperations # type: ignore from ._sub_assessments_operations import SubAssessmentsOperations # type: ignore -from ._connectors_operations import ConnectorsOperations # type: ignore -from ._software_inventories_operations import SoftwareInventoriesOperations # type: ignore -from ._custom_assessment_automations_operations import CustomAssessmentAutomationsOperations # type: ignore -from ._custom_entity_store_assignments_operations import CustomEntityStoreAssignmentsOperations # type: ignore from ._mde_onboardings_operations import MdeOnboardingsOperations # type: ignore from ._governance_assignments_operations import GovernanceAssignmentsOperations # type: ignore from ._governance_rules_operations import GovernanceRulesOperations # type: ignore @@ -39,18 +35,27 @@ from ._sql_vulnerability_assessment_baseline_rules_operations import SqlVulnerabilityAssessmentBaselineRulesOperations # type: ignore from ._sql_vulnerability_assessment_scans_operations import SqlVulnerabilityAssessmentScansOperations # type: ignore from ._sql_vulnerability_assessment_scan_results_operations import SqlVulnerabilityAssessmentScanResultsOperations # type: ignore +from ._sql_vulnerability_assessment_settings_operations import SqlVulnerabilityAssessmentSettingsOperations # type: ignore from ._sensitivity_settings_operations import SensitivitySettingsOperations # type: ignore from ._health_reports_operations import HealthReportsOperations # type: ignore from ._automations_operations import AutomationsOperations # type: ignore -from ._security_contacts_operations import SecurityContactsOperations # type: ignore from ._security_connectors_operations import SecurityConnectorsOperations # type: ignore -from ._defender_for_storage_operations import DefenderForStorageOperations # type: ignore +from ._azure_dev_ops_orgs_operations import AzureDevOpsOrgsOperations # type: ignore +from ._azure_dev_ops_projects_operations import AzureDevOpsProjectsOperations # type: ignore +from ._azure_dev_ops_repos_operations import AzureDevOpsReposOperations # type: ignore +from ._dev_ops_configurations_operations import DevOpsConfigurationsOperations # type: ignore +from ._git_hub_owners_operations import GitHubOwnersOperations # type: ignore +from ._git_hub_repos_operations import GitHubReposOperations # type: ignore +from ._git_hub_issues_operations import GitHubIssuesOperations # type: ignore +from ._git_lab_groups_operations import GitLabGroupsOperations # type: ignore +from ._git_lab_subgroups_operations import GitLabSubgroupsOperations # type: ignore +from ._git_lab_projects_operations import GitLabProjectsOperations # type: ignore +from ._dev_ops_operation_results_operations import DevOpsOperationResultsOperations # type: ignore from ._operations import Operations # type: ignore +from ._operation_results_operations import OperationResultsOperations # type: ignore +from ._operation_statuses_operations import OperationStatusesOperations # type: ignore from ._assessments_metadata_operations import AssessmentsMetadataOperations # type: ignore from ._assessments_operations import AssessmentsOperations # type: ignore -from ._private_links_operations import PrivateLinksOperations # type: ignore -from ._private_link_resources_operations import PrivateLinkResourcesOperations # type: ignore -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations # type: ignore from ._compliance_results_operations import ComplianceResultsOperations # type: ignore from ._advanced_threat_protection_operations import AdvancedThreatProtectionOperations # type: ignore from ._device_security_groups_operations import DeviceSecurityGroupsOperations # type: ignore @@ -62,9 +67,6 @@ from ._discovered_security_solutions_operations import DiscoveredSecuritySolutionsOperations # type: ignore from ._external_security_solutions_operations import ExternalSecuritySolutionsOperations # type: ignore from ._jit_network_access_policies_operations import JitNetworkAccessPoliciesOperations # type: ignore -from ._secure_scores_operations import SecureScoresOperations # type: ignore -from ._secure_score_controls_operations import SecureScoreControlsOperations # type: ignore -from ._secure_score_control_definitions_operations import SecureScoreControlDefinitionsOperations # type: ignore from ._security_solutions_operations import SecuritySolutionsOperations # type: ignore from ._security_solutions_reference_data_operations import SecuritySolutionsReferenceDataOperations # type: ignore from ._server_vulnerability_assessment_operations import ServerVulnerabilityAssessmentOperations # type: ignore @@ -77,16 +79,15 @@ from ._security_standards_operations import SecurityStandardsOperations # type: ignore from ._standard_assignments_operations import StandardAssignmentsOperations # type: ignore from ._custom_recommendations_operations import CustomRecommendationsOperations # type: ignore -from ._azure_dev_ops_orgs_operations import AzureDevOpsOrgsOperations # type: ignore -from ._azure_dev_ops_projects_operations import AzureDevOpsProjectsOperations # type: ignore -from ._azure_dev_ops_repos_operations import AzureDevOpsReposOperations # type: ignore -from ._dev_ops_configurations_operations import DevOpsConfigurationsOperations # type: ignore -from ._git_hub_owners_operations import GitHubOwnersOperations # type: ignore -from ._git_hub_repos_operations import GitHubReposOperations # type: ignore -from ._git_lab_groups_operations import GitLabGroupsOperations # type: ignore -from ._git_lab_subgroups_operations import GitLabSubgroupsOperations # type: ignore -from ._git_lab_projects_operations import GitLabProjectsOperations # type: ignore -from ._dev_ops_operation_results_operations import DevOpsOperationResultsOperations # type: ignore +from ._standards_operations import StandardsOperations # type: ignore +from ._assignments_operations import AssignmentsOperations # type: ignore +from ._defender_for_storage_operations import DefenderForStorageOperations # type: ignore +from ._private_links_operations import PrivateLinksOperations # type: ignore +from ._private_link_resources_operations import PrivateLinkResourcesOperations # type: ignore +from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations # type: ignore +from ._secure_scores_operations import SecureScoresOperations # type: ignore +from ._secure_score_controls_operations import SecureScoreControlsOperations # type: ignore +from ._secure_score_control_definitions_operations import SecureScoreControlDefinitionsOperations # type: ignore from ._patch import __all__ as _patch_all from ._patch import * @@ -104,10 +105,6 @@ "RegulatoryComplianceControlsOperations", "RegulatoryComplianceAssessmentsOperations", "SubAssessmentsOperations", - "ConnectorsOperations", - "SoftwareInventoriesOperations", - "CustomAssessmentAutomationsOperations", - "CustomEntityStoreAssignmentsOperations", "MdeOnboardingsOperations", "GovernanceAssignmentsOperations", "GovernanceRulesOperations", @@ -119,18 +116,27 @@ "SqlVulnerabilityAssessmentBaselineRulesOperations", "SqlVulnerabilityAssessmentScansOperations", "SqlVulnerabilityAssessmentScanResultsOperations", + "SqlVulnerabilityAssessmentSettingsOperations", "SensitivitySettingsOperations", "HealthReportsOperations", "AutomationsOperations", - "SecurityContactsOperations", "SecurityConnectorsOperations", - "DefenderForStorageOperations", + "AzureDevOpsOrgsOperations", + "AzureDevOpsProjectsOperations", + "AzureDevOpsReposOperations", + "DevOpsConfigurationsOperations", + "GitHubOwnersOperations", + "GitHubReposOperations", + "GitHubIssuesOperations", + "GitLabGroupsOperations", + "GitLabSubgroupsOperations", + "GitLabProjectsOperations", + "DevOpsOperationResultsOperations", "Operations", + "OperationResultsOperations", + "OperationStatusesOperations", "AssessmentsMetadataOperations", "AssessmentsOperations", - "PrivateLinksOperations", - "PrivateLinkResourcesOperations", - "PrivateEndpointConnectionsOperations", "ComplianceResultsOperations", "AdvancedThreatProtectionOperations", "DeviceSecurityGroupsOperations", @@ -142,9 +148,6 @@ "DiscoveredSecuritySolutionsOperations", "ExternalSecuritySolutionsOperations", "JitNetworkAccessPoliciesOperations", - "SecureScoresOperations", - "SecureScoreControlsOperations", - "SecureScoreControlDefinitionsOperations", "SecuritySolutionsOperations", "SecuritySolutionsReferenceDataOperations", "ServerVulnerabilityAssessmentOperations", @@ -157,16 +160,15 @@ "SecurityStandardsOperations", "StandardAssignmentsOperations", "CustomRecommendationsOperations", - "AzureDevOpsOrgsOperations", - "AzureDevOpsProjectsOperations", - "AzureDevOpsReposOperations", - "DevOpsConfigurationsOperations", - "GitHubOwnersOperations", - "GitHubReposOperations", - "GitLabGroupsOperations", - "GitLabSubgroupsOperations", - "GitLabProjectsOperations", - "DevOpsOperationResultsOperations", + "StandardsOperations", + "AssignmentsOperations", + "DefenderForStorageOperations", + "PrivateLinksOperations", + "PrivateLinkResourcesOperations", + "PrivateEndpointConnectionsOperations", + "SecureScoresOperations", + "SecureScoreControlsOperations", + "SecureScoreControlDefinitionsOperations", ] __all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore _patch_sdk() diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_advanced_threat_protection_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_advanced_threat_protection_operations.py index d1474023c0c2..a6cf251a9b2f 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_advanced_threat_protection_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_advanced_threat_protection_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Literal, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Literal, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -156,7 +157,11 @@ def get(self, resource_id: str, **kwargs: Any) -> _models.AdvancedThreatProtecti if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated13, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AdvancedThreatProtectionSetting", pipeline_response.http_response) @@ -276,7 +281,11 @@ def create( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated13, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AdvancedThreatProtectionSetting", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_operations.py index 753d03d2e169..910aff93cffe 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Iterator, Optional, TypeVar, Union, cast, overload +from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -35,7 +35,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -619,7 +620,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -686,7 +691,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -754,7 +763,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -828,7 +841,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -880,7 +897,11 @@ def get_subscription_level(self, asc_location: str, alert_name: str, **kwargs: A if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Alert", pipeline_response.http_response) @@ -941,7 +962,11 @@ def get_resource_group_level( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Alert", pipeline_response.http_response) @@ -998,7 +1023,11 @@ def update_subscription_level_state_to_dismiss( # pylint: disable=inconsistent- if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -1051,7 +1080,11 @@ def update_subscription_level_state_to_resolve( # pylint: disable=inconsistent- if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -1104,7 +1137,11 @@ def update_subscription_level_state_to_activate( # pylint: disable=inconsistent if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -1157,7 +1194,11 @@ def update_subscription_level_state_to_in_progress( # pylint: disable=inconsist if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -1214,7 +1255,11 @@ def update_resource_group_level_state_to_resolve( # pylint: disable=inconsisten if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -1271,7 +1316,11 @@ def update_resource_group_level_state_to_dismiss( # pylint: disable=inconsisten if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -1328,7 +1377,11 @@ def update_resource_group_level_state_to_activate( # pylint: disable=inconsiste if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -1385,7 +1438,11 @@ def update_resource_group_level_state_to_in_progress( # pylint: disable=inconsi if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -1445,7 +1502,11 @@ def _simulate_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated16, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_suppression_rules_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_suppression_rules_operations.py index ccf79009b08e..59b5187f9a6b 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_suppression_rules_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_suppression_rules_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -31,7 +31,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -246,7 +247,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -294,7 +299,11 @@ def get(self, alerts_suppression_rule_name: str, **kwargs: Any) -> _models.Alert if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AlertsSuppressionRule", pipeline_response.http_response) @@ -411,7 +420,11 @@ def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AlertsSuppressionRule", pipeline_response.http_response) @@ -464,7 +477,11 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_allowed_connections_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_allowed_connections_operations.py index acbd49cd2867..31ec44946731 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_allowed_connections_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_allowed_connections_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar, Union +from typing import Any, Callable, Optional, TypeVar, Union from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -209,7 +210,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -277,7 +282,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -341,7 +350,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AllowedConnectionsResource", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_api_collections_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_api_collections_operations.py index 4a6a3e1727ad..f9f135c2cd7a 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_api_collections_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_api_collections_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Iterator, Optional, TypeVar, Union, cast +from typing import Any, Callable, Iterator, Optional, TypeVar, Union, cast from azure.core import PipelineClient from azure.core.exceptions import ( @@ -34,7 +34,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -348,7 +349,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -419,7 +423,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -497,7 +504,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -561,7 +571,10 @@ def get_by_azure_api_management_service( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ApiCollection", pipeline_response.http_response) @@ -613,7 +626,10 @@ def _onboard_azure_api_management_api_initial( # pylint: disable=name-too-long except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -752,7 +768,10 @@ def offboard_azure_api_management_api( # pylint: disable=inconsistent-return-st if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_application_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_application_operations.py index 031a0167d5ef..0582c2612186 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_application_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_application_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -181,7 +182,11 @@ def get(self, application_id: str, **kwargs: Any) -> _models.Application: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated5, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Application", pipeline_response.http_response) @@ -293,7 +298,11 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated5, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Application", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_applications_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_applications_operations.py index 22d32c33e039..29a236efb461 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_applications_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_applications_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -137,7 +138,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated5, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_metadata_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_metadata_operations.py index cfddc6a9eae2..fbc97dfa30cc 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_metadata_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_metadata_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -40,7 +41,7 @@ def build_list_request(**kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -59,7 +60,7 @@ def build_get_request(assessment_metadata_name: str, **kwargs: Any) -> HttpReque _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -83,7 +84,7 @@ def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> H _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -111,7 +112,7 @@ def build_get_in_subscription_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -143,7 +144,7 @@ def build_create_in_subscription_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -178,7 +179,7 @@ def build_delete_in_subscription_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -236,7 +237,7 @@ def list(self, **kwargs: Any) -> ItemPaged["_models.SecurityAssessmentMetadataRe _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[_models.SecurityAssessmentMetadataResponseList] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -281,7 +282,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -309,7 +314,7 @@ def get(self, assessment_metadata_name: str, **kwargs: Any) -> _models.SecurityA _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) _request = build_get_request( @@ -329,7 +334,11 @@ def get(self, assessment_metadata_name: str, **kwargs: Any) -> _models.SecurityA if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityAssessmentMetadataResponse", pipeline_response.http_response) @@ -351,7 +360,7 @@ def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.SecurityAsse _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[_models.SecurityAssessmentMetadataResponseList] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -397,7 +406,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -427,7 +440,7 @@ def get_in_subscription( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) _request = build_get_in_subscription_request( @@ -448,7 +461,11 @@ def get_in_subscription( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityAssessmentMetadataResponse", pipeline_response.http_response) @@ -536,7 +553,7 @@ def create_in_subscription( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) @@ -569,7 +586,11 @@ def create_in_subscription( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityAssessmentMetadataResponse", pipeline_response.http_response) @@ -603,7 +624,7 @@ def delete_in_subscription( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[None] = kwargs.pop("cls", None) _request = build_delete_in_subscription_request( @@ -624,7 +645,11 @@ def delete_in_subscription( # pylint: disable=inconsistent-return-statements if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_operations.py index a845f29eafd4..5c2eef0050ee 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -40,7 +41,7 @@ def build_list_request(scope: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -66,7 +67,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -93,7 +94,7 @@ def build_create_or_update_request(resource_id: str, assessment_name: str, **kwa _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -121,7 +122,7 @@ def build_delete_request(resource_id: str, assessment_name: str, **kwargs: Any) _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -177,7 +178,7 @@ def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.SecurityAssessme _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[_models.SecurityAssessmentList] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -223,7 +224,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -261,7 +266,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[_models.SecurityAssessmentResponse] = kwargs.pop("cls", None) _request = build_get_request( @@ -283,7 +288,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityAssessmentResponse", pipeline_response.http_response) @@ -379,7 +388,7 @@ def create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.SecurityAssessmentResponse] = kwargs.pop("cls", None) @@ -412,7 +421,11 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityAssessmentResponse", pipeline_response.http_response) @@ -447,7 +460,7 @@ def delete( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) cls: ClsType[None] = kwargs.pop("cls", None) _request = build_delete_request( @@ -468,7 +481,11 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated11, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_entity_store_assignments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assignments_operations.py similarity index 66% rename from sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_entity_store_assignments_operations.py rename to sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assignments_operations.py index 058eb6062db6..2657716c00e2 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_entity_store_assignments_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assignments_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -31,36 +31,26 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False -def build_get_request( - resource_group_name: str, custom_entity_store_assignment_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: +def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Security/customEntityStoreAssignments/{customEntityStoreAssignmentName}", - ) + _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assignments") path_format_arguments = { "subscriptionId": _SERIALIZER.url( "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "customEntityStoreAssignmentName": _SERIALIZER.url( - "custom_entity_store_assignment_name", custom_entity_store_assignment_name, "str" - ), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -74,20 +64,17 @@ def build_get_request( return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_create_request( - resource_group_name: str, custom_entity_store_assignment_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: +def build_list_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Security/customEntityStoreAssignments/{customEntityStoreAssignmentName}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments", ) path_format_arguments = { "subscriptionId": _SERIALIZER.url( @@ -96,9 +83,6 @@ def build_create_request( "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" ), - "customEntityStoreAssignmentName": _SERIALIZER.url( - "custom_entity_store_assignment_name", custom_entity_store_assignment_name, "str" - ), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -107,26 +91,22 @@ def build_create_request( _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_delete_request( - resource_group_name: str, custom_entity_store_assignment_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: +def build_get_request(resource_group_name: str, assignment_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Security/customEntityStoreAssignments/{customEntityStoreAssignmentName}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments/{assignmentId}", ) path_format_arguments = { "subscriptionId": _SERIALIZER.url( @@ -135,9 +115,7 @@ def build_delete_request( "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" ), - "customEntityStoreAssignmentName": _SERIALIZER.url( - "custom_entity_store_assignment_name", custom_entity_store_assignment_name, "str" - ), + "assignmentId": _SERIALIZER.url("assignment_id", assignment_id, "str"), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -148,20 +126,23 @@ def build_delete_request( # Construct headers _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: +def build_create_or_update_request( + resource_group_name: str, assignment_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Security/customEntityStoreAssignments", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments/{assignmentId}", ) path_format_arguments = { "subscriptionId": _SERIALIZER.url( @@ -170,6 +151,7 @@ def build_list_by_resource_group_request(resource_group_name: str, subscription_ "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" ), + "assignmentId": _SERIALIZER.url("assignment_id", assignment_id, "str"), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -178,26 +160,32 @@ def build_list_by_resource_group_request(resource_group_name: str, subscription_ _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) -def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) +def build_delete_request( + resource_group_name: str, assignment_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - accept = _headers.pop("Accept", "application/json") - + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) # Construct URL _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/customEntityStoreAssignments" + "template_url", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments/{assignmentId}", ) path_format_arguments = { "subscriptionId": _SERIALIZER.url( "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" ), + "resourceGroupName": _SERIALIZER.url( + "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" + ), + "assignmentId": _SERIALIZER.url("assignment_id", assignment_id, "str"), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -205,20 +193,17 @@ def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> H # Construct parameters _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - -class CustomEntityStoreAssignmentsOperations: +class AssignmentsOperations: """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`custom_entity_store_assignments` attribute. + :attr:`assignments` attribute. """ models = _models @@ -231,22 +216,155 @@ def __init__(self, *args, **kwargs) -> None: self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace - def get( - self, resource_group_name: str, custom_entity_store_assignment_name: str, **kwargs: Any - ) -> _models.CustomEntityStoreAssignment: - """Gets a custom entity store assignment. + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.Assignment"]: + """Get a list of all relevant standardAssignments over a subscription level scope. + + :return: An iterator like instance of either Assignment or the result of cls(response) + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Assignment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - Gets a single custom entity store assignment by name for the provided subscription and resource - group. + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.AssignmentList] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + def extract_data(pipeline_response): + deserialized = self._deserialize("AssignmentList", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.next_link or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.Assignment"]: + """Get a list of all relevant standardAssignments available for scope. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_entity_store_assignment_name: Name of the custom entity store assignment. - Generated name is GUID. Required. - :type custom_entity_store_assignment_name: str - :return: CustomEntityStoreAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomEntityStoreAssignment + :return: An iterator like instance of either Assignment or the result of cls(response) + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Assignment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.AssignmentList] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + def extract_data(pipeline_response): + deserialized = self._deserialize("AssignmentList", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.next_link or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def get(self, resource_group_name: str, assignment_id: str, **kwargs: Any) -> _models.Assignment: + """Get a specific standard assignment for the requested scope by resourceId. + + :param resource_group_name: The name of the resource group within the user's subscription. The + name is case insensitive. Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :return: Assignment or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Assignment :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -260,12 +378,12 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - cls: ClsType[_models.CustomEntityStoreAssignment] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.Assignment] = kwargs.pop("cls", None) _request = build_get_request( resource_group_name=resource_group_name, - custom_entity_store_assignment_name=custom_entity_store_assignment_name, + assignment_id=assignment_id, subscription_id=self._config.subscription_id, api_version=api_version, headers=_headers, @@ -282,9 +400,13 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("CustomEntityStoreAssignment", pipeline_response.http_response) + deserialized = self._deserialize("Assignment", pipeline_response.http_response) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -292,92 +414,85 @@ def get( return deserialized # type: ignore @overload - def create( + def create_or_update( self, resource_group_name: str, - custom_entity_store_assignment_name: str, - custom_entity_store_assignment_request_body: _models.CustomEntityStoreAssignmentRequest, + assignment_id: str, + assignment: _models.Assignment, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CustomEntityStoreAssignment: - """Creates a custom entity store assignment. - - Creates a custom entity store assignment for the provided subscription, if not already exists. + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_entity_store_assignment_name: Name of the custom entity store assignment. - Generated name is GUID. Required. - :type custom_entity_store_assignment_name: str - :param custom_entity_store_assignment_request_body: Custom entity store assignment body. + :param assignment_id: The security assignment key - unique key for the standard assignment. Required. - :type custom_entity_store_assignment_request_body: - ~azure.mgmt.security.models.CustomEntityStoreAssignmentRequest + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Required. + :type assignment: ~azure.mgmt.security.models.Assignment :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: CustomEntityStoreAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomEntityStoreAssignment + :return: Assignment or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Assignment :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def create( + def create_or_update( self, resource_group_name: str, - custom_entity_store_assignment_name: str, - custom_entity_store_assignment_request_body: IO[bytes], + assignment_id: str, + assignment: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CustomEntityStoreAssignment: - """Creates a custom entity store assignment. - - Creates a custom entity store assignment for the provided subscription, if not already exists. + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_entity_store_assignment_name: Name of the custom entity store assignment. - Generated name is GUID. Required. - :type custom_entity_store_assignment_name: str - :param custom_entity_store_assignment_request_body: Custom entity store assignment body. + :param assignment_id: The security assignment key - unique key for the standard assignment. Required. - :type custom_entity_store_assignment_request_body: IO[bytes] + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Required. + :type assignment: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: CustomEntityStoreAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomEntityStoreAssignment + :return: Assignment or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Assignment :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace - def create( + def create_or_update( self, resource_group_name: str, - custom_entity_store_assignment_name: str, - custom_entity_store_assignment_request_body: Union[_models.CustomEntityStoreAssignmentRequest, IO[bytes]], + assignment_id: str, + assignment: Union[_models.Assignment, IO[bytes]], **kwargs: Any - ) -> _models.CustomEntityStoreAssignment: - """Creates a custom entity store assignment. - - Creates a custom entity store assignment for the provided subscription, if not already exists. + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_entity_store_assignment_name: Name of the custom entity store assignment. - Generated name is GUID. Required. - :type custom_entity_store_assignment_name: str - :param custom_entity_store_assignment_request_body: Custom entity store assignment body. Is - either a CustomEntityStoreAssignmentRequest type or a IO[bytes] type. Required. - :type custom_entity_store_assignment_request_body: - ~azure.mgmt.security.models.CustomEntityStoreAssignmentRequest or IO[bytes] - :return: CustomEntityStoreAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomEntityStoreAssignment + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Is either a Assignment + type or a IO[bytes] type. Required. + :type assignment: ~azure.mgmt.security.models.Assignment or IO[bytes] + :return: Assignment or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Assignment :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -391,23 +506,21 @@ def create( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CustomEntityStoreAssignment] = kwargs.pop("cls", None) + cls: ClsType[_models.Assignment] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(custom_entity_store_assignment_request_body, (IOBase, bytes)): - _content = custom_entity_store_assignment_request_body + if isinstance(assignment, (IOBase, bytes)): + _content = assignment else: - _json = self._serialize.body( - custom_entity_store_assignment_request_body, "CustomEntityStoreAssignmentRequest" - ) + _json = self._serialize.body(assignment, "Assignment") - _request = build_create_request( + _request = build_create_or_update_request( resource_group_name=resource_group_name, - custom_entity_store_assignment_name=custom_entity_store_assignment_name, + assignment_id=assignment_id, subscription_id=self._config.subscription_id, api_version=api_version, content_type=content_type, @@ -427,9 +540,13 @@ def create( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("CustomEntityStoreAssignment", pipeline_response.http_response) + deserialized = self._deserialize("Assignment", pipeline_response.http_response) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -438,18 +555,16 @@ def create( @distributed_trace def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, custom_entity_store_assignment_name: str, **kwargs: Any + self, resource_group_name: str, assignment_id: str, **kwargs: Any ) -> None: - """Deleted a custom entity store assignment. - - Delete a custom entity store assignment by name for a provided subscription. + """Delete a standard assignment over a given scope. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_entity_store_assignment_name: Name of the custom entity store assignment. - Generated name is GUID. Required. - :type custom_entity_store_assignment_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str :return: None or the result of cls(response) :rtype: None :raises ~azure.core.exceptions.HttpResponseError: @@ -465,12 +580,12 @@ def delete( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) cls: ClsType[None] = kwargs.pop("cls", None) _request = build_delete_request( resource_group_name=resource_group_name, - custom_entity_store_assignment_name=custom_entity_store_assignment_name, + assignment_id=assignment_id, subscription_id=self._config.subscription_id, api_version=api_version, headers=_headers, @@ -491,141 +606,3 @@ def delete( # pylint: disable=inconsistent-return-statements if cls: return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, **kwargs: Any - ) -> ItemPaged["_models.CustomEntityStoreAssignment"]: - """List custom entity store assignments in a subscription and a resource group. - - List custom entity store assignments by a provided subscription and resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either CustomEntityStoreAssignment or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.CustomEntityStoreAssignment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - cls: ClsType[_models.CustomEntityStoreAssignmentsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("CustomEntityStoreAssignmentsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.CustomEntityStoreAssignment"]: - """List custom entity store assignments in a subscription. - - List custom entity store assignments by provided subscription. - - :return: An iterator like instance of either CustomEntityStoreAssignment or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.CustomEntityStoreAssignment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - cls: ClsType[_models.CustomEntityStoreAssignmentsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("CustomEntityStoreAssignmentsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_auto_provisioning_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_auto_provisioning_settings_operations.py index 53b1c2ac01df..1c235aa4aeeb 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_auto_provisioning_settings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_auto_provisioning_settings_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -204,7 +205,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -252,7 +257,11 @@ def get(self, setting_name: str, **kwargs: Any) -> _models.AutoProvisioningSetti if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AutoProvisioningSetting", pipeline_response.http_response) @@ -361,7 +370,11 @@ def create( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AutoProvisioningSetting", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_automations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_automations_operations.py index 626293d25c79..e858100d3cf7 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_automations_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_automations_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -31,7 +31,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -356,7 +357,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -424,7 +429,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -476,7 +485,11 @@ def get(self, resource_group_name: str, automation_name: str, **kwargs: Any) -> if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Automation", pipeline_response.http_response) @@ -609,7 +622,11 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Automation", pipeline_response.http_response) @@ -739,7 +756,11 @@ def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Automation", pipeline_response.http_response) @@ -796,7 +817,11 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -925,7 +950,11 @@ def validate( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated9, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AutomationValidationStatus", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_orgs_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_orgs_operations.py index d08ba6e55336..7c39bb489d4a 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_orgs_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_orgs_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Iterator, Optional, TypeVar, Union, cast, overload +from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -35,7 +35,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -47,7 +48,7 @@ def build_list_available_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -82,7 +83,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -117,7 +118,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -153,7 +154,7 @@ def build_create_or_update_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -192,7 +193,7 @@ def build_update_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -274,7 +275,7 @@ def list_available( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsOrgListResponse] = kwargs.pop("cls", None) _request = build_list_available_request( @@ -296,7 +297,10 @@ def list_available( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AzureDevOpsOrgListResponse", pipeline_response.http_response) @@ -326,7 +330,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsOrgListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -374,7 +378,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -411,7 +418,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) _request = build_get_request( @@ -434,7 +441,10 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AzureDevOpsOrg", pipeline_response.http_response) @@ -463,7 +473,7 @@ def _create_or_update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) @@ -503,7 +513,10 @@ def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -610,7 +623,7 @@ def begin_create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) @@ -676,7 +689,7 @@ def _update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) @@ -716,7 +729,10 @@ def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -823,7 +839,7 @@ def begin_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_projects_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_projects_operations.py index bf0c278e5f85..1842b58f0992 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_projects_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_projects_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Iterator, Optional, TypeVar, Union, cast, overload +from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -35,7 +35,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -47,7 +48,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -88,7 +89,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -130,7 +131,7 @@ def build_create_or_update_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -175,7 +176,7 @@ def build_update_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -250,7 +251,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsProjectListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -299,7 +300,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -338,7 +342,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) _request = build_get_request( @@ -362,7 +366,10 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AzureDevOpsProject", pipeline_response.http_response) @@ -392,7 +399,7 @@ def _create_or_update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) @@ -433,7 +440,10 @@ def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -549,7 +559,7 @@ def begin_create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) @@ -617,7 +627,7 @@ def _update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) @@ -658,7 +668,10 @@ def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -774,7 +787,7 @@ def begin_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_repos_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_repos_operations.py index a055464bf7c5..426bbe6e46d3 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_repos_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_repos_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Iterator, Optional, TypeVar, Union, cast, overload +from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -35,7 +35,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -52,7 +53,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -95,7 +96,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -139,7 +140,7 @@ def build_create_or_update_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -186,7 +187,7 @@ def build_update_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -265,7 +266,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsRepositoryListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -315,7 +316,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -362,7 +366,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) _request = build_get_request( @@ -387,7 +391,10 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("AzureDevOpsRepository", pipeline_response.http_response) @@ -418,7 +425,7 @@ def _create_or_update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) @@ -460,7 +467,10 @@ def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -585,7 +595,7 @@ def begin_create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) @@ -655,7 +665,7 @@ def _update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) @@ -697,7 +707,10 @@ def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -822,7 +835,7 @@ def begin_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliance_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliance_results_operations.py index 2129ac55de8b..f11ba2fa205b 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliance_results_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliance_results_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -166,7 +167,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated12, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -216,7 +221,11 @@ def get(self, resource_id: str, compliance_result_name: str, **kwargs: Any) -> _ if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated12, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ComplianceResult", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliances_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliances_operations.py index 02ed28ccc000..5bcd82d7c0cd 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliances_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliances_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -164,7 +165,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -216,7 +221,11 @@ def get(self, scope: str, compliance_name: str, **kwargs: Any) -> _models.Compli if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Compliance", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_connectors_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_connectors_operations.py deleted file mode 100644 index 6588c04461ff..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_connectors_operations.py +++ /dev/null @@ -1,453 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/connectors") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(connector_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/connectors/{connectorName}" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "connectorName": _SERIALIZER.url("connector_name", connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request(connector_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/connectors/{connectorName}" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "connectorName": _SERIALIZER.url("connector_name", connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(connector_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/connectors/{connectorName}" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "connectorName": _SERIALIZER.url("connector_name", connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class ConnectorsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`connectors` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.ConnectorSetting"]: - """Cloud accounts connectors of a subscription. - - :return: An iterator like instance of either ConnectorSetting or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ConnectorSetting] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01-preview")) - cls: ClsType[_models.ConnectorSettingList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ConnectorSettingList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, connector_name: str, **kwargs: Any) -> _models.ConnectorSetting: - """Details of a specific cloud account connector. - - :param connector_name: Name of the cloud account connector. Required. - :type connector_name: str - :return: ConnectorSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ConnectorSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01-preview")) - cls: ClsType[_models.ConnectorSetting] = kwargs.pop("cls", None) - - _request = build_get_request( - connector_name=connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ConnectorSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - connector_name: str, - connector_setting: _models.ConnectorSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ConnectorSetting: - """Create a cloud account connector or update an existing one. Connect to your cloud account. For - AWS, use either account credentials or role-based authentication. For GCP, use account - organization credentials. - - :param connector_name: Name of the cloud account connector. Required. - :type connector_name: str - :param connector_setting: Settings for the cloud account connector. Required. - :type connector_setting: ~azure.mgmt.security.models.ConnectorSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ConnectorSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ConnectorSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - connector_name: str, - connector_setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ConnectorSetting: - """Create a cloud account connector or update an existing one. Connect to your cloud account. For - AWS, use either account credentials or role-based authentication. For GCP, use account - organization credentials. - - :param connector_name: Name of the cloud account connector. Required. - :type connector_name: str - :param connector_setting: Settings for the cloud account connector. Required. - :type connector_setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ConnectorSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ConnectorSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, connector_name: str, connector_setting: Union[_models.ConnectorSetting, IO[bytes]], **kwargs: Any - ) -> _models.ConnectorSetting: - """Create a cloud account connector or update an existing one. Connect to your cloud account. For - AWS, use either account credentials or role-based authentication. For GCP, use account - organization credentials. - - :param connector_name: Name of the cloud account connector. Required. - :type connector_name: str - :param connector_setting: Settings for the cloud account connector. Is either a - ConnectorSetting type or a IO[bytes] type. Required. - :type connector_setting: ~azure.mgmt.security.models.ConnectorSetting or IO[bytes] - :return: ConnectorSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ConnectorSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ConnectorSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(connector_setting, (IOBase, bytes)): - _content = connector_setting - else: - _json = self._serialize.body(connector_setting, "ConnectorSetting") - - _request = build_create_or_update_request( - connector_name=connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ConnectorSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete(self, connector_name: str, **kwargs: Any) -> None: # pylint: disable=inconsistent-return-statements - """Delete a cloud account connector from a subscription. - - :param connector_name: Name of the cloud account connector. Required. - :type connector_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - connector_name=connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_recommendations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_recommendations_operations.py index 55d3dce04ea7..4ee6ca7ab5d0 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_recommendations_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_recommendations_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -31,7 +31,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -243,7 +244,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -298,7 +302,10 @@ def get(self, scope: str, custom_recommendation_name: str, **kwargs: Any) -> _mo if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("CustomRecommendation", pipeline_response.http_response) @@ -437,7 +444,10 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("CustomRecommendation", pipeline_response.http_response) @@ -497,7 +507,10 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_defender_for_storage_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_defender_for_storage_operations.py index 0d329765497d..e601f9ad81d7 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_defender_for_storage_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_defender_for_storage_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -19,6 +19,7 @@ ResourceNotModifiedError, map_error, ) +from azure.core.paging import ItemPaged from azure.core.pipeline import PipelineResponse from azure.core.rest import HttpRequest, HttpResponse from azure.core.tracing.decorator import distributed_trace @@ -30,17 +31,44 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False -def build_get_request(resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any) -> HttpRequest: +def build_list_request(resource_id: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings") + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_get_request( + resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -63,11 +91,13 @@ def build_get_request(resource_id: str, setting_name: Union[str, _models.Setting return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_create_request(resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any) -> HttpRequest: +def build_create_request( + resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any +) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -94,12 +124,12 @@ def build_create_request(resource_id: str, setting_name: Union[str, _models.Sett def build_start_malware_scan_request( - resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any + resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -124,12 +154,12 @@ def build_start_malware_scan_request( def build_cancel_malware_scan_request( - resource_id: str, setting_name: Union[str, _models.SettingName], scan_id: str, **kwargs: Any + resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], scan_id: str, **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -160,12 +190,12 @@ def build_cancel_malware_scan_request( def build_get_malware_scan_request( - resource_id: str, setting_name: Union[str, _models.SettingName], scan_id: str, **kwargs: Any + resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], scan_id: str, **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -214,16 +244,86 @@ def __init__(self, *args, **kwargs) -> None: self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + @distributed_trace + def list(self, resource_id: str, **kwargs: Any) -> ItemPaged["_models.DefenderForStorageSetting"]: + """Lists the Defender for Storage settings for the specified storage account. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :return: An iterator like instance of either DefenderForStorageSetting or the result of + cls(response) + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.DefenderForStorageSetting] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + cls: ClsType[_models.DefenderForStorageSettingList] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + def extract_data(pipeline_response): + deserialized = self._deserialize("DefenderForStorageSettingList", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated20, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + @distributed_trace def get( - self, resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any + self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any ) -> _models.DefenderForStorageSetting: """Gets the Defender for Storage settings for the specified storage account. :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :return: DefenderForStorageSetting or the result of cls(response) :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting :raises ~azure.core.exceptions.HttpResponseError: @@ -239,7 +339,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) cls: ClsType[_models.DefenderForStorageSetting] = kwargs.pop("cls", None) _request = build_get_request( @@ -260,7 +360,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated20, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("DefenderForStorageSetting", pipeline_response.http_response) @@ -273,7 +377,7 @@ def get( def create( self, resource_id: str, - setting_name: Union[str, _models.SettingName], + setting_name: Union[str, _models.SettingNameAutoGenerated], defender_for_storage_setting: _models.DefenderForStorageSetting, *, content_type: str = "application/json", @@ -284,7 +388,7 @@ def create( :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :param defender_for_storage_setting: Defender for Storage Settings. Required. :type defender_for_storage_setting: ~azure.mgmt.security.models.DefenderForStorageSetting :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. @@ -299,7 +403,7 @@ def create( def create( self, resource_id: str, - setting_name: Union[str, _models.SettingName], + setting_name: Union[str, _models.SettingNameAutoGenerated], defender_for_storage_setting: IO[bytes], *, content_type: str = "application/json", @@ -310,7 +414,7 @@ def create( :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :param defender_for_storage_setting: Defender for Storage Settings. Required. :type defender_for_storage_setting: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. @@ -325,7 +429,7 @@ def create( def create( self, resource_id: str, - setting_name: Union[str, _models.SettingName], + setting_name: Union[str, _models.SettingNameAutoGenerated], defender_for_storage_setting: Union[_models.DefenderForStorageSetting, IO[bytes]], **kwargs: Any ) -> _models.DefenderForStorageSetting: @@ -334,7 +438,7 @@ def create( :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :param defender_for_storage_setting: Defender for Storage Settings. Is either a DefenderForStorageSetting type or a IO[bytes] type. Required. :type defender_for_storage_setting: ~azure.mgmt.security.models.DefenderForStorageSetting or @@ -354,7 +458,7 @@ def create( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.DefenderForStorageSetting] = kwargs.pop("cls", None) @@ -387,7 +491,11 @@ def create( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated20, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("DefenderForStorageSetting", pipeline_response.http_response) @@ -398,14 +506,15 @@ def create( @distributed_trace def start_malware_scan( - self, resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any + self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any ) -> _models.MalwareScan: - """Initiate a Defender for Storage malware scan for the specified storage account. + """Initiate a Defender for Storage malware scan for the specified storage account. Blobs and Files + will be scanned for malware. :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :return: MalwareScan or the result of cls(response) :rtype: ~azure.mgmt.security.models.MalwareScan :raises ~azure.core.exceptions.HttpResponseError: @@ -421,7 +530,7 @@ def start_malware_scan( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) _request = build_start_malware_scan_request( @@ -442,7 +551,11 @@ def start_malware_scan( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated20, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("MalwareScan", pipeline_response.http_response) @@ -453,14 +566,14 @@ def start_malware_scan( @distributed_trace def cancel_malware_scan( - self, resource_id: str, setting_name: Union[str, _models.SettingName], scan_id: str, **kwargs: Any + self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], scan_id: str, **kwargs: Any ) -> _models.MalwareScan: """Cancels a Defender for Storage malware scan for the specified storage account. :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :param scan_id: The identifier of the scan. Can be either 'latest' or a GUID. Required. :type scan_id: str :return: MalwareScan or the result of cls(response) @@ -478,7 +591,7 @@ def cancel_malware_scan( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) _request = build_cancel_malware_scan_request( @@ -500,7 +613,11 @@ def cancel_malware_scan( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated20, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("MalwareScan", pipeline_response.http_response) @@ -511,14 +628,14 @@ def cancel_malware_scan( @distributed_trace def get_malware_scan( - self, resource_id: str, setting_name: Union[str, _models.SettingName], scan_id: str, **kwargs: Any + self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], scan_id: str, **kwargs: Any ) -> _models.MalwareScan: """Gets the Defender for Storage malware scan for the specified storage resource. :param resource_id: The identifier of the resource. Required. :type resource_id: str :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName + :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated :param scan_id: The identifier of the scan. Can be either 'latest' or a GUID. Required. :type scan_id: str :return: MalwareScan or the result of cls(response) @@ -536,7 +653,7 @@ def get_malware_scan( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) _request = build_get_malware_scan_request( @@ -558,7 +675,11 @@ def get_malware_scan( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated20, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("MalwareScan", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_configurations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_configurations_operations.py index 0ec7e49f9348..e52e65eae070 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_configurations_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_configurations_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Iterator, Optional, TypeVar, Union, cast, overload +from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -35,7 +35,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -47,7 +48,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -82,7 +83,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -117,7 +118,7 @@ def build_create_or_update_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -155,7 +156,7 @@ def build_update_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -193,7 +194,7 @@ def build_delete_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -261,7 +262,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.DevOpsConfigurationListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -309,7 +310,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -342,7 +346,7 @@ def get(self, resource_group_name: str, security_connector_name: str, **kwargs: _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) _request = build_get_request( @@ -364,7 +368,10 @@ def get(self, resource_group_name: str, security_connector_name: str, **kwargs: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("DevOpsConfiguration", pipeline_response.http_response) @@ -392,7 +399,7 @@ def _create_or_update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) @@ -431,7 +438,10 @@ def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -529,7 +539,7 @@ def begin_create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) @@ -593,7 +603,7 @@ def _update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) @@ -632,7 +642,10 @@ def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -730,7 +743,7 @@ def begin_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) @@ -788,7 +801,7 @@ def _delete_initial(self, resource_group_name: str, security_connector_name: str _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) _request = build_delete_request( @@ -815,7 +828,10 @@ def _delete_initial(self, resource_group_name: str, security_connector_name: str except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -843,7 +859,7 @@ def begin_delete(self, resource_group_name: str, security_connector_name: str, * _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[None] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_operation_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_operation_results_operations.py index de51a6ad324a..b8cccd60a209 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_operation_results_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_operation_results_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -45,7 +46,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -124,7 +125,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.OperationStatusResult] = kwargs.pop("cls", None) _request = build_get_request( @@ -147,7 +148,10 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("OperationStatusResult", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_device_security_groups_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_device_security_groups_operations.py index 2d4f10e65d92..ea39e9fc9ae5 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_device_security_groups_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_device_security_groups_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -222,7 +223,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -273,7 +278,11 @@ def get(self, resource_id: str, device_security_group_name: str, **kwargs: Any) if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("DeviceSecurityGroup", pipeline_response.http_response) @@ -405,7 +414,11 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("DeviceSecurityGroup", pipeline_response.http_response) @@ -461,7 +474,11 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_discovered_security_solutions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_discovered_security_solutions_operations.py index ffedd23b8e62..b3c6ba075828 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_discovered_security_solutions_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_discovered_security_solutions_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -213,7 +214,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -281,7 +286,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -339,7 +348,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("DiscoveredSecuritySolution", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_external_security_solutions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_external_security_solutions_operations.py index 13316d5b2e96..bd6900007a4c 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_external_security_solutions_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_external_security_solutions_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -213,7 +214,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -281,7 +286,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -339,7 +348,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ExternalSecuritySolution", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_issues_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_issues_operations.py new file mode 100644 index 000000000000..1e340349ecb7 --- /dev/null +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_issues_operations.py @@ -0,0 +1,334 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +from collections.abc import MutableMapping +from io import IOBase +from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload + +from azure.core import PipelineClient +from azure.core.exceptions import ( + ClientAuthenticationError, + HttpResponseError, + ResourceExistsError, + ResourceNotFoundError, + ResourceNotModifiedError, + StreamClosedError, + StreamConsumedError, + map_error, +) +from azure.core.pipeline import PipelineResponse +from azure.core.polling import LROPoller, NoPolling, PollingMethod +from azure.core.rest import HttpRequest, HttpResponse +from azure.core.tracing.decorator import distributed_trace +from azure.core.utils import case_insensitive_dict +from azure.mgmt.core.exceptions import ARMErrorFormat +from azure.mgmt.core.polling.arm_polling import ARMPolling + +from .. import models as _models +from .._configuration import SecurityCenterConfiguration +from .._utils.serialization import Deserializer, Serializer + +T = TypeVar("T") +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list + +_SERIALIZER = Serializer() +_SERIALIZER.client_side_validation = False + + +def build_create_request( + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop( + "template_url", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}/repos/{repoName}/issues", + ) + path_format_arguments = { + "subscriptionId": _SERIALIZER.url( + "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" + ), + "resourceGroupName": _SERIALIZER.url( + "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 + ), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "ownerName": _SERIALIZER.url("owner_name", owner_name, "str"), + "repoName": _SERIALIZER.url("repo_name", repo_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +class GitHubIssuesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityCenter`'s + :attr:`git_hub_issues` attribute. + """ + + models = _models + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + def _create_initial( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[Union[_models.IssueCreationRequest, IO[bytes]]] = None, + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if create_issue_request else None + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if create_issue_request else None + _json = None + _content = None + if isinstance(create_issue_request, (IOBase, bytes)): + _content = create_issue_request + else: + if create_issue_request is not None: + _json = self._serialize.body(create_issue_request, "IssueCreationRequest") + else: + _json = None + + _request = build_create_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + repo_name=repo_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + json=_json, + content=_content, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[_models.IssueCreationRequest] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: The GitHub owner name. Required. + :type owner_name: str + :param repo_name: The repository name. Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Default value is None. + :type create_issue_request: ~azure.mgmt.security.models.IssueCreationRequest + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns either None or the result of cls(response) + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[IO[bytes]] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: The GitHub owner name. Required. + :type owner_name: str + :param repo_name: The repository name. Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Default value is None. + :type create_issue_request: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns either None or the result of cls(response) + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[Union[_models.IssueCreationRequest, IO[bytes]]] = None, + **kwargs: Any + ) -> LROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: The GitHub owner name. Required. + :type owner_name: str + :param repo_name: The repository name. Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Is either a IssueCreationRequest type or a IO[bytes] type. Default value is None. + :type create_issue_request: ~azure.mgmt.security.models.IssueCreationRequest or IO[bytes] + :return: An instance of LROPoller that returns either None or the result of cls(response) + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if create_issue_request else None + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._create_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + repo_name=repo_name, + create_issue_request=create_issue_request, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_owners_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_owners_operations.py index b2cd8e108b29..79fdf21b94a1 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_owners_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_owners_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -42,7 +43,7 @@ def build_list_available_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -77,7 +78,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -112,7 +113,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -189,7 +190,7 @@ def list_available( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitHubOwnerListResponse] = kwargs.pop("cls", None) _request = build_list_available_request( @@ -211,7 +212,10 @@ def list_available( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitHubOwnerListResponse", pipeline_response.http_response) @@ -241,7 +245,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitHubOwnerListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -289,7 +293,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -326,7 +333,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitHubOwner] = kwargs.pop("cls", None) _request = build_get_request( @@ -349,7 +356,10 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitHubOwner", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_repos_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_repos_operations.py index 53602bf2552e..68e923addbe1 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_repos_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_repos_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -42,7 +43,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -83,7 +84,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -155,7 +156,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitHubRepositoryListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -204,7 +205,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -243,7 +247,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitHubRepository] = kwargs.pop("cls", None) _request = build_get_request( @@ -267,7 +271,10 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitHubRepository", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_groups_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_groups_operations.py index 3900f45fd2f2..eebca6592b89 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_groups_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_groups_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -42,7 +43,7 @@ def build_list_available_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -77,7 +78,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -112,7 +113,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -189,7 +190,7 @@ def list_available( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) _request = build_list_available_request( @@ -211,7 +212,10 @@ def list_available( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitLabGroupListResponse", pipeline_response.http_response) @@ -241,7 +245,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -289,7 +293,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -326,7 +333,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitLabGroup] = kwargs.pop("cls", None) _request = build_get_request( @@ -349,7 +356,10 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitLabGroup", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_projects_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_projects_operations.py index 88e718089305..3f2da60fb33e 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_projects_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_projects_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -42,7 +43,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -83,7 +84,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -157,7 +158,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitLabProjectListResponse] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -206,7 +207,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -252,7 +256,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitLabProject] = kwargs.pop("cls", None) _request = build_get_request( @@ -276,7 +280,10 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitLabProject", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_subgroups_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_subgroups_operations.py index 3f3c0a6ea86e..0b27e752ebb3 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_subgroups_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_subgroups_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -41,7 +42,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -120,7 +121,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-03-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) _request = build_list_request( @@ -143,7 +144,10 @@ def list( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated2, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GitLabGroupListResponse", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_assignments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_assignments_operations.py index 3aae237ea1a9..6b87879c96df 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_assignments_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_assignments_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -31,7 +31,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -233,7 +234,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -290,7 +295,11 @@ def get(self, scope: str, assessment_name: str, assignment_key: str, **kwargs: A if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GovernanceAssignment", pipeline_response.http_response) @@ -438,7 +447,11 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GovernanceAssignment", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_rules_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_rules_operations.py index a0f88303071d..b5762a1ad442 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_rules_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_rules_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Iterator, Optional, TypeVar, Union, cast, overload +from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -35,7 +35,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -275,7 +276,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -330,7 +335,11 @@ def get(self, scope: str, rule_id: str, **kwargs: Any) -> _models.GovernanceRule if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GovernanceRule", pipeline_response.http_response) @@ -467,7 +476,11 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GovernanceRule", pipeline_response.http_response) @@ -606,9 +619,10 @@ def _execute_initial( api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if execute_governance_rule_params else None cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - content_type = content_type or "application/json" + content_type = content_type or "application/json" if execute_governance_rule_params else None _json = None _content = None if isinstance(execute_governance_rule_params, (IOBase, bytes)): @@ -645,7 +659,11 @@ def _execute_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} response_headers["location"] = self._deserialize("str", response.headers.get("location")) @@ -753,6 +771,7 @@ def begin_execute( api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if execute_governance_rule_params else None cls: ClsType[None] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) @@ -848,7 +867,11 @@ def operation_results( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated4, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = None response_headers = {} diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_health_reports_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_health_reports_operations.py index ada43865f2b7..122490cb13e2 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_health_reports_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_health_reports_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -170,7 +171,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -222,7 +226,10 @@ def get(self, resource_id: str, health_report_name: str, **kwargs: Any) -> _mode if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("HealthReport", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_information_protection_policies_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_information_protection_policies_operations.py index ad991e0f85e0..0dc08f1a479f 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_information_protection_policies_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_information_protection_policies_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -199,7 +200,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("InformationProtectionPolicy", pipeline_response.http_response) @@ -338,7 +343,11 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("InformationProtectionPolicy", pipeline_response.http_response) @@ -409,7 +418,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_analytics_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_analytics_operations.py index d7dc20f03c15..200a00d44d09 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_analytics_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_analytics_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -170,7 +171,11 @@ def list( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecuritySolutionAnalyticsModelList", pipeline_response.http_response) @@ -227,7 +232,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecuritySolutionAnalyticsModel", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_operations.py index 36aaca8537c2..145be5bc664a 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -31,7 +31,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -332,7 +333,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -406,7 +411,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -458,7 +467,11 @@ def get(self, resource_group_name: str, solution_name: str, **kwargs: Any) -> _m if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecuritySolutionModel", pipeline_response.http_response) @@ -589,7 +602,11 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecuritySolutionModel", pipeline_response.http_response) @@ -724,7 +741,11 @@ def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecuritySolutionModel", pipeline_response.http_response) @@ -781,7 +802,11 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py index 5127b86d5f89..52beeb8af399 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -234,7 +235,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -292,7 +297,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecurityAggregatedAlert", pipeline_response.http_response) @@ -352,7 +361,11 @@ def dismiss( # pylint: disable=inconsistent-return-statements if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_recommendation_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_recommendation_operations.py index d73407370e76..5227f779877e 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_recommendation_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_recommendation_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -187,7 +188,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("IoTSecurityAggregatedRecommendation", pipeline_response.http_response) @@ -268,7 +273,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated14, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_jit_network_access_policies_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_jit_network_access_policies_operations.py index ed5f4d04dca8..317812068d09 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_jit_network_access_policies_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_jit_network_access_policies_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Literal, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Literal, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -31,7 +31,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -419,7 +420,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -488,7 +493,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -559,7 +568,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -634,7 +647,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -694,7 +711,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("JitNetworkAccessPolicy", pipeline_response.http_response) @@ -839,7 +860,11 @@ def create_or_update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("JitNetworkAccessPolicy", pipeline_response.http_response) @@ -901,7 +926,11 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -1047,7 +1076,11 @@ def initiate( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("JitNetworkAccessRequest", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_locations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_locations_operations.py index 9451451b1bed..7d057ab03e0c 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_locations_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_locations_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_mde_onboardings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_mde_onboardings_operations.py index 0fe618e2fcae..6a11903867b6 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_mde_onboardings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_mde_onboardings_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -28,7 +28,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -146,7 +147,11 @@ def list(self, **kwargs: Any) -> _models.MdeOnboardingDataList: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated3, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("MdeOnboardingDataList", pipeline_response.http_response) @@ -194,7 +199,11 @@ def get(self, **kwargs: Any) -> _models.MdeOnboardingData: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated3, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("MdeOnboardingData", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_results_operations.py new file mode 100644 index 000000000000..9b186daa16f0 --- /dev/null +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_results_operations.py @@ -0,0 +1,148 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +from collections.abc import MutableMapping +from typing import Any, Callable, Optional, TypeVar + +from azure.core import PipelineClient +from azure.core.exceptions import ( + ClientAuthenticationError, + HttpResponseError, + ResourceExistsError, + ResourceNotFoundError, + ResourceNotModifiedError, + map_error, +) +from azure.core.pipeline import PipelineResponse +from azure.core.rest import HttpRequest, HttpResponse +from azure.core.tracing.decorator import distributed_trace +from azure.core.utils import case_insensitive_dict +from azure.mgmt.core.exceptions import ARMErrorFormat + +from .. import models as _models +from .._configuration import SecurityCenterConfiguration +from .._utils.serialization import Deserializer, Serializer + +T = TypeVar("T") +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list + +_SERIALIZER = Serializer() +_SERIALIZER.client_side_validation = False + + +def build_get_request(location: str, operation_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop( + "template_url", + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{location}/operationResults/{operationId}", + ) + path_format_arguments = { + "subscriptionId": _SERIALIZER.url( + "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" + ), + "location": _SERIALIZER.url("location", location, "str", min_length=1), + "operationId": _SERIALIZER.url("operation_id", operation_id, "str", min_length=1), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +class OperationResultsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityCenter`'s + :attr:`operation_results` attribute. + """ + + models = _models + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( # pylint: disable=inconsistent-return-statements + self, location: str, operation_id: str, **kwargs: Any + ) -> None: + """Returns operation results for long running operations. + + :param location: The name of the Azure region. Required. + :type location: str + :param operation_id: The ID of an ongoing async operation. Required. + :type operation_id: str + :return: None or the result of cls(response) + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_get_request( + location=location, + operation_id=operation_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + if cls: + return cls(pipeline_response, None, response_headers) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_statuses_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_statuses_operations.py new file mode 100644 index 000000000000..558f806ba6a6 --- /dev/null +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_statuses_operations.py @@ -0,0 +1,145 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +from collections.abc import MutableMapping +from typing import Any, Callable, Optional, TypeVar + +from azure.core import PipelineClient +from azure.core.exceptions import ( + ClientAuthenticationError, + HttpResponseError, + ResourceExistsError, + ResourceNotFoundError, + ResourceNotModifiedError, + map_error, +) +from azure.core.pipeline import PipelineResponse +from azure.core.rest import HttpRequest, HttpResponse +from azure.core.tracing.decorator import distributed_trace +from azure.core.utils import case_insensitive_dict +from azure.mgmt.core.exceptions import ARMErrorFormat + +from .. import models as _models +from .._configuration import SecurityCenterConfiguration +from .._utils.serialization import Deserializer, Serializer + +T = TypeVar("T") +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list + +_SERIALIZER = Serializer() +_SERIALIZER.client_side_validation = False + + +def build_get_request(location: str, operation_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop( + "template_url", + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{location}/operationStatuses/{operationId}", + ) + path_format_arguments = { + "subscriptionId": _SERIALIZER.url( + "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" + ), + "location": _SERIALIZER.url("location", location, "str", min_length=1), + "operationId": _SERIALIZER.url("operation_id", operation_id, "str", min_length=1), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +class OperationStatusesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityCenter`'s + :attr:`operation_statuses` attribute. + """ + + models = _models + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, location: str, operation_id: str, **kwargs: Any) -> _models.OperationStatusResultAutoGenerated: + """Get the status of a long running azure asynchronous operation. + + :param location: The name of the Azure region. Required. + :type location: str + :param operation_id: The ID of an ongoing async operation. Required. + :type operation_id: str + :return: OperationStatusResultAutoGenerated or the result of cls(response) + :rtype: ~azure.mgmt.security.models.OperationStatusResultAutoGenerated + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + cls: ClsType[_models.OperationStatusResultAutoGenerated] = kwargs.pop("cls", None) + + _request = build_get_request( + location=location, + operation_id=operation_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize("OperationStatusResultAutoGenerated", pipeline_response.http_response) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operations.py index f95bc2d80d33..ae647923ac13 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -39,7 +40,7 @@ def build_list_request(**kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -84,7 +85,7 @@ def list(self, **kwargs: Any) -> ItemPaged["_models.Operation"]: _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -129,7 +130,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_pricings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_pricings_operations.py index a5d2896eb673..75aa244cd744 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_pricings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_pricings_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -208,7 +209,11 @@ def get(self, scope_id: str, pricing_name: str, **kwargs: Any) -> _models.Pricin if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated18, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Pricing", pipeline_response.http_response) @@ -344,7 +349,11 @@ def update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated18, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Pricing", pipeline_response.http_response) @@ -358,8 +367,8 @@ def delete( # pylint: disable=inconsistent-return-statements self, scope_id: str, pricing_name: str, **kwargs: Any ) -> None: """Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. - Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS and ARC - MachinesS'). + Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS, ARC Machines, + and Containers'). :param scope_id: The identifier of the resource, (format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}). @@ -403,7 +412,11 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated18, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @@ -460,7 +473,11 @@ def list(self, scope_id: str, filter: Optional[str] = None, **kwargs: Any) -> _m if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated18, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("PricingList", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_endpoint_connections_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_endpoint_connections_operations.py index 8f7b3006fe07..30cd29a7199a 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_endpoint_connections_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_endpoint_connections_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Iterator, Optional, TypeVar, Union, cast, overload +from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -35,7 +35,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -47,7 +48,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -93,7 +94,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -142,7 +143,7 @@ def build_create_or_update_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -194,7 +195,7 @@ def build_delete_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -272,7 +273,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -323,7 +324,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -364,7 +368,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) _private_link_name = None @@ -391,7 +395,10 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) @@ -420,7 +427,7 @@ def _create_or_update_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) @@ -463,7 +470,10 @@ def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -571,7 +581,7 @@ def begin_create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) @@ -636,7 +646,7 @@ def _delete_initial( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) _private_link_name = None @@ -668,7 +678,10 @@ def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -711,7 +724,7 @@ def begin_delete( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[None] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_link_resources_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_link_resources_operations.py index 6521f97e383b..d4533f55f588 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_link_resources_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_link_resources_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -42,7 +43,7 @@ def build_list_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -84,7 +85,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -160,7 +161,7 @@ def list( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateLinkResourceListResult] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -211,7 +212,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -250,7 +254,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateLinkResourceAutoGenerated] = kwargs.pop("cls", None) _private_link_name = None @@ -277,7 +281,10 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("PrivateLinkResourceAutoGenerated", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_links_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_links_operations.py index a00d88019a76..eee687cca1c0 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_links_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_links_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Iterator, Optional, TypeVar, Union, cast, overload +from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -35,7 +35,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -45,7 +46,7 @@ def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> H _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -71,7 +72,7 @@ def build_list_request(resource_group_name: str, subscription_id: str, **kwargs: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -105,7 +106,7 @@ def build_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -147,7 +148,7 @@ def build_head_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -189,7 +190,7 @@ def build_create_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -234,7 +235,7 @@ def build_update_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -279,7 +280,7 @@ def build_delete_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -348,7 +349,7 @@ def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.PrivateLinkR _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateLinksList] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -394,7 +395,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -418,7 +422,7 @@ def list(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.Pr _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateLinksList] = kwargs.pop("cls", None) error_map: MutableMapping = { @@ -465,7 +469,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -499,7 +506,7 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) _private_link_name = None @@ -525,7 +532,10 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("PrivateLinkResource", pipeline_response.http_response) @@ -561,7 +571,7 @@ def head( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[None] = kwargs.pop("cls", None) _private_link_name = None @@ -587,7 +597,10 @@ def head( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: @@ -612,7 +625,7 @@ def _create_initial( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) @@ -654,7 +667,10 @@ def _create_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) @@ -757,7 +773,7 @@ def begin_create( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) @@ -895,7 +911,7 @@ def update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) @@ -932,7 +948,10 @@ def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("PrivateLinkResource", pipeline_response.http_response) @@ -956,7 +975,7 @@ def _delete_initial( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) _private_link_name = None @@ -987,7 +1006,10 @@ def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponseAutoGenerated, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponseAutoGenerated2, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -1024,7 +1046,7 @@ def begin_delete( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) cls: ClsType[None] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_assessments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_assessments_operations.py index dd7740f5bc62..1cb2844e4f93 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_assessments_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_assessments_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -219,7 +220,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -282,7 +287,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("RegulatoryComplianceAssessment", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_controls_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_controls_operations.py index e5a6b8880a57..6b7a9654bbd9 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_controls_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_controls_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -198,7 +199,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -253,7 +258,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("RegulatoryComplianceControl", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_standards_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_standards_operations.py index 763a9f30e893..6dc13ae8e1c9 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_standards_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_standards_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -178,7 +179,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -227,7 +232,11 @@ def get(self, regulatory_compliance_standard_name: str, **kwargs: Any) -> _model if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("RegulatoryComplianceStandard", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_control_definitions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_control_definitions_operations.py index 2f732c3f3050..2fadfc18c77d 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_control_definitions_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_control_definitions_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -159,7 +160,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -225,7 +230,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_controls_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_controls_operations.py index 435eaaeb9543..ee7fada8a255 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_controls_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_controls_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar, Union +from typing import Any, Callable, Optional, TypeVar, Union from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -192,7 +193,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -261,7 +266,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_scores_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_scores_operations.py index 791b42cea600..f3a5447743c9 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_scores_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_scores_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -167,7 +168,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -217,7 +222,11 @@ def get(self, secure_score_name: str, **kwargs: Any) -> _models.SecureScoreItem: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecureScoreItem", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_application_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_application_operations.py index c2ccaba7b9bd..bcc31cf94441 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_application_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_application_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -212,7 +213,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated5, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Application", pipeline_response.http_response) @@ -355,7 +360,11 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated5, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Application", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_applications_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_applications_operations.py index c8693119a90e..ee30c6e00f46 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_applications_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_applications_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -156,7 +157,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated5, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connectors_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connectors_operations.py index 2b842b52686b..35166fcc323c 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connectors_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connectors_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -31,7 +31,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -318,7 +319,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated10, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -386,7 +391,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated10, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -438,7 +447,11 @@ def get(self, resource_group_name: str, security_connector_name: str, **kwargs: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated10, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityConnector", pipeline_response.http_response) @@ -571,7 +584,11 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated10, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityConnector", pipeline_response.http_response) @@ -701,7 +718,11 @@ def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated10, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityConnector", pipeline_response.http_response) @@ -758,7 +779,11 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated10, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_contacts_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_contacts_operations.py deleted file mode 100644 index 050606d65846..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_contacts_operations.py +++ /dev/null @@ -1,463 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - security_contact_name: Union[str, _models.SecurityContactName], subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "securityContactName": _SERIALIZER.url("security_contact_name", security_contact_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_request( - security_contact_name: Union[str, _models.SecurityContactName], subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "securityContactName": _SERIALIZER.url("security_contact_name", security_contact_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - security_contact_name: Union[str, _models.SecurityContactName], subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "securityContactName": _SERIALIZER.url("security_contact_name", security_contact_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class SecurityContactsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`security_contacts` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.SecurityContact"]: - """List all security contact configurations for the subscription. - - :return: An iterator like instance of either SecurityContact or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityContact] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[_models.SecurityContactList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityContactList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, security_contact_name: Union[str, _models.SecurityContactName], **kwargs: Any - ) -> _models.SecurityContact: - """Get Default Security contact configurations for the subscription. - - :param security_contact_name: Name of the security contact object. "default" Required. - :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName - :return: SecurityContact or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityContact - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[_models.SecurityContact] = kwargs.pop("cls", None) - - _request = build_get_request( - security_contact_name=security_contact_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityContact", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create( - self, - security_contact_name: Union[str, _models.SecurityContactName], - security_contact: _models.SecurityContact, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityContact: - """Create security contact configurations for the subscription. - - :param security_contact_name: Name of the security contact object. "default" Required. - :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName - :param security_contact: Security contact object. Required. - :type security_contact: ~azure.mgmt.security.models.SecurityContact - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityContact or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityContact - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create( - self, - security_contact_name: Union[str, _models.SecurityContactName], - security_contact: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityContact: - """Create security contact configurations for the subscription. - - :param security_contact_name: Name of the security contact object. "default" Required. - :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName - :param security_contact: Security contact object. Required. - :type security_contact: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityContact or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityContact - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create( - self, - security_contact_name: Union[str, _models.SecurityContactName], - security_contact: Union[_models.SecurityContact, IO[bytes]], - **kwargs: Any - ) -> _models.SecurityContact: - """Create security contact configurations for the subscription. - - :param security_contact_name: Name of the security contact object. "default" Required. - :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName - :param security_contact: Security contact object. Is either a SecurityContact type or a - IO[bytes] type. Required. - :type security_contact: ~azure.mgmt.security.models.SecurityContact or IO[bytes] - :return: SecurityContact or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityContact - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SecurityContact] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(security_contact, (IOBase, bytes)): - _content = security_contact - else: - _json = self._serialize.body(security_contact, "SecurityContact") - - _request = build_create_request( - security_contact_name=security_contact_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityContact", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, security_contact_name: Union[str, _models.SecurityContactName], **kwargs: Any - ) -> None: - """Delete security contact configurations for the subscription. - - :param security_contact_name: Name of the security contact object. "default" Required. - :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - security_contact_name=security_contact_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_operators_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_operators_operations.py index 7f1635799573..745f7ceb770c 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_operators_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_operators_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -254,7 +255,11 @@ def list(self, pricing_name: str, **kwargs: Any) -> _models.SecurityOperatorList if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated6, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityOperatorList", pipeline_response.http_response) @@ -308,7 +313,11 @@ def get(self, pricing_name: str, security_operator_name: str, **kwargs: Any) -> if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated6, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityOperator", pipeline_response.http_response) @@ -364,7 +373,11 @@ def create_or_update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated6, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityOperator", pipeline_response.http_response) @@ -420,7 +433,11 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated6, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_operations.py index 0df11458a571..9b251e508537 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -174,7 +175,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -232,7 +237,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecuritySolution", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_reference_data_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_reference_data_operations.py index 0b33009bda2d..f2906c89c0dc 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_reference_data_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_reference_data_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -151,7 +152,11 @@ def list(self, **kwargs: Any) -> _models.SecuritySolutionsReferenceDataList: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecuritySolutionsReferenceDataList", pipeline_response.http_response) @@ -203,7 +208,11 @@ def list_by_home_region(self, asc_location: str, **kwargs: Any) -> _models.Secur if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecuritySolutionsReferenceDataList", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_standards_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_standards_operations.py index e0be7c402572..9807b145706b 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_standards_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_standards_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -31,7 +31,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -227,7 +228,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -282,7 +286,10 @@ def get(self, scope: str, standard_id: str, **kwargs: Any) -> _models.SecuritySt if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityStandard", pipeline_response.http_response) @@ -417,7 +424,10 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecurityStandard", pipeline_response.http_response) @@ -477,7 +487,10 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sensitivity_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sensitivity_settings_operations.py index 11ce589758d8..38f2a77a3e2d 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sensitivity_settings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sensitivity_settings_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -206,7 +207,11 @@ def create_or_update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated8, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GetSensitivitySettingsResponse", pipeline_response.http_response) @@ -253,7 +258,11 @@ def get(self, **kwargs: Any) -> _models.GetSensitivitySettingsResponse: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated8, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GetSensitivitySettingsResponse", pipeline_response.http_response) @@ -300,7 +309,11 @@ def list(self, **kwargs: Any) -> _models.GetSensitivitySettingsListResponse: if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated8, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("GetSensitivitySettingsListResponse", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessment_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessment_operations.py index 5e3b53bbf081..320065343ffb 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessment_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessment_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Iterator, Literal, Optional, TypeVar, Union, cast +from typing import Any, Callable, Iterator, Literal, Optional, TypeVar, Union, cast from azure.core import PipelineClient from azure.core.exceptions import ( @@ -33,7 +33,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -292,7 +293,11 @@ def list_by_extended_resource( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ServerVulnerabilityAssessmentsList", pipeline_response.http_response) @@ -357,7 +362,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ServerVulnerabilityAssessment", pipeline_response.http_response) @@ -423,7 +432,11 @@ def create_or_update( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ServerVulnerabilityAssessment", pipeline_response.http_response) @@ -477,7 +490,11 @@ def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessments_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessments_settings_operations.py index 875227ca7d73..df8c8ce86d0d 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessments_settings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessments_settings_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -31,7 +31,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -244,7 +245,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -298,7 +302,10 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ServerVulnerabilityAssessmentsSetting", pipeline_response.http_response) @@ -432,7 +439,10 @@ def create_or_update( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ServerVulnerabilityAssessmentsSetting", pipeline_response.http_response) @@ -489,7 +499,10 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_settings_operations.py index 772bc4c81fca..a92a8d37a819 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_settings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_settings_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -63,7 +64,7 @@ def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: def build_get_request( - setting_name: Union[str, _models.SettingNameAutoGenerated], subscription_id: str, **kwargs: Any + setting_name: Union[str, _models.SettingName], subscription_id: str, **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) @@ -94,7 +95,7 @@ def build_get_request( def build_update_request( - setting_name: Union[str, _models.SettingNameAutoGenerated], subscription_id: str, **kwargs: Any + setting_name: Union[str, _models.SettingName], subscription_id: str, **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) @@ -203,19 +204,23 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated17, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response return ItemPaged(get_next, extract_data) @distributed_trace - def get(self, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any) -> _models.Setting: + def get(self, setting_name: Union[str, _models.SettingName], **kwargs: Any) -> _models.Setting: """Settings of different configurations in Microsoft Defender for Cloud. :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated + :type setting_name: str or ~azure.mgmt.security.models.SettingName :return: Setting or the result of cls(response) :rtype: ~azure.mgmt.security.models.Setting :raises ~azure.core.exceptions.HttpResponseError: @@ -252,7 +257,11 @@ def get(self, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwar if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated17, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Setting", pipeline_response.http_response) @@ -264,7 +273,7 @@ def get(self, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwar @overload def update( self, - setting_name: Union[str, _models.SettingNameAutoGenerated], + setting_name: Union[str, _models.SettingName], setting: _models.Setting, *, content_type: str = "application/json", @@ -274,7 +283,7 @@ def update( :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated + :type setting_name: str or ~azure.mgmt.security.models.SettingName :param setting: Setting object. Required. :type setting: ~azure.mgmt.security.models.Setting :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. @@ -288,7 +297,7 @@ def update( @overload def update( self, - setting_name: Union[str, _models.SettingNameAutoGenerated], + setting_name: Union[str, _models.SettingName], setting: IO[bytes], *, content_type: str = "application/json", @@ -298,7 +307,7 @@ def update( :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated + :type setting_name: str or ~azure.mgmt.security.models.SettingName :param setting: Setting object. Required. :type setting: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. @@ -311,16 +320,13 @@ def update( @distributed_trace def update( - self, - setting_name: Union[str, _models.SettingNameAutoGenerated], - setting: Union[_models.Setting, IO[bytes]], - **kwargs: Any + self, setting_name: Union[str, _models.SettingName], setting: Union[_models.Setting, IO[bytes]], **kwargs: Any ) -> _models.Setting: """updating settings about different configurations in Microsoft Defender for Cloud. :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated + :type setting_name: str or ~azure.mgmt.security.models.SettingName :param setting: Setting object. Is either a Setting type or a IO[bytes] type. Required. :type setting: ~azure.mgmt.security.models.Setting or IO[bytes] :return: Setting or the result of cls(response) @@ -371,7 +377,11 @@ def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated17, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("Setting", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_software_inventories_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_software_inventories_operations.py deleted file mode 100644 index a424e6770b78..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_software_inventories_operations.py +++ /dev/null @@ -1,383 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_extended_resource_request( - resource_group_name: str, - resource_namespace: str, - resource_type: str, - resource_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-05-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/softwareInventories", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "resourceNamespace": _SERIALIZER.url("resource_namespace", resource_namespace, "str"), - "resourceType": _SERIALIZER.url("resource_type", resource_type, "str"), - "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-05-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/softwareInventories" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - resource_namespace: str, - resource_type: str, - resource_name: str, - software_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-05-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/softwareInventories/{softwareName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "resourceNamespace": _SERIALIZER.url("resource_namespace", resource_namespace, "str"), - "resourceType": _SERIALIZER.url("resource_type", resource_type, "str"), - "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"), - "softwareName": _SERIALIZER.url("software_name", software_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SoftwareInventoriesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`software_inventories` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_extended_resource( - self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any - ) -> ItemPaged["_models.Software"]: - """Gets the software inventory of the virtual machine. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param resource_namespace: The namespace of the resource. Required. - :type resource_namespace: str - :param resource_type: The type of the resource. Required. - :type resource_type: str - :param resource_name: Name of the resource. Required. - :type resource_name: str - :return: An iterator like instance of either Software or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Software] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-05-01-preview")) - cls: ClsType[_models.SoftwaresList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_extended_resource_request( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SoftwaresList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.Software"]: - """Gets the software inventory of all virtual machines in the subscriptions. - - :return: An iterator like instance of either Software or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Software] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-05-01-preview")) - cls: ClsType[_models.SoftwaresList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SoftwaresList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, - resource_group_name: str, - resource_namespace: str, - resource_type: str, - resource_name: str, - software_name: str, - **kwargs: Any - ) -> _models.Software: - """Gets a single software data of the virtual machine. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param resource_namespace: The namespace of the resource. Required. - :type resource_namespace: str - :param resource_type: The type of the resource. Required. - :type resource_type: str - :param resource_name: Name of the resource. Required. - :type resource_name: str - :param software_name: Name of the installed software. Required. - :type software_name: str - :return: Software or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Software - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-05-01-preview")) - cls: ClsType[_models.Software] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - software_name=software_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Software", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_baseline_rules_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_baseline_rules_operations.py index 0f54fcf918c4..eefbbb289469 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_baseline_rules_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_baseline_rules_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -18,6 +18,7 @@ ResourceNotModifiedError, map_error, ) +from azure.core.paging import ItemPaged from azure.core.pipeline import PipelineResponse from azure.core.rest import HttpRequest, HttpResponse from azure.core.tracing.decorator import distributed_trace @@ -29,17 +30,20 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False -def build_create_or_update_request(rule_id: str, resource_id: str, *, workspace_id: str, **kwargs: Any) -> HttpRequest: +def build_create_or_update_request( + resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -49,14 +53,15 @@ def build_create_or_update_request(rule_id: str, resource_id: str, *, workspace_ "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules/{ruleId}", ) path_format_arguments = { - "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), } _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters - _params["workspaceId"] = _SERIALIZER.query("workspace_id", workspace_id, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers @@ -67,11 +72,13 @@ def build_create_or_update_request(rule_id: str, resource_id: str, *, workspace_ return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) -def build_get_request(rule_id: str, resource_id: str, *, workspace_id: str, **kwargs: Any) -> HttpRequest: +def build_get_request( + resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -80,14 +87,15 @@ def build_get_request(rule_id: str, resource_id: str, *, workspace_id: str, **kw "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules/{ruleId}", ) path_format_arguments = { - "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), } _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters - _params["workspaceId"] = _SERIALIZER.query("workspace_id", workspace_id, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers @@ -96,11 +104,13 @@ def build_get_request(rule_id: str, resource_id: str, *, workspace_id: str, **kw return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_delete_request(rule_id: str, resource_id: str, *, workspace_id: str, **kwargs: Any) -> HttpRequest: +def build_delete_request( + resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -109,14 +119,15 @@ def build_delete_request(rule_id: str, resource_id: str, *, workspace_id: str, * "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules/{ruleId}", ) path_format_arguments = { - "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), } _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters - _params["workspaceId"] = _SERIALIZER.query("workspace_id", workspace_id, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers @@ -125,11 +136,11 @@ def build_delete_request(rule_id: str, resource_id: str, *, workspace_id: str, * return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) -def build_list_request(resource_id: str, *, workspace_id: str, **kwargs: Any) -> HttpRequest: +def build_list_request(resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -143,7 +154,8 @@ def build_list_request(resource_id: str, *, workspace_id: str, **kwargs: Any) -> _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters - _params["workspaceId"] = _SERIALIZER.query("workspace_id", workspace_id, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers @@ -152,11 +164,11 @@ def build_list_request(resource_id: str, *, workspace_id: str, **kwargs: Any) -> return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_add_request(resource_id: str, *, workspace_id: str, **kwargs: Any) -> HttpRequest: +def build_add_request(resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -171,7 +183,8 @@ def build_add_request(resource_id: str, *, workspace_id: str, **kwargs: Any) -> _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters - _params["workspaceId"] = _SERIALIZER.query("workspace_id", workspace_id, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers @@ -204,9 +217,9 @@ def __init__(self, *args, **kwargs) -> None: @overload def create_or_update( self, - rule_id: str, - workspace_id: str, resource_id: str, + rule_id: str, + database_name: Optional[str] = None, body: Optional[_models.RuleResultsInput] = None, *, content_type: str = "application/json", @@ -216,12 +229,15 @@ def create_or_update( Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - :param rule_id: The rule Id. Required. - :type rule_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :param body: The baseline results for this rule. Default value is None. :type body: ~azure.mgmt.security.models.RuleResultsInput :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. @@ -235,9 +251,9 @@ def create_or_update( @overload def create_or_update( self, - rule_id: str, - workspace_id: str, resource_id: str, + rule_id: str, + database_name: Optional[str] = None, body: Optional[IO[bytes]] = None, *, content_type: str = "application/json", @@ -247,12 +263,15 @@ def create_or_update( Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - :param rule_id: The rule Id. Required. - :type rule_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :param body: The baseline results for this rule. Default value is None. :type body: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. @@ -266,9 +285,9 @@ def create_or_update( @distributed_trace def create_or_update( self, - rule_id: str, - workspace_id: str, resource_id: str, + rule_id: str, + database_name: Optional[str] = None, body: Optional[Union[_models.RuleResultsInput, IO[bytes]]] = None, **kwargs: Any ) -> _models.RuleResults: @@ -276,12 +295,15 @@ def create_or_update( Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - :param rule_id: The rule Id. Required. - :type rule_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :param body: The baseline results for this rule. Is either a RuleResultsInput type or a IO[bytes] type. Default value is None. :type body: ~azure.mgmt.security.models.RuleResultsInput or IO[bytes] @@ -300,11 +322,12 @@ def create_or_update( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if body else None cls: ClsType[_models.RuleResults] = kwargs.pop("cls", None) - content_type = content_type or "application/json" + content_type = content_type or "application/json" if body else None _json = None _content = None if isinstance(body, (IOBase, bytes)): @@ -316,9 +339,9 @@ def create_or_update( _json = None _request = build_create_or_update_request( - rule_id=rule_id, resource_id=resource_id, - workspace_id=workspace_id, + rule_id=rule_id, + database_name=database_name, api_version=api_version, content_type=content_type, json=_json, @@ -335,9 +358,13 @@ def create_or_update( response = pipeline_response.http_response - if response.status_code not in [200]: + if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("RuleResults", pipeline_response.http_response) @@ -347,17 +374,22 @@ def create_or_update( return deserialized # type: ignore @distributed_trace - def get(self, rule_id: str, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.RuleResults: + def get( + self, resource_id: str, rule_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> _models.RuleResults: """Gets the results for a given rule in the Baseline. Gets the results for a given rule in the Baseline. - :param rule_id: The rule Id. Required. - :type rule_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :return: RuleResults or the result of cls(response) :rtype: ~azure.mgmt.security.models.RuleResults :raises ~azure.core.exceptions.HttpResponseError: @@ -373,13 +405,13 @@ def get(self, rule_id: str, workspace_id: str, resource_id: str, **kwargs: Any) _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) cls: ClsType[_models.RuleResults] = kwargs.pop("cls", None) _request = build_get_request( - rule_id=rule_id, resource_id=resource_id, - workspace_id=workspace_id, + rule_id=rule_id, + database_name=database_name, api_version=api_version, headers=_headers, params=_params, @@ -395,7 +427,11 @@ def get(self, rule_id: str, workspace_id: str, resource_id: str, **kwargs: Any) if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("RuleResults", pipeline_response.http_response) @@ -406,18 +442,21 @@ def get(self, rule_id: str, workspace_id: str, resource_id: str, **kwargs: Any) @distributed_trace def delete( # pylint: disable=inconsistent-return-statements - self, rule_id: str, workspace_id: str, resource_id: str, **kwargs: Any + self, resource_id: str, rule_id: str, database_name: Optional[str] = None, **kwargs: Any ) -> None: """Deletes a rule from the Baseline of a given database. Deletes a rule from the Baseline of a given database. - :param rule_id: The rule Id. Required. - :type rule_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :return: None or the result of cls(response) :rtype: None :raises ~azure.core.exceptions.HttpResponseError: @@ -433,13 +472,13 @@ def delete( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) cls: ClsType[None] = kwargs.pop("cls", None) _request = build_delete_request( - rule_id=rule_id, resource_id=resource_id, - workspace_id=workspace_id, + rule_id=rule_id, + database_name=database_name, api_version=api_version, headers=_headers, params=_params, @@ -455,25 +494,40 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore @distributed_trace - def list(self, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.RulesResults: + def list( + self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> ItemPaged["_models.RuleResults"]: """Gets the results for all rules in the Baseline. Gets the results for all rules in the Baseline. - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str - :return: RulesResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RulesResults + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str + :return: An iterator like instance of either RuleResults or the result of cls(response) + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.RuleResults] :raises ~azure.core.exceptions.HttpResponseError: """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.RulesResults] = kwargs.pop("cls", None) + error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -482,57 +536,73 @@ def list(self, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.Ru } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + def prepare_request(next_link=None): + if not next_link: - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) - cls: ClsType[_models.RulesResults] = kwargs.pop("cls", None) + _request = build_list_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) - _request = build_list_request( - resource_id=resource_id, - workspace_id=workspace_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RulesResults", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + def extract_data(pipeline_response): + deserialized = self._deserialize("RulesResults", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) @overload def add( self, - workspace_id: str, resource_id: str, + database_name: Optional[str] = None, body: Optional[_models.RulesResultsInput] = None, *, content_type: str = "application/json", **kwargs: Any ) -> _models.RulesResults: - """Add a list of baseline rules. Will overwrite any previously existing results (for all rules). + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - Add a list of baseline rules. Will overwrite any previously existing results (for all rules). + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :param body: The baseline rules. Default value is None. :type body: ~azure.mgmt.security.models.RulesResultsInput :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. @@ -546,21 +616,24 @@ def add( @overload def add( self, - workspace_id: str, resource_id: str, + database_name: Optional[str] = None, body: Optional[IO[bytes]] = None, *, content_type: str = "application/json", **kwargs: Any ) -> _models.RulesResults: - """Add a list of baseline rules. Will overwrite any previously existing results (for all rules). + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - Add a list of baseline rules. Will overwrite any previously existing results (for all rules). + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :param body: The baseline rules. Default value is None. :type body: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. @@ -574,19 +647,22 @@ def add( @distributed_trace def add( self, - workspace_id: str, resource_id: str, + database_name: Optional[str] = None, body: Optional[Union[_models.RulesResultsInput, IO[bytes]]] = None, **kwargs: Any ) -> _models.RulesResults: - """Add a list of baseline rules. Will overwrite any previously existing results (for all rules). + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - Add a list of baseline rules. Will overwrite any previously existing results (for all rules). + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :param body: The baseline rules. Is either a RulesResultsInput type or a IO[bytes] type. Default value is None. :type body: ~azure.mgmt.security.models.RulesResultsInput or IO[bytes] @@ -605,11 +681,12 @@ def add( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if body else None cls: ClsType[_models.RulesResults] = kwargs.pop("cls", None) - content_type = content_type or "application/json" + content_type = content_type or "application/json" if body else None _json = None _content = None if isinstance(body, (IOBase, bytes)): @@ -622,7 +699,7 @@ def add( _request = build_add_request( resource_id=resource_id, - workspace_id=workspace_id, + database_name=database_name, api_version=api_version, content_type=content_type, json=_json, @@ -641,7 +718,11 @@ def add( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("RulesResults", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scan_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scan_results_operations.py index 0eb8f9f7415b..170a5e1a013f 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scan_results_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scan_results_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -18,6 +18,7 @@ ResourceNotModifiedError, map_error, ) +from azure.core.paging import ItemPaged from azure.core.pipeline import PipelineResponse from azure.core.rest import HttpRequest, HttpResponse from azure.core.tracing.decorator import distributed_trace @@ -29,19 +30,20 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False def build_get_request( - scan_id: str, scan_result_id: str, resource_id: str, *, workspace_id: str, **kwargs: Any + scan_id: str, scan_result_id: str, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -58,7 +60,8 @@ def build_get_request( _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters - _params["workspaceId"] = _SERIALIZER.query("workspace_id", workspace_id, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers @@ -67,11 +70,13 @@ def build_get_request( return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_list_request(scan_id: str, resource_id: str, *, workspace_id: str, **kwargs: Any) -> HttpRequest: +def build_list_request( + scan_id: str, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -87,7 +92,8 @@ def build_list_request(scan_id: str, resource_id: str, *, workspace_id: str, **k _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters - _params["workspaceId"] = _SERIALIZER.query("workspace_id", workspace_id, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers @@ -117,7 +123,7 @@ def __init__(self, *args, **kwargs) -> None: @distributed_trace def get( - self, scan_id: str, scan_result_id: str, workspace_id: str, resource_id: str, **kwargs: Any + self, scan_id: str, scan_result_id: str, resource_id: str, database_name: Optional[str] = None, **kwargs: Any ) -> _models.ScanResult: """Gets the scan results of a single rule in a scan record. @@ -128,10 +134,13 @@ def get( :type scan_id: str :param scan_result_id: The rule Id of the results. Required. :type scan_result_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str :return: ScanResult or the result of cls(response) :rtype: ~azure.mgmt.security.models.ScanResult :raises ~azure.core.exceptions.HttpResponseError: @@ -147,14 +156,14 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) cls: ClsType[_models.ScanResult] = kwargs.pop("cls", None) _request = build_get_request( scan_id=scan_id, scan_result_id=scan_result_id, resource_id=resource_id, - workspace_id=workspace_id, + database_name=database_name, api_version=api_version, headers=_headers, params=_params, @@ -170,7 +179,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ScanResult", pipeline_response.http_response) @@ -180,7 +193,9 @@ def get( return deserialized # type: ignore @distributed_trace - def list(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.ScanResults: + def list( + self, scan_id: str, resource_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> ItemPaged["_models.ScanResult"]: """Gets a list of scan results for a single scan record. Gets a list of scan results for a single scan record. @@ -188,14 +203,23 @@ def list(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: Any) :param scan_id: The scan Id. Type 'latest' to get the scan results for the latest scan. Required. :type scan_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str - :return: ScanResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ScanResults + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str + :return: An iterator like instance of either ScanResult or the result of cls(response) + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ScanResult] :raises ~azure.core.exceptions.HttpResponseError: """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.ScanResults] = kwargs.pop("cls", None) + error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -204,36 +228,49 @@ def list(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: Any) } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) - cls: ClsType[_models.ScanResults] = kwargs.pop("cls", None) - - _request = build_list_request( - scan_id=scan_id, - resource_id=resource_id, - workspace_id=workspace_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ScanResults", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_request( + scan_id=scan_id, + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + def extract_data(pipeline_response): + deserialized = self._deserialize("ScanResults", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scans_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scans_operations.py index a14ad318c607..e8d84796384b 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scans_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scans_operations.py @@ -1,3 +1,4 @@ +# pylint: disable=line-too-long,useless-suppression # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. @@ -6,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Iterator, Optional, TypeVar, Union, cast from azure.core import PipelineClient from azure.core.exceptions import ( @@ -15,30 +16,38 @@ ResourceExistsError, ResourceNotFoundError, ResourceNotModifiedError, + StreamClosedError, + StreamConsumedError, map_error, ) +from azure.core.paging import ItemPaged from azure.core.pipeline import PipelineResponse +from azure.core.polling import LROPoller, NoPolling, PollingMethod from azure.core.rest import HttpRequest, HttpResponse from azure.core.tracing.decorator import distributed_trace from azure.core.utils import case_insensitive_dict from azure.mgmt.core.exceptions import ARMErrorFormat +from azure.mgmt.core.polling.arm_polling import ARMPolling from .. import models as _models from .._configuration import SecurityCenterConfiguration from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False -def build_get_request(scan_id: str, resource_id: str, *, workspace_id: str, **kwargs: Any) -> HttpRequest: +def build_get_request( + scan_id: str, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -53,7 +62,8 @@ def build_get_request(scan_id: str, resource_id: str, *, workspace_id: str, **kw _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters - _params["workspaceId"] = _SERIALIZER.query("workspace_id", workspace_id, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers @@ -62,11 +72,11 @@ def build_get_request(scan_id: str, resource_id: str, *, workspace_id: str, **kw return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_list_request(resource_id: str, *, workspace_id: str, **kwargs: Any) -> HttpRequest: +def build_list_request(resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -80,7 +90,69 @@ def build_list_request(resource_id: str, *, workspace_id: str, **kwargs: Any) -> _url: str = _url.format(**path_format_arguments) # type: ignore # Construct parameters - _params["workspaceId"] = _SERIALIZER.query("workspace_id", workspace_id, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_initiate_scan_request(resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop( + "template_url", + "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/initiateScan", + ) + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_get_scan_operation_result_request( + resource_id: str, operation_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop( + "template_url", + "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/scanOperationResults/{operationId}", + ) + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "operationId": _SERIALIZER.url("operation_id", operation_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers @@ -109,7 +181,7 @@ def __init__(self, *args, **kwargs) -> None: self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace - def get(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.Scan: + def get(self, scan_id: str, resource_id: str, database_name: Optional[str] = None, **kwargs: Any) -> _models.ScanV2: """Gets the scan details of a single scan record. Gets the scan details of a single scan record. @@ -117,12 +189,15 @@ def get(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: Any) :param scan_id: The scan Id. Type 'latest' to get the scan record for the latest scan. Required. :type scan_id: str - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str - :return: Scan or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Scan + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str + :return: ScanV2 or the result of cls(response) + :rtype: ~azure.mgmt.security.models.ScanV2 :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -136,13 +211,13 @@ def get(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: Any) _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) - cls: ClsType[_models.Scan] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.ScanV2] = kwargs.pop("cls", None) _request = build_get_request( scan_id=scan_id, resource_id=resource_id, - workspace_id=workspace_id, + database_name=database_name, api_version=api_version, headers=_headers, params=_params, @@ -158,9 +233,13 @@ def get(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: Any) if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("Scan", pipeline_response.http_response) + deserialized = self._deserialize("ScanV2", pipeline_response.http_response) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -168,19 +247,85 @@ def get(self, scan_id: str, workspace_id: str, resource_id: str, **kwargs: Any) return deserialized # type: ignore @distributed_trace - def list(self, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.Scans: + def list(self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any) -> ItemPaged["_models.ScanV2"]: """Gets a list of scan records. Gets a list of scan records. - :param workspace_id: The workspace Id. Required. - :type workspace_id: str :param resource_id: The identifier of the resource. Required. :type resource_id: str - :return: Scans or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Scans + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str + :return: An iterator like instance of either ScanV2 or the result of cls(response) + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ScanV2] :raises ~azure.core.exceptions.HttpResponseError: """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.ScansV2] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + def extract_data(pipeline_response): + deserialized = self._deserialize("ScansV2", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + def _initiate_scan_initial( + self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -192,12 +337,157 @@ def list(self, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.Sc _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-01-preview")) - cls: ClsType[_models.Scans] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_list_request( + _request = build_initiate_scan_request( resource_id=resource_id, - workspace_id=workspace_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + + deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_initiate_scan( + self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> LROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult]: + """Initiates a vulnerability assessment scan. + + Initiates a vulnerability assessment scan. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str + :return: An instance of LROPoller that returns either + SqlVulnerabilityAssessmentScanOperationResult or the result of cls(response) + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.SqlVulnerabilityAssessmentScanOperationResult] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._initiate_scan_initial( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + deserialized = self._deserialize( + "SqlVulnerabilityAssessmentScanOperationResult", pipeline_response.http_response + ) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + def get_scan_operation_result( + self, resource_id: str, operation_id: str, database_name: Optional[str] = None, **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentScanOperationResult: + """Gets the result of a scan operation initiated by the InitiateScan action. + + Gets the result of a scan operation initiated by the InitiateScan action. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :param operation_id: The operation id. Required. + :type operation_id: str + :param database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :type database_name: str + :return: SqlVulnerabilityAssessmentScanOperationResult or the result of cls(response) + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.SqlVulnerabilityAssessmentScanOperationResult] = kwargs.pop("cls", None) + + _request = build_get_scan_operation_result_request( + resource_id=resource_id, + operation_id=operation_id, + database_name=database_name, api_version=api_version, headers=_headers, params=_params, @@ -213,9 +503,15 @@ def list(self, workspace_id: str, resource_id: str, **kwargs: Any) -> _models.Sc if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Scans", pipeline_response.http_response) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize( + "SqlVulnerabilityAssessmentScanOperationResult", pipeline_response.http_response + ) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_settings_operations.py new file mode 100644 index 000000000000..0ef540b35165 --- /dev/null +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_settings_operations.py @@ -0,0 +1,369 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +from collections.abc import MutableMapping +from io import IOBase +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload + +from azure.core import PipelineClient +from azure.core.exceptions import ( + ClientAuthenticationError, + HttpResponseError, + ResourceExistsError, + ResourceNotFoundError, + ResourceNotModifiedError, + map_error, +) +from azure.core.pipeline import PipelineResponse +from azure.core.rest import HttpRequest, HttpResponse +from azure.core.tracing.decorator import distributed_trace +from azure.core.utils import case_insensitive_dict +from azure.mgmt.core.exceptions import ARMErrorFormat + +from .. import models as _models +from .._configuration import SecurityCenterConfiguration +from .._utils.serialization import Deserializer, Serializer + +T = TypeVar("T") +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list + +_SERIALIZER = Serializer() +_SERIALIZER.client_side_validation = False + + +def build_get_request(resource_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default") + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_create_or_update_request(resource_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default") + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_delete_request(resource_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default") + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) + + +class SqlVulnerabilityAssessmentSettingsOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityCenter`'s + :attr:`sql_vulnerability_assessment_settings` attribute. + """ + + models = _models + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_id: str, **kwargs: Any) -> _models.SqlVulnerabilityAssessmentSettings: + """Gets the SQL Vulnerability Assessment settings. + + Gets the SQL Vulnerability Assessment settings. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.SqlVulnerabilityAssessmentSettings] = kwargs.pop("cls", None) + + _request = build_get_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize("SqlVulnerabilityAssessmentSettings", pipeline_response.http_response) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + resource_id: str, + body: Optional[_models.SqlVulnerabilityAssessmentSettings] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Default value is None. + :type body: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_id: str, + body: Optional[IO[bytes]] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Default value is None. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_id: str, + body: Optional[Union[_models.SqlVulnerabilityAssessmentSettings, IO[bytes]]] = None, + **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Is either a + SqlVulnerabilityAssessmentSettings type or a IO[bytes] type. Default value is None. + :type body: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings or IO[bytes] + :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if body else None + cls: ClsType[_models.SqlVulnerabilityAssessmentSettings] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if body else None + _json = None + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + if body is not None: + _json = self._serialize.body(body, "SqlVulnerabilityAssessmentSettings") + else: + _json = None + + _request = build_create_or_update_request( + resource_id=resource_id, + api_version=api_version, + content_type=content_type, + json=_json, + content=_content, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = self._deserialize("SqlVulnerabilityAssessmentSettings", pipeline_response.http_response) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete(self, resource_id: str, **kwargs: Any) -> None: # pylint: disable=inconsistent-return-statements + """Deletes the SQL Vulnerability Assessment settings. + + Deletes the SQL Vulnerability Assessment settings. + + :param resource_id: The identifier of the resource. Required. + :type resource_id: str + :return: None or the result of cls(response) + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_delete_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated7, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standard_assignments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standard_assignments_operations.py index 22f17d52de30..26a8a3162908 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standard_assignments_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standard_assignments_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -31,7 +31,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -227,7 +228,10 @@ def get(self, resource_id: str, standard_assignment_name: str, **kwargs: Any) -> if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("StandardAssignment", pipeline_response.http_response) @@ -369,7 +373,10 @@ def create( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("StandardAssignment", pipeline_response.http_response) @@ -430,7 +437,10 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: @@ -499,7 +509,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_assessment_automations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standards_operations.py similarity index 67% rename from sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_assessment_automations_operations.py rename to sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standards_operations.py index b83af4fb1caa..b3e948073b39 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_assessment_automations_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standards_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -31,36 +31,26 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False -def build_get_request( - resource_group_name: str, custom_assessment_automation_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: +def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Security/customAssessmentAutomations/{customAssessmentAutomationName}", - ) + _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/standards") path_format_arguments = { "subscriptionId": _SERIALIZER.url( "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "customAssessmentAutomationName": _SERIALIZER.url( - "custom_assessment_automation_name", custom_assessment_automation_name, "str" - ), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -74,20 +64,17 @@ def build_get_request( return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_create_request( - resource_group_name: str, custom_assessment_automation_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: +def build_list_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Security/customAssessmentAutomations/{customAssessmentAutomationName}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards", ) path_format_arguments = { "subscriptionId": _SERIALIZER.url( @@ -96,9 +83,6 @@ def build_create_request( "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" ), - "customAssessmentAutomationName": _SERIALIZER.url( - "custom_assessment_automation_name", custom_assessment_automation_name, "str" - ), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -107,26 +91,22 @@ def build_create_request( _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_delete_request( - resource_group_name: str, custom_assessment_automation_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: +def build_get_request(resource_group_name: str, standard_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Security/customAssessmentAutomations/{customAssessmentAutomationName}", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards/{standardId}", ) path_format_arguments = { "subscriptionId": _SERIALIZER.url( @@ -135,9 +115,7 @@ def build_delete_request( "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" ), - "customAssessmentAutomationName": _SERIALIZER.url( - "custom_assessment_automation_name", custom_assessment_automation_name, "str" - ), + "standardId": _SERIALIZER.url("standard_id", standard_id, "str"), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -148,20 +126,23 @@ def build_delete_request( # Construct headers _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: +def build_create_or_update_request( + resource_group_name: str, standard_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( "template_url", - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Security/customAssessmentAutomations", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards/{standardId}", ) path_format_arguments = { "subscriptionId": _SERIALIZER.url( @@ -170,6 +151,7 @@ def build_list_by_resource_group_request(resource_group_name: str, subscription_ "resourceGroupName": _SERIALIZER.url( "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" ), + "standardId": _SERIALIZER.url("standard_id", standard_id, "str"), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -178,26 +160,35 @@ def build_list_by_resource_group_request(resource_group_name: str, subscription_ _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) -def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: +def build_delete_request( + resource_group_name: str, standard_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) accept = _headers.pop("Accept", "application/json") # Construct URL _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/customAssessmentAutomations" + "template_url", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards/{standardId}", ) path_format_arguments = { "subscriptionId": _SERIALIZER.url( "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" ), + "resourceGroupName": _SERIALIZER.url( + "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" + ), + "standardId": _SERIALIZER.url("standard_id", standard_id, "str"), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -208,17 +199,17 @@ def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> H # Construct headers _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) -class CustomAssessmentAutomationsOperations: +class StandardsOperations: """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`custom_assessment_automations` attribute. + :attr:`standards` attribute. """ models = _models @@ -231,21 +222,154 @@ def __init__(self, *args, **kwargs) -> None: self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace - def get( - self, resource_group_name: str, custom_assessment_automation_name: str, **kwargs: Any - ) -> _models.CustomAssessmentAutomation: - """Gets a custom assessment automation. + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.Standard"]: + """Get a list of all relevant security standards over a subscription level scope. + + :return: An iterator like instance of either Standard or the result of cls(response) + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Standard] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.StandardList] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + def extract_data(pipeline_response): + deserialized = self._deserialize("StandardList", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.next_link or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response - Gets a single custom assessment automation by name for the provided subscription and resource - group. + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.Standard"]: + """Get security standards on all your resources inside a scope. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_assessment_automation_name: Name of the Custom Assessment Automation. Required. - :type custom_assessment_automation_name: str - :return: CustomAssessmentAutomation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomAssessmentAutomation + :return: An iterator like instance of either Standard or the result of cls(response) + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Standard] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.StandardList] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_list_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + else: + _request = HttpRequest("GET", next_link) + _request.url = self._client.format_url(_request.url) + _request.method = "GET" + return _request + + def extract_data(pipeline_response): + deserialized = self._deserialize("StandardList", pipeline_response) + list_of_elem = deserialized.value + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.next_link or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def get(self, resource_group_name: str, standard_id: str, **kwargs: Any) -> _models.Standard: + """Get a specific security standard for the requested scope. + + :param resource_group_name: The name of the resource group within the user's subscription. The + name is case insensitive. Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :return: Standard or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Standard :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -259,12 +383,12 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - cls: ClsType[_models.CustomAssessmentAutomation] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.Standard] = kwargs.pop("cls", None) _request = build_get_request( resource_group_name=resource_group_name, - custom_assessment_automation_name=custom_assessment_automation_name, + standard_id=standard_id, subscription_id=self._config.subscription_id, api_version=api_version, headers=_headers, @@ -281,9 +405,13 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("CustomAssessmentAutomation", pipeline_response.http_response) + deserialized = self._deserialize("Standard", pipeline_response.http_response) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -291,90 +419,78 @@ def get( return deserialized # type: ignore @overload - def create( + def create_or_update( self, resource_group_name: str, - custom_assessment_automation_name: str, - custom_assessment_automation_body: _models.CustomAssessmentAutomationRequest, + standard_id: str, + standard: _models.Standard, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CustomAssessmentAutomation: - """Creates a custom assessment automation. - - Creates or updates a custom assessment automation for the provided subscription. Please note - that providing an existing custom assessment automation will replace the existing record. + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_assessment_automation_name: Name of the Custom Assessment Automation. Required. - :type custom_assessment_automation_name: str - :param custom_assessment_automation_body: Custom Assessment Automation body. Required. - :type custom_assessment_automation_body: - ~azure.mgmt.security.models.CustomAssessmentAutomationRequest + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: ~azure.mgmt.security.models.Standard :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: CustomAssessmentAutomation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomAssessmentAutomation + :return: Standard or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Standard :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def create( + def create_or_update( self, resource_group_name: str, - custom_assessment_automation_name: str, - custom_assessment_automation_body: IO[bytes], + standard_id: str, + standard: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CustomAssessmentAutomation: - """Creates a custom assessment automation. - - Creates or updates a custom assessment automation for the provided subscription. Please note - that providing an existing custom assessment automation will replace the existing record. + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_assessment_automation_name: Name of the Custom Assessment Automation. Required. - :type custom_assessment_automation_name: str - :param custom_assessment_automation_body: Custom Assessment Automation body. Required. - :type custom_assessment_automation_body: IO[bytes] + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: CustomAssessmentAutomation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomAssessmentAutomation + :return: Standard or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Standard :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace - def create( - self, - resource_group_name: str, - custom_assessment_automation_name: str, - custom_assessment_automation_body: Union[_models.CustomAssessmentAutomationRequest, IO[bytes]], - **kwargs: Any - ) -> _models.CustomAssessmentAutomation: - """Creates a custom assessment automation. - - Creates or updates a custom assessment automation for the provided subscription. Please note - that providing an existing custom assessment automation will replace the existing record. + def create_or_update( + self, resource_group_name: str, standard_id: str, standard: Union[_models.Standard, IO[bytes]], **kwargs: Any + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_assessment_automation_name: Name of the Custom Assessment Automation. Required. - :type custom_assessment_automation_name: str - :param custom_assessment_automation_body: Custom Assessment Automation body. Is either a - CustomAssessmentAutomationRequest type or a IO[bytes] type. Required. - :type custom_assessment_automation_body: - ~azure.mgmt.security.models.CustomAssessmentAutomationRequest or IO[bytes] - :return: CustomAssessmentAutomation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomAssessmentAutomation + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Is either a Standard type + or a IO[bytes] type. Required. + :type standard: ~azure.mgmt.security.models.Standard or IO[bytes] + :return: Standard or the result of cls(response) + :rtype: ~azure.mgmt.security.models.Standard :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -388,21 +504,21 @@ def create( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CustomAssessmentAutomation] = kwargs.pop("cls", None) + cls: ClsType[_models.Standard] = kwargs.pop("cls", None) content_type = content_type or "application/json" _json = None _content = None - if isinstance(custom_assessment_automation_body, (IOBase, bytes)): - _content = custom_assessment_automation_body + if isinstance(standard, (IOBase, bytes)): + _content = standard else: - _json = self._serialize.body(custom_assessment_automation_body, "CustomAssessmentAutomationRequest") + _json = self._serialize.body(standard, "Standard") - _request = build_create_request( + _request = build_create_or_update_request( resource_group_name=resource_group_name, - custom_assessment_automation_name=custom_assessment_automation_name, + standard_id=standard_id, subscription_id=self._config.subscription_id, api_version=api_version, content_type=content_type, @@ -422,9 +538,13 @@ def create( if response.status_code not in [200, 201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - deserialized = self._deserialize("CustomAssessmentAutomation", pipeline_response.http_response) + deserialized = self._deserialize("Standard", pipeline_response.http_response) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -433,17 +553,15 @@ def create( @distributed_trace def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, custom_assessment_automation_name: str, **kwargs: Any + self, resource_group_name: str, standard_id: str, **kwargs: Any ) -> None: - """Deletes a custom assessment automation. - - Deletes a custom assessment automation by name for a provided subscription. + """Delete a security standard on a scope. :param resource_group_name: The name of the resource group within the user's subscription. The name is case insensitive. Required. :type resource_group_name: str - :param custom_assessment_automation_name: Name of the Custom Assessment Automation. Required. - :type custom_assessment_automation_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str :return: None or the result of cls(response) :rtype: None :raises ~azure.core.exceptions.HttpResponseError: @@ -459,12 +577,12 @@ def delete( # pylint: disable=inconsistent-return-statements _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) cls: ClsType[None] = kwargs.pop("cls", None) _request = build_delete_request( resource_group_name=resource_group_name, - custom_assessment_automation_name=custom_assessment_automation_name, + standard_id=standard_id, subscription_id=self._config.subscription_id, api_version=api_version, headers=_headers, @@ -481,145 +599,11 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [200, 204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated19, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, **kwargs: Any - ) -> ItemPaged["_models.CustomAssessmentAutomation"]: - """List custom assessment automations in a subscription and a resource group. - - List custom assessment automations by provided subscription and resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either CustomAssessmentAutomation or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.CustomAssessmentAutomation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - cls: ClsType[_models.CustomAssessmentAutomationsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("CustomAssessmentAutomationsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.CustomAssessmentAutomation"]: - """List custom assessment automations in a subscription. - - List custom assessment automations by provided subscription. - - :return: An iterator like instance of either CustomAssessmentAutomation or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.CustomAssessmentAutomation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-07-01-preview")) - cls: ClsType[_models.CustomAssessmentAutomationsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("CustomAssessmentAutomationsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sub_assessments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sub_assessments_operations.py index 3b2a20452972..7c25a9a0e050 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sub_assessments_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sub_assessments_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -29,7 +29,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -196,7 +197,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -267,7 +272,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -325,7 +334,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated2, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("SecuritySubAssessment", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_tasks_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_tasks_operations.py index d4617cbdf208..3735a2f29c89 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_tasks_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_tasks_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar, Union +from typing import Any, Callable, Optional, TypeVar, Union from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_topology_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_topology_operations.py index 2e30118732c3..720691f16cee 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_topology_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_topology_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -204,7 +205,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -271,7 +276,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -329,7 +338,11 @@ def get( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated15, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("TopologyResource", pipeline_response.http_response) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_workspace_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_workspace_settings_operations.py index f661fdc6694a..d1fbc851da64 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_workspace_settings_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_workspace_settings_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -265,7 +266,11 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -314,7 +319,11 @@ def get(self, workspace_setting_name: str, **kwargs: Any) -> _models.WorkspaceSe if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("WorkspaceSetting", pipeline_response.http_response) @@ -428,7 +437,11 @@ def create( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("WorkspaceSetting", pipeline_response.http_response) @@ -542,7 +555,11 @@ def update( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("WorkspaceSetting", pipeline_response.http_response) @@ -596,7 +613,11 @@ def delete( # pylint: disable=inconsistent-return-statements if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) + error = self._deserialize.failsafe_deserialize( + _models.CloudErrorAutoGenerated, + pipeline_response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if cls: return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/code_report_swagger.json b/sdk/security/azure-mgmt-security/code_report_swagger.json new file mode 100644 index 000000000000..81633b05b61c --- /dev/null +++ b/sdk/security/azure-mgmt-security/code_report_swagger.json @@ -0,0 +1,91644 @@ +{ + "azure.mgmt.security": { + "class_nodes": { + "SecurityCenter": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "credential": { + "default": null, + "param_type": "positional_or_keyword" + }, + "subscription_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "base_url": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "cloud_setting": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "close": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "client_side_validation": { + "attr_type": false + }, + "locations": { + "attr_type": "LocationsOperations" + }, + "tasks": { + "attr_type": "TasksOperations" + }, + "auto_provisioning_settings": { + "attr_type": "AutoProvisioningSettingsOperations" + }, + "compliances": { + "attr_type": "CompliancesOperations" + }, + "information_protection_policies": { + "attr_type": "InformationProtectionPoliciesOperations" + }, + "workspace_settings": { + "attr_type": "WorkspaceSettingsOperations" + }, + "alerts_suppression_rules": { + "attr_type": "AlertsSuppressionRulesOperations" + }, + "regulatory_compliance_standards": { + "attr_type": "RegulatoryComplianceStandardsOperations" + }, + "regulatory_compliance_controls": { + "attr_type": "RegulatoryComplianceControlsOperations" + }, + "regulatory_compliance_assessments": { + "attr_type": "RegulatoryComplianceAssessmentsOperations" + }, + "sub_assessments": { + "attr_type": "SubAssessmentsOperations" + }, + "mde_onboardings": { + "attr_type": "MdeOnboardingsOperations" + }, + "governance_assignments": { + "attr_type": "GovernanceAssignmentsOperations" + }, + "governance_rules": { + "attr_type": "GovernanceRulesOperations" + }, + "applications": { + "attr_type": "ApplicationsOperations" + }, + "application": { + "attr_type": "ApplicationOperations" + }, + "security_connector_applications": { + "attr_type": "SecurityConnectorApplicationsOperations" + }, + "security_connector_application": { + "attr_type": "SecurityConnectorApplicationOperations" + }, + "security_operators": { + "attr_type": "SecurityOperatorsOperations" + }, + "sql_vulnerability_assessment_baseline_rules": { + "attr_type": "SqlVulnerabilityAssessmentBaselineRulesOperations" + }, + "sql_vulnerability_assessment_scans": { + "attr_type": "SqlVulnerabilityAssessmentScansOperations" + }, + "sql_vulnerability_assessment_scan_results": { + "attr_type": "SqlVulnerabilityAssessmentScanResultsOperations" + }, + "sql_vulnerability_assessment_settings": { + "attr_type": "SqlVulnerabilityAssessmentSettingsOperations" + }, + "sensitivity_settings": { + "attr_type": "SensitivitySettingsOperations" + }, + "health_reports": { + "attr_type": "HealthReportsOperations" + }, + "automations": { + "attr_type": "AutomationsOperations" + }, + "security_connectors": { + "attr_type": "SecurityConnectorsOperations" + }, + "azure_dev_ops_orgs": { + "attr_type": "AzureDevOpsOrgsOperations" + }, + "azure_dev_ops_projects": { + "attr_type": "AzureDevOpsProjectsOperations" + }, + "azure_dev_ops_repos": { + "attr_type": "AzureDevOpsReposOperations" + }, + "dev_ops_configurations": { + "attr_type": "DevOpsConfigurationsOperations" + }, + "git_hub_owners": { + "attr_type": "GitHubOwnersOperations" + }, + "git_hub_repos": { + "attr_type": "GitHubReposOperations" + }, + "git_hub_issues": { + "attr_type": "GitHubIssuesOperations" + }, + "git_lab_groups": { + "attr_type": "GitLabGroupsOperations" + }, + "git_lab_subgroups": { + "attr_type": "GitLabSubgroupsOperations" + }, + "git_lab_projects": { + "attr_type": "GitLabProjectsOperations" + }, + "dev_ops_operation_results": { + "attr_type": "DevOpsOperationResultsOperations" + }, + "operations": { + "attr_type": "Operations" + }, + "operation_results": { + "attr_type": "OperationResultsOperations" + }, + "operation_statuses": { + "attr_type": "OperationStatusesOperations" + }, + "assessments_metadata": { + "attr_type": "AssessmentsMetadataOperations" + }, + "assessments": { + "attr_type": "AssessmentsOperations" + }, + "compliance_results": { + "attr_type": "ComplianceResultsOperations" + }, + "advanced_threat_protection": { + "attr_type": "AdvancedThreatProtectionOperations" + }, + "device_security_groups": { + "attr_type": "DeviceSecurityGroupsOperations" + }, + "iot_security_solution_analytics": { + "attr_type": "IotSecuritySolutionAnalyticsOperations" + }, + "iot_security_solutions_analytics_aggregated_alert": { + "attr_type": "IotSecuritySolutionsAnalyticsAggregatedAlertOperations" + }, + "iot_security_solutions_analytics_recommendation": { + "attr_type": "IotSecuritySolutionsAnalyticsRecommendationOperations" + }, + "iot_security_solution": { + "attr_type": "IotSecuritySolutionOperations" + }, + "allowed_connections": { + "attr_type": "AllowedConnectionsOperations" + }, + "discovered_security_solutions": { + "attr_type": "DiscoveredSecuritySolutionsOperations" + }, + "external_security_solutions": { + "attr_type": "ExternalSecuritySolutionsOperations" + }, + "jit_network_access_policies": { + "attr_type": "JitNetworkAccessPoliciesOperations" + }, + "security_solutions": { + "attr_type": "SecuritySolutionsOperations" + }, + "security_solutions_reference_data": { + "attr_type": "SecuritySolutionsReferenceDataOperations" + }, + "server_vulnerability_assessment": { + "attr_type": "ServerVulnerabilityAssessmentOperations" + }, + "topology": { + "attr_type": "TopologyOperations" + }, + "alerts": { + "attr_type": "AlertsOperations" + }, + "settings": { + "attr_type": "SettingsOperations" + }, + "server_vulnerability_assessments_settings": { + "attr_type": "ServerVulnerabilityAssessmentsSettingsOperations" + }, + "api_collections": { + "attr_type": "APICollectionsOperations" + }, + "pricings": { + "attr_type": "PricingsOperations" + }, + "security_standards": { + "attr_type": "SecurityStandardsOperations" + }, + "standard_assignments": { + "attr_type": "StandardAssignmentsOperations" + }, + "custom_recommendations": { + "attr_type": "CustomRecommendationsOperations" + }, + "standards": { + "attr_type": "StandardsOperations" + }, + "assignments": { + "attr_type": "AssignmentsOperations" + }, + "defender_for_storage": { + "attr_type": "DefenderForStorageOperations" + }, + "private_links": { + "attr_type": "PrivateLinksOperations" + }, + "private_link_resources": { + "attr_type": "PrivateLinkResourcesOperations" + }, + "private_endpoint_connections": { + "attr_type": "PrivateEndpointConnectionsOperations" + }, + "secure_scores": { + "attr_type": "SecureScoresOperations" + }, + "secure_score_controls": { + "attr_type": "SecureScoreControlsOperations" + }, + "secure_score_control_definitions": { + "attr_type": "SecureScoreControlDefinitionsOperations" + } + } + } + }, + "function_nodes": {} + }, + "azure.mgmt.security.operations": { + "class_nodes": { + "APICollectionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_onboard_azure_api_management_api": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "api_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_by_azure_api_management_service": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "api_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_azure_api_management_service": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "offboard_azure_api_management_api": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "api_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AdvancedThreatProtectionOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "type": "AdvancedThreatProtectionSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AlertsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_simulate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "type": "AlertSimulatorRequestBody", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get_resource_group_level": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_subscription_level": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_resource_group_level_by_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_subscription_level_by_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_state_to_activate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_state_to_dismiss": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_state_to_in_progress": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_state_to_resolve": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_subscription_level_state_to_activate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_subscription_level_state_to_dismiss": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_subscription_level_state_to_in_progress": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_subscription_level_state_to_resolve": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AlertsSuppressionRulesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_type": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "type": "AlertsSuppressionRule", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "AllowedConnectionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "connection_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ApplicationOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "Application", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ApplicationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AssessmentsMetadataOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_in_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "type": "SecurityAssessmentMetadataResponse", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete_in_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_in_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AssessmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "type": "SecurityAssessment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expand": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AssignmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "type": "Assignment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AutoProvisioningSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "AutoProvisioningSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AutomationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "Automation", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "AutomationUpdateModel", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "validate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "Automation", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "AzureDevOpsOrgsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "AzureDevOpsOrg", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "AzureDevOpsOrg", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_available": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AzureDevOpsProjectsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "AzureDevOpsProject", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "AzureDevOpsProject", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AzureDevOpsReposOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "AzureDevOpsRepository", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "AzureDevOpsRepository", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ComplianceResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "compliance_result_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "CompliancesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "compliance_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "CustomRecommendationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "type": "CustomRecommendation", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DefenderForStorageOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "cancel_malware_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingNameAutoGenerated]", + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "type": "DefenderForStorageSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingNameAutoGenerated]", + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_malware_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "start_malware_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DevOpsConfigurationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "DevOpsConfiguration", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "DevOpsConfiguration", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DevOpsOperationResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_result_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DeviceSecurityGroupsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "type": "DeviceSecurityGroup", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DiscoveredSecuritySolutionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "discovered_security_solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ExternalSecuritySolutionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "external_security_solutions_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitHubIssuesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "type": "Optional[IssueCreationRequest]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "GitHubOwnersOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_available": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitHubReposOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitLabGroupsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_available": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitLabProjectsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitLabSubgroupsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GovernanceAssignmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "type": "GovernanceAssignment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GovernanceRulesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_execute": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "type": "Optional[ExecuteGovernanceRuleParams]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "type": "GovernanceRule", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "operation_results": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "HealthReportsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "health_report_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "InformationProtectionPoliciesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "type": "Union[str, InformationProtectionPolicyName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "type": "InformationProtectionPolicy", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "type": "Union[str, InformationProtectionPolicyName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "IotSecuritySolutionAnalyticsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "IotSecuritySolutionOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "type": "IoTSecuritySolutionModel", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "type": "UpdateIotSecuritySolutionData", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "IotSecuritySolutionsAnalyticsAggregatedAlertOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "dismiss": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "aggregated_alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "aggregated_alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "top": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "IotSecuritySolutionsAnalyticsRecommendationOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "aggregated_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "top": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "JitNetworkAccessPoliciesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "JitNetworkAccessPolicy", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "initiate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "JitNetworkAccessPolicyInitiateRequest", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group_and_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "LocationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "MdeOnboardingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "OperationResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "OperationStatusesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "Operations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PricingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "type": "Pricing", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "PrivateEndpointConnectionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "type": "PrivateLinkParameters", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "type": "PrivateEndpointConnection", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "type": "PrivateLinkParameters", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PrivateLinkResourcesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PrivateLinksOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "type": "PrivateLinkParameters", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "PrivateLinkResource", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "type": "PrivateLinkParameters", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "head": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "type": "PrivateLinkParameters", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "PrivateLinkUpdate", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "type": "PrivateLinkParameters", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "RegulatoryComplianceAssessmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_control_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_control_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "RegulatoryComplianceControlsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_control_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "RegulatoryComplianceStandardsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecureScoreControlDefinitionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecureScoreControlsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expand": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_secure_score": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "secure_score_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expand": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecureScoresOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "secure_score_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityConnectorApplicationOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "Application", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityConnectorApplicationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityConnectorsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "SecurityConnector", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "SecurityConnector", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "SecurityOperatorsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_operator_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_operator_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_operator_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecuritySolutionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecuritySolutionsReferenceDataOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityStandardsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "SecurityStandard", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SensitivitySettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "type": "UpdateSensitivitySettingsRequest", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ServerVulnerabilityAssessmentOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_extended_resource": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ServerVulnerabilityAssessmentsSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "type": "Union[str, ServerVulnerabilityAssessmentsSettingKindName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "type": "ServerVulnerabilityAssessmentsSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "type": "Union[str, ServerVulnerabilityAssessmentsSettingKindName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "Setting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentBaselineRulesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "add": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "body": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[RulesResultsInput]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "body": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[RuleResultsInput]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentScanResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_result_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentScansOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_initiate_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_scan_operation_result": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[SqlVulnerabilityAssessmentSettings]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "StandardAssignmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "type": "StandardAssignment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "StandardsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "Standard", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SubAssessmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "sub_assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_all": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "TasksOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_resource_group_level_task": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_subscription_level_task": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_task_state": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_update_action_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_subscription_level_task_state": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_update_action_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "TopologyOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "topology_resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "WorkspaceSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "WorkspaceSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "WorkspaceSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + } + }, + "function_nodes": {} + }, + "azure.mgmt.security.models": { + "class_nodes": { + "AadConnectivityState": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "connectivity_state": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "connectivity_state": { + "attr_type": "connectivity_state" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AadConnectivityStateEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "CONNECTED": "CONNECTED", + "DISCOVERED": "DISCOVERED", + "NOT_LICENSED": "NOT_LICENSED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AadExternalSecuritySolution": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "default": "none", + "param_type": "keyword_only" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": { + "attr_type": "properties" + }, + "location": { + "attr_type": null + }, + "kind": { + "attr_type": "kind" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AadSolutionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "connectivity_state": { + "default": "none", + "param_type": "keyword_only" + }, + "additional_properties": { + "default": "none", + "param_type": "keyword_only" + }, + "device_vendor": { + "default": "none", + "param_type": "keyword_only" + }, + "device_type": { + "default": "none", + "param_type": "keyword_only" + }, + "workspace": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "connectivity_state": { + "attr_type": "connectivity_state" + }, + "additional_properties": { + "attr_type": null + }, + "device_vendor": { + "attr_type": "device_vendor" + }, + "device_type": { + "attr_type": "device_type" + }, + "workspace": { + "attr_type": "workspace" + } + } + }, + "AccessTokenAuthentication": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "username": { + "default": "none", + "param_type": "keyword_only" + }, + "access_token": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "authentication_type": { + "attr_type": null + }, + "username": { + "attr_type": "username" + }, + "access_token": { + "attr_type": "access_token" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ActionType": { + "type": "Enum", + "methods": {}, + "properties": { + "EVENT_HUB": "EVENT_HUB", + "INTERNAL": "INTERNAL", + "LOGIC_APP": "LOGIC_APP", + "WORKSPACE": "WORKSPACE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ActionableRemediation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "state": { + "default": "none", + "param_type": "keyword_only" + }, + "category_configurations": { + "default": "none", + "param_type": "keyword_only" + }, + "branch_configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "inherit_from_parent_state": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "state": { + "attr_type": "state" + }, + "category_configurations": { + "attr_type": "category_configurations" + }, + "branch_configuration": { + "attr_type": "branch_configuration" + }, + "inherit_from_parent_state": { + "attr_type": "inherit_from_parent_state" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ActionableRemediationState": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "NONE": "NONE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ActiveConnectionsNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AdditionalData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "assessed_resource_type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AdditionalWorkspaceDataType": { + "type": "Enum", + "methods": {}, + "properties": { + "ALERTS": "ALERTS", + "RAW_EVENTS": "RAW_EVENTS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AdditionalWorkspaceType": { + "type": "Enum", + "methods": {}, + "properties": { + "SENTINEL": "SENTINEL", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AdditionalWorkspacesProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace": { + "default": "none", + "param_type": "keyword_only" + }, + "type": { + "default": "str", + "param_type": "keyword_only" + }, + "data_types": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workspace": { + "attr_type": "workspace" + }, + "type": { + "attr_type": "type" + }, + "data_types": { + "attr_type": "data_types" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AdvancedThreatProtectionSetting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "is_enabled": { + "attr_type": "is_enabled" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AgentlessConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "agentless_enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "agentless_auto_discovery": { + "default": "none", + "param_type": "keyword_only" + }, + "scanners": { + "default": "none", + "param_type": "keyword_only" + }, + "inventory_list_type": { + "default": "none", + "param_type": "keyword_only" + }, + "inventory_list": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "agentless_enabled": { + "attr_type": "agentless_enabled" + }, + "agentless_auto_discovery": { + "attr_type": "agentless_auto_discovery" + }, + "scanners": { + "attr_type": "scanners" + }, + "inventory_list_type": { + "attr_type": "inventory_list_type" + }, + "inventory_list": { + "attr_type": "inventory_list" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AgentlessEnablement": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Alert": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "extended_properties": { + "default": "none", + "param_type": "keyword_only" + }, + "supporting_evidence": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "version": { + "attr_type": null + }, + "alert_type": { + "attr_type": null + }, + "system_alert_id": { + "attr_type": null + }, + "product_component_name": { + "attr_type": null + }, + "alert_display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "severity": { + "attr_type": null + }, + "intent": { + "attr_type": null + }, + "start_time_utc": { + "attr_type": null + }, + "end_time_utc": { + "attr_type": null + }, + "resource_identifiers": { + "attr_type": null + }, + "remediation_steps": { + "attr_type": null + }, + "vendor_name": { + "attr_type": null + }, + "status": { + "attr_type": null + }, + "extended_links": { + "attr_type": null + }, + "alert_uri": { + "attr_type": null + }, + "time_generated_utc": { + "attr_type": null + }, + "product_name": { + "attr_type": null + }, + "processing_end_time_utc": { + "attr_type": null + }, + "entities": { + "attr_type": null + }, + "is_incident": { + "attr_type": null + }, + "correlation_key": { + "attr_type": null + }, + "extended_properties": { + "attr_type": "extended_properties" + }, + "compromised_entity": { + "attr_type": null + }, + "techniques": { + "attr_type": null + }, + "sub_techniques": { + "attr_type": null + }, + "supporting_evidence": { + "attr_type": "supporting_evidence" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AlertEntity": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "additional_properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "additional_properties": { + "attr_type": null + }, + "type": { + "attr_type": null + } + } + }, + "AlertList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AlertPropertiesSupportingEvidence": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "additional_properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "additional_properties": { + "attr_type": null + }, + "type": { + "attr_type": null + } + } + }, + "AlertSeverity": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "INFORMATIONAL": "INFORMATIONAL", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AlertSimulatorBundlesRequestProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "additional_properties": { + "default": "none", + "param_type": "keyword_only" + }, + "bundles": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "kind": { + "attr_type": null + }, + "bundles": { + "attr_type": "bundles" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AlertSimulatorRequestBody": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": { + "attr_type": "properties" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AlertSimulatorRequestProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "additional_properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "additional_properties": { + "attr_type": null + }, + "kind": { + "attr_type": null + } + } + }, + "AlertStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "ACTIVE": "ACTIVE", + "DISMISSED": "DISMISSED", + "IN_PROGRESS": "IN_PROGRESS", + "RESOLVED": "RESOLVED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AlertSyncSettings": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "kind": { + "attr_type": null + }, + "enabled": { + "attr_type": "enabled" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AlertsSuppressionRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_type": { + "default": "none", + "param_type": "keyword_only" + }, + "expiration_date_utc": { + "default": "none", + "param_type": "keyword_only" + }, + "reason": { + "default": "none", + "param_type": "keyword_only" + }, + "state": { + "default": "none", + "param_type": "keyword_only" + }, + "comment": { + "default": "none", + "param_type": "keyword_only" + }, + "suppression_alerts_scope": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "alert_type": { + "attr_type": "alert_type" + }, + "last_modified_utc": { + "attr_type": null + }, + "expiration_date_utc": { + "attr_type": "expiration_date_utc" + }, + "reason": { + "attr_type": "reason" + }, + "state": { + "attr_type": "state" + }, + "comment": { + "attr_type": "comment" + }, + "suppression_alerts_scope": { + "attr_type": "suppression_alerts_scope" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AlertsSuppressionRulesList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AllowedConnectionsList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AllowedConnectionsResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "location": { + "attr_type": null + }, + "calculated_date_time": { + "attr_type": null + }, + "connectable_resources": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AllowlistCustomAlertRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "allowlist_values": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "allowlist_values": { + "attr_type": "allowlist_values" + }, + "value_type": { + "attr_type": null + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AmqpC2DMessagesNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AmqpC2DRejectedMessagesNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AmqpD2CMessagesNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AnnotateDefaultBranchState": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ApiCollection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_state": { + "attr_type": null + }, + "display_name": { + "attr_type": null + }, + "discovered_via": { + "attr_type": null + }, + "base_url": { + "attr_type": null + }, + "number_of_api_endpoints": { + "attr_type": null + }, + "number_of_inactive_api_endpoints": { + "attr_type": null + }, + "number_of_unauthenticated_api_endpoints": { + "attr_type": null + }, + "number_of_external_api_endpoints": { + "attr_type": null + }, + "number_of_api_endpoints_with_sensitive_data_exposed": { + "attr_type": null + }, + "sensitivity_label": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ApiCollectionList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Application": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "source_resource_type": { + "default": "none", + "param_type": "keyword_only" + }, + "condition_sets": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": { + "attr_type": "display_name" + }, + "description": { + "attr_type": "description" + }, + "source_resource_type": { + "attr_type": "source_resource_type" + }, + "condition_sets": { + "attr_type": "condition_sets" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ApplicationCondition": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "property": { + "default": "none", + "param_type": "keyword_only" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "operator": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "property": { + "attr_type": "property" + }, + "value": { + "attr_type": "value" + }, + "operator": { + "attr_type": "operator" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ApplicationConditionOperator": { + "type": "Enum", + "methods": {}, + "properties": { + "CONTAINS": "CONTAINS", + "EQUALS": "EQUALS", + "IN": "IN", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ApplicationSourceResourceType": { + "type": "Enum", + "methods": {}, + "properties": { + "ASSESSMENTS": "ASSESSMENTS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ApplicationsList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ArcAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ArcAutoProvisioningAws": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ArcAutoProvisioningConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "proxy": { + "default": "none", + "param_type": "keyword_only" + }, + "private_link_scope": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "proxy": { + "attr_type": "proxy" + }, + "private_link_scope": { + "attr_type": "private_link_scope" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ArcAutoProvisioningGcp": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AscLocation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AscLocationList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AssessedResourceType": { + "type": "Enum", + "methods": {}, + "properties": { + "CONTAINER_REGISTRY_VULNERABILITY": "CONTAINER_REGISTRY_VULNERABILITY", + "SERVER_VULNERABILITY": "SERVER_VULNERABILITY", + "SQL_SERVER_VULNERABILITY": "SQL_SERVER_VULNERABILITY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AssessmentLinks": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "azure_portal_uri": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AssessmentStatus": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "code": { + "default": null, + "param_type": "keyword_only" + }, + "cause": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": "code" + }, + "cause": { + "attr_type": "cause" + }, + "description": { + "attr_type": "description" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AssessmentStatusCode": { + "type": "Enum", + "methods": {}, + "properties": { + "HEALTHY": "HEALTHY", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "UNHEALTHY": "UNHEALTHY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AssessmentStatusResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "code": { + "default": null, + "param_type": "keyword_only" + }, + "cause": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "first_evaluation_date": { + "attr_type": null + }, + "status_change_date": { + "attr_type": null + }, + "code": { + "attr_type": "code" + }, + "cause": { + "attr_type": "cause" + }, + "description": { + "attr_type": "description" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AssessmentType": { + "type": "Enum", + "methods": {}, + "properties": { + "BUILT_IN": "BUILT_IN", + "BUILT_IN_POLICY": "BUILT_IN_POLICY", + "CUSTOM": "CUSTOM", + "CUSTOMER_MANAGED": "CUSTOMER_MANAGED", + "CUSTOM_POLICY": "CUSTOM_POLICY", + "DYNAMIC_BUILT_IN": "DYNAMIC_BUILT_IN", + "MANUAL_BUILT_IN": "MANUAL_BUILT_IN", + "MANUAL_BUILT_IN_POLICY": "MANUAL_BUILT_IN_POLICY", + "MANUAL_CUSTOM_POLICY": "MANUAL_CUSTOM_POLICY", + "UNKNOWN": "UNKNOWN", + "VERIFIED_PARTNER": "VERIFIED_PARTNER", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AssignedAssessmentItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_key": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "assessment_key": { + "attr_type": "assessment_key" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AssignedComponentItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "key": { + "attr_type": "key" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AssignedStandardItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AssignedStandardItemAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Assignment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "etag": { + "default": "none", + "param_type": "keyword_only" + }, + "kind": { + "default": "none", + "param_type": "keyword_only" + }, + "location": { + "default": "none", + "param_type": "keyword_only" + }, + "display_name": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "assigned_standard": { + "default": "none", + "param_type": "keyword_only" + }, + "assigned_component": { + "default": "none", + "param_type": "keyword_only" + }, + "scope": { + "default": "none", + "param_type": "keyword_only" + }, + "effect": { + "default": "none", + "param_type": "keyword_only" + }, + "expires_on": { + "default": "none", + "param_type": "keyword_only" + }, + "additional_data": { + "default": "none", + "param_type": "keyword_only" + }, + "metadata": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "system_data": { + "attr_type": null + }, + "display_name": { + "attr_type": "display_name" + }, + "description": { + "attr_type": "description" + }, + "assigned_standard": { + "attr_type": "assigned_standard" + }, + "assigned_component": { + "attr_type": "assigned_component" + }, + "scope": { + "attr_type": "scope" + }, + "effect": { + "attr_type": "effect" + }, + "expires_on": { + "attr_type": "expires_on" + }, + "additional_data": { + "attr_type": "additional_data" + }, + "metadata": { + "attr_type": "metadata" + }, + "tags": { + "attr_type": "tags" + }, + "etag": { + "attr_type": "etag" + }, + "kind": { + "attr_type": "kind" + }, + "location": { + "attr_type": "location" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AssignmentList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AssignmentPropertiesAdditionalData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exemption_category": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "exemption_category": { + "attr_type": "exemption_category" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AtaExternalSecuritySolution": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "default": "none", + "param_type": "keyword_only" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": { + "attr_type": "properties" + }, + "location": { + "attr_type": null + }, + "kind": { + "attr_type": "kind" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AtaSolutionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "additional_properties": { + "default": "none", + "param_type": "keyword_only" + }, + "device_vendor": { + "default": "none", + "param_type": "keyword_only" + }, + "device_type": { + "default": "none", + "param_type": "keyword_only" + }, + "workspace": { + "default": "none", + "param_type": "keyword_only" + }, + "last_event_received": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "last_event_received": { + "attr_type": "last_event_received" + }, + "additional_properties": { + "attr_type": null + }, + "device_vendor": { + "attr_type": "device_vendor" + }, + "device_type": { + "attr_type": "device_type" + }, + "workspace": { + "attr_type": "workspace" + } + } + }, + "AttestationComplianceState": { + "type": "Enum", + "methods": {}, + "properties": { + "COMPLIANT": "COMPLIANT", + "NON_COMPLIANT": "NON_COMPLIANT", + "UNKNOWN": "UNKNOWN", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AttestationEvidence": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "source_url": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": { + "attr_type": "description" + }, + "source_url": { + "attr_type": "source_url" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Authentication": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "authentication_type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AuthenticationType": { + "type": "Enum", + "methods": {}, + "properties": { + "ACCESS_TOKEN": "ACCESS_TOKEN", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Authorization": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "code": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": "code" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutoDiscovery": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AutoProvision": { + "type": "Enum", + "methods": {}, + "properties": { + "OFF": "OFF", + "ON": "ON", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AutoProvisioningSetting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "auto_provision": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "auto_provision": { + "attr_type": "auto_provision" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutoProvisioningSettingList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutomatedResponseType": { + "type": "Enum", + "methods": {}, + "properties": { + "BLOB_SOFT_DELETE": "BLOB_SOFT_DELETE", + "NONE": "NONE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Automation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "etag": { + "default": "none", + "param_type": "keyword_only" + }, + "kind": { + "default": "none", + "param_type": "keyword_only" + }, + "location": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "is_enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "scopes": { + "default": "none", + "param_type": "keyword_only" + }, + "sources": { + "default": "none", + "param_type": "keyword_only" + }, + "actions": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": { + "attr_type": "description" + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "scopes": { + "attr_type": "scopes" + }, + "sources": { + "attr_type": "sources" + }, + "actions": { + "attr_type": "actions" + }, + "tags": { + "attr_type": "tags" + }, + "etag": { + "attr_type": "etag" + }, + "kind": { + "attr_type": "kind" + }, + "location": { + "attr_type": "location" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutomationAction": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "action_type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutomationActionEventHub": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "event_hub_resource_id": { + "default": "none", + "param_type": "keyword_only" + }, + "connection_string": { + "default": "none", + "param_type": "keyword_only" + }, + "is_trusted_service_enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "action_type": { + "attr_type": null + }, + "event_hub_resource_id": { + "attr_type": "event_hub_resource_id" + }, + "sas_policy_name": { + "attr_type": null + }, + "connection_string": { + "attr_type": "connection_string" + }, + "is_trusted_service_enabled": { + "attr_type": "is_trusted_service_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutomationActionLogicApp": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "logic_app_resource_id": { + "default": "none", + "param_type": "keyword_only" + }, + "uri": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "action_type": { + "attr_type": null + }, + "logic_app_resource_id": { + "attr_type": "logic_app_resource_id" + }, + "uri": { + "attr_type": "uri" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutomationActionWorkspace": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_resource_id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "action_type": { + "attr_type": null + }, + "workspace_resource_id": { + "attr_type": "workspace_resource_id" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutomationList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutomationRuleSet": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rules": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rules": { + "attr_type": "rules" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutomationScope": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "scope_path": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": { + "attr_type": "description" + }, + "scope_path": { + "attr_type": "scope_path" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutomationSource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "event_source": { + "default": "none", + "param_type": "keyword_only" + }, + "rule_sets": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "event_source": { + "attr_type": "event_source" + }, + "rule_sets": { + "attr_type": "rule_sets" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutomationTriggeringRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "property_j_path": { + "default": "none", + "param_type": "keyword_only" + }, + "property_type": { + "default": "none", + "param_type": "keyword_only" + }, + "expected_value": { + "default": "none", + "param_type": "keyword_only" + }, + "operator": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "property_j_path": { + "attr_type": "property_j_path" + }, + "property_type": { + "attr_type": "property_type" + }, + "expected_value": { + "attr_type": "expected_value" + }, + "operator": { + "attr_type": "operator" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutomationUpdateModel": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "is_enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "scopes": { + "default": "none", + "param_type": "keyword_only" + }, + "sources": { + "default": "none", + "param_type": "keyword_only" + }, + "actions": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": { + "attr_type": "description" + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "scopes": { + "attr_type": "scopes" + }, + "sources": { + "attr_type": "sources" + }, + "actions": { + "attr_type": "actions" + }, + "tags": { + "attr_type": "tags" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AutomationValidationStatus": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_valid": { + "default": "none", + "param_type": "keyword_only" + }, + "message": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "is_valid": { + "attr_type": "is_valid" + }, + "message": { + "attr_type": "message" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AwsEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "organizational_data": { + "default": "none", + "param_type": "keyword_only" + }, + "regions": { + "default": "none", + "param_type": "keyword_only" + }, + "scan_interval": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "environment_type": { + "attr_type": null + }, + "organizational_data": { + "attr_type": "organizational_data" + }, + "regions": { + "attr_type": "regions" + }, + "account_name": { + "attr_type": null + }, + "scan_interval": { + "attr_type": "scan_interval" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AwsOrganizationalData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "organization_membership_type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AwsOrganizationalDataMaster": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "stackset_name": { + "default": "none", + "param_type": "keyword_only" + }, + "excluded_account_ids": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "organization_membership_type": { + "attr_type": null + }, + "stackset_name": { + "attr_type": "stackset_name" + }, + "excluded_account_ids": { + "attr_type": "excluded_account_ids" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AwsOrganizationalDataMember": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "parent_hierarchy_id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "organization_membership_type": { + "attr_type": null + }, + "parent_hierarchy_id": { + "attr_type": "parent_hierarchy_id" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureDevOpsOrg": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "system_data": { + "attr_type": null + }, + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureDevOpsOrgListResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "next_link": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": "next_link" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureDevOpsOrgProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "onboarding_state": { + "default": "none", + "param_type": "keyword_only" + }, + "actionable_remediation": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": { + "attr_type": null + }, + "provisioning_status_update_time_utc": { + "attr_type": null + }, + "provisioning_state": { + "attr_type": null + }, + "onboarding_state": { + "attr_type": "onboarding_state" + }, + "actionable_remediation": { + "attr_type": "actionable_remediation" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureDevOpsOrganizationConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "auto_discovery": { + "default": "none", + "param_type": "keyword_only" + }, + "project_configs": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "auto_discovery": { + "attr_type": "auto_discovery" + }, + "project_configs": { + "attr_type": "project_configs" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureDevOpsProject": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "system_data": { + "attr_type": null + }, + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureDevOpsProjectConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "auto_discovery": { + "default": "none", + "param_type": "keyword_only" + }, + "repository_configs": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "auto_discovery": { + "attr_type": "auto_discovery" + }, + "repository_configs": { + "attr_type": "repository_configs" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureDevOpsProjectListResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "next_link": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": "next_link" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureDevOpsProjectProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "parent_org_name": { + "default": "none", + "param_type": "keyword_only" + }, + "onboarding_state": { + "default": "none", + "param_type": "keyword_only" + }, + "actionable_remediation": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": { + "attr_type": null + }, + "provisioning_status_update_time_utc": { + "attr_type": null + }, + "provisioning_state": { + "attr_type": null + }, + "parent_org_name": { + "attr_type": "parent_org_name" + }, + "project_id": { + "attr_type": null + }, + "onboarding_state": { + "attr_type": "onboarding_state" + }, + "actionable_remediation": { + "attr_type": "actionable_remediation" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureDevOpsRepository": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "system_data": { + "attr_type": null + }, + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureDevOpsRepositoryListResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "next_link": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": "next_link" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureDevOpsRepositoryProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "parent_org_name": { + "default": "none", + "param_type": "keyword_only" + }, + "parent_project_name": { + "default": "none", + "param_type": "keyword_only" + }, + "onboarding_state": { + "default": "none", + "param_type": "keyword_only" + }, + "actionable_remediation": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": { + "attr_type": null + }, + "provisioning_status_update_time_utc": { + "attr_type": null + }, + "provisioning_state": { + "attr_type": null + }, + "parent_org_name": { + "attr_type": "parent_org_name" + }, + "parent_project_name": { + "attr_type": "parent_project_name" + }, + "repo_id": { + "attr_type": null + }, + "repo_url": { + "attr_type": null + }, + "visibility": { + "attr_type": null + }, + "onboarding_state": { + "attr_type": "onboarding_state" + }, + "actionable_remediation": { + "attr_type": "actionable_remediation" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureDevOpsScopeEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "environment_type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureResourceDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "source": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureResourceIdentifier": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": { + "attr_type": null + }, + "azure_resource_id": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureResourceLink": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureServersSetting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "selected_provider": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "kind": { + "attr_type": null + }, + "selected_provider": { + "attr_type": "selected_provider" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "system_data": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "AzureTrackedResourceLocation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "location": { + "attr_type": "location" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "BaseResourceConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "desired_onboarding_state": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "desired_onboarding_state": { + "attr_type": "desired_onboarding_state" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Baseline": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expected_results": { + "default": "none", + "param_type": "keyword_only" + }, + "updated_time": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "expected_results": { + "attr_type": "expected_results" + }, + "updated_time": { + "attr_type": "updated_time" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "BaselineAdjustedResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "baseline": { + "default": "none", + "param_type": "keyword_only" + }, + "status": { + "default": "none", + "param_type": "keyword_only" + }, + "results_not_in_baseline": { + "default": "none", + "param_type": "keyword_only" + }, + "results_only_in_baseline": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "baseline": { + "attr_type": "baseline" + }, + "status": { + "attr_type": "status" + }, + "results_not_in_baseline": { + "attr_type": "results_not_in_baseline" + }, + "results_only_in_baseline": { + "attr_type": "results_only_in_baseline" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "BenchmarkReference": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "benchmark": { + "default": "none", + "param_type": "keyword_only" + }, + "reference": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "benchmark": { + "attr_type": "benchmark" + }, + "reference": { + "attr_type": "reference" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "BlobScanResultsOptions": { + "type": "Enum", + "methods": {}, + "properties": { + "BLOB_INDEX_TAGS": "BLOB_INDEX_TAGS", + "NONE": "NONE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "BlobsScanSummary": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "total_blobs_scanned": { + "default": "none", + "param_type": "keyword_only" + }, + "malicious_blobs_count": { + "default": "none", + "param_type": "keyword_only" + }, + "skipped_blobs_count": { + "default": "none", + "param_type": "keyword_only" + }, + "failed_blobs_count": { + "default": "none", + "param_type": "keyword_only" + }, + "scanned_blobs_in_gb": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "total_blobs_scanned": { + "attr_type": "total_blobs_scanned" + }, + "malicious_blobs_count": { + "attr_type": "malicious_blobs_count" + }, + "skipped_blobs_count": { + "attr_type": "skipped_blobs_count" + }, + "failed_blobs_count": { + "attr_type": "failed_blobs_count" + }, + "scanned_blobs_in_gb": { + "attr_type": "scanned_blobs_in_gb" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "BuiltInInfoType": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "name": { + "default": "none", + "param_type": "keyword_only" + }, + "id": { + "default": "none", + "param_type": "keyword_only" + }, + "type": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": { + "attr_type": "name" + }, + "id": { + "attr_type": "id" + }, + "type": { + "attr_type": "type" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "BundleType": { + "type": "Enum", + "methods": {}, + "properties": { + "APP_SERVICES": "APP_SERVICES", + "COSMOS_DBS": "COSMOS_DBS", + "DNS": "DNS", + "KEY_VAULTS": "KEY_VAULTS", + "KUBERNETES_SERVICE": "KUBERNETES_SERVICE", + "RESOURCE_MANAGER": "RESOURCE_MANAGER", + "SQL_SERVERS": "SQL_SERVERS", + "STORAGE_ACCOUNTS": "STORAGE_ACCOUNTS", + "VIRTUAL_MACHINES": "VIRTUAL_MACHINES", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "CVE": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "title": { + "attr_type": null + }, + "link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CVSS": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "base": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Categories": { + "type": "Enum", + "methods": {}, + "properties": { + "APP_SERVICES": "APP_SERVICES", + "COMPUTE": "COMPUTE", + "CONTAINER": "CONTAINER", + "DATA": "DATA", + "IDENTITY_AND_ACCESS": "IDENTITY_AND_ACCESS", + "IO_T": "IO_T", + "NETWORKING": "NETWORKING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "CategoryConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "minimum_severity_level": { + "default": "none", + "param_type": "keyword_only" + }, + "category": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "minimum_severity_level": { + "attr_type": "minimum_severity_level" + }, + "category": { + "attr_type": "category" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CefExternalSecuritySolution": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "default": "none", + "param_type": "keyword_only" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": { + "attr_type": "properties" + }, + "location": { + "attr_type": null + }, + "kind": { + "attr_type": "kind" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CefSolutionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "additional_properties": { + "default": "none", + "param_type": "keyword_only" + }, + "device_vendor": { + "default": "none", + "param_type": "keyword_only" + }, + "device_type": { + "default": "none", + "param_type": "keyword_only" + }, + "workspace": { + "default": "none", + "param_type": "keyword_only" + }, + "hostname": { + "default": "none", + "param_type": "keyword_only" + }, + "agent": { + "default": "none", + "param_type": "keyword_only" + }, + "last_event_received": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "hostname": { + "attr_type": "hostname" + }, + "agent": { + "attr_type": "agent" + }, + "last_event_received": { + "attr_type": "last_event_received" + }, + "additional_properties": { + "attr_type": null + }, + "device_vendor": { + "attr_type": "device_vendor" + }, + "device_type": { + "attr_type": "device_type" + }, + "workspace": { + "attr_type": "workspace" + } + } + }, + "CloudErrorAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated10": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated11": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated12": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated13": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated14": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated15": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated16": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated17": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated18": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated19": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated2": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated20": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated3": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated4": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated5": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated6": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated7": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated8": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorAutoGenerated9": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBody": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated10": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated11": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated12": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated13": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated14": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated15": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated16": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated17": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated18": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated19": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated2": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated20": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated3": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated4": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated5": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated6": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated7": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated8": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudErrorBodyAutoGenerated9": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CloudName": { + "type": "Enum", + "methods": {}, + "properties": { + "AWS": "AWS", + "AZURE": "AZURE", + "AZURE_DEV_OPS": "AZURE_DEV_OPS", + "DOCKER_HUB": "DOCKER_HUB", + "GCP": "GCP", + "GITHUB": "GITHUB", + "GIT_LAB": "GIT_LAB", + "J_FROG": "J_FROG", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "CloudOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Code": { + "type": "Enum", + "methods": {}, + "properties": { + "FAILED": "FAILED", + "SUCCEEDED": "SUCCEEDED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Compliance": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "assessment_timestamp_utc_date": { + "attr_type": null + }, + "resource_count": { + "attr_type": null + }, + "assessment_result": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ComplianceList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ComplianceResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "resource_status": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ComplianceResultList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ComplianceSegment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "segment_type": { + "attr_type": null + }, + "percentage": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Components1Uu4J47SchemasSecurityassessmentpropertiesbasePropertiesRiskPropertiesPathsItemsPropertiesEdgesItems": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "default": null, + "param_type": "keyword_only" + }, + "target_id": { + "default": null, + "param_type": "keyword_only" + }, + "source_id": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "target_id": { + "attr_type": "target_id" + }, + "source_id": { + "attr_type": "source_id" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Condition": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "property": { + "default": "none", + "param_type": "keyword_only" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "operator": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "property": { + "attr_type": "property" + }, + "value": { + "attr_type": "value" + }, + "operator": { + "attr_type": "operator" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ConnectableResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": null + }, + "inbound_connected_resources": { + "attr_type": null + }, + "outbound_connected_resources": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ConnectedResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "connected_resource_id": { + "attr_type": null + }, + "tcp_ports": { + "attr_type": null + }, + "udp_ports": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ConnectedWorkspace": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ConnectionFromIpNotAllowed": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "allowlist_values": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "allowlist_values": { + "attr_type": "allowlist_values" + }, + "value_type": { + "attr_type": null + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ConnectionToIpNotAllowed": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "allowlist_values": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "allowlist_values": { + "attr_type": "allowlist_values" + }, + "value_type": { + "attr_type": null + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ConnectionType": { + "type": "Enum", + "methods": {}, + "properties": { + "EXTERNAL": "EXTERNAL", + "INTERNAL": "INTERNAL", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ContainerRegistryVulnerabilityProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "assessed_resource_type": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "cvss": { + "attr_type": null + }, + "patchable": { + "attr_type": null + }, + "cve": { + "attr_type": null + }, + "published_time": { + "attr_type": null + }, + "vendor_references": { + "attr_type": null + }, + "repository_name": { + "attr_type": null + }, + "image_digest": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ControlType": { + "type": "Enum", + "methods": {}, + "properties": { + "BUILT_IN": "BUILT_IN", + "CUSTOM": "CUSTOM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "CreatedByType": { + "type": "Enum", + "methods": {}, + "properties": { + "APPLICATION": "APPLICATION", + "KEY": "KEY", + "MANAGED_IDENTITY": "MANAGED_IDENTITY", + "USER": "USER", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "CspmMonitorAwsOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "native_cloud_connection": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "native_cloud_connection": { + "attr_type": "native_cloud_connection" + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CspmMonitorAwsOfferingNativeCloudConnection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CspmMonitorAzureDevOpsOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CspmMonitorDockerHubOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CspmMonitorGcpOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "native_cloud_connection": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "native_cloud_connection": { + "attr_type": "native_cloud_connection" + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CspmMonitorGcpOfferingNativeCloudConnection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workload_identity_provider_id": { + "default": "none", + "param_type": "keyword_only" + }, + "service_account_email_address": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workload_identity_provider_id": { + "attr_type": "workload_identity_provider_id" + }, + "service_account_email_address": { + "attr_type": "service_account_email_address" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CspmMonitorGitLabOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CspmMonitorGithubOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CspmMonitorJFrogOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CustomAlertRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "rule_type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CustomRecommendation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "query": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_providers": { + "default": "none", + "param_type": "keyword_only" + }, + "severity": { + "default": "str", + "param_type": "keyword_only" + }, + "security_issue": { + "default": "str", + "param_type": "keyword_only" + }, + "display_name": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "remediation_description": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "system_data": { + "attr_type": null + }, + "query": { + "attr_type": "query" + }, + "cloud_providers": { + "attr_type": "cloud_providers" + }, + "severity": { + "attr_type": "severity" + }, + "security_issue": { + "attr_type": "security_issue" + }, + "display_name": { + "attr_type": "display_name" + }, + "description": { + "attr_type": "description" + }, + "remediation_description": { + "attr_type": "remediation_description" + }, + "assessment_key": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "CustomRecommendationsList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "next_link": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": "next_link" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DataExportSettings": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "kind": { + "attr_type": null + }, + "enabled": { + "attr_type": "enabled" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DataSource": { + "type": "Enum", + "methods": {}, + "properties": { + "TWIN_DATA": "TWIN_DATA", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "DefenderCspmAwsOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "vm_scanners": { + "default": "none", + "param_type": "keyword_only" + }, + "data_sensitivity_discovery": { + "default": "none", + "param_type": "keyword_only" + }, + "databases_dspm": { + "default": "none", + "param_type": "keyword_only" + }, + "ciem": { + "default": "none", + "param_type": "keyword_only" + }, + "mdc_containers_image_assessment": { + "default": "none", + "param_type": "keyword_only" + }, + "mdc_containers_agentless_discovery_k8_s": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "vm_scanners": { + "attr_type": "vm_scanners" + }, + "data_sensitivity_discovery": { + "attr_type": "data_sensitivity_discovery" + }, + "databases_dspm": { + "attr_type": "databases_dspm" + }, + "ciem": { + "attr_type": "ciem" + }, + "mdc_containers_image_assessment": { + "attr_type": "mdc_containers_image_assessment" + }, + "mdc_containers_agentless_discovery_k8_s": { + "attr_type": "mdc_containers_agentless_discovery_k8_s" + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmAwsOfferingCiem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "ciem_discovery": { + "default": "none", + "param_type": "keyword_only" + }, + "ciem_oidc": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "ciem_discovery": { + "attr_type": "ciem_discovery" + }, + "ciem_oidc": { + "attr_type": "ciem_oidc" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmAwsOfferingCiemDiscovery": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmAwsOfferingCiemOidc": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "azure_active_directory_app_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "azure_active_directory_app_name": { + "attr_type": "azure_active_directory_app_name" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmAwsOfferingDataSensitivityDiscovery": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmAwsOfferingDatabasesDspm": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmAwsOfferingMdcContainersImageAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmAwsOfferingVmScanners": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmDockerHubOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmGcpOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "ciem_discovery": { + "default": "none", + "param_type": "keyword_only" + }, + "vm_scanners": { + "default": "none", + "param_type": "keyword_only" + }, + "data_sensitivity_discovery": { + "default": "none", + "param_type": "keyword_only" + }, + "mdc_containers_image_assessment": { + "default": "none", + "param_type": "keyword_only" + }, + "mdc_containers_agentless_discovery_k8_s": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "ciem_discovery": { + "attr_type": "ciem_discovery" + }, + "vm_scanners": { + "attr_type": "vm_scanners" + }, + "data_sensitivity_discovery": { + "attr_type": "data_sensitivity_discovery" + }, + "mdc_containers_image_assessment": { + "attr_type": "mdc_containers_image_assessment" + }, + "mdc_containers_agentless_discovery_k8_s": { + "attr_type": "mdc_containers_agentless_discovery_k8_s" + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmGcpOfferingCiemDiscovery": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workload_identity_provider_id": { + "default": "none", + "param_type": "keyword_only" + }, + "service_account_email_address": { + "default": "none", + "param_type": "keyword_only" + }, + "azure_active_directory_app_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workload_identity_provider_id": { + "attr_type": "workload_identity_provider_id" + }, + "service_account_email_address": { + "attr_type": "service_account_email_address" + }, + "azure_active_directory_app_name": { + "attr_type": "azure_active_directory_app_name" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmGcpOfferingDataSensitivityDiscovery": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "default": "none", + "param_type": "keyword_only" + }, + "service_account_email_address": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "workload_identity_provider_id": { + "attr_type": "workload_identity_provider_id" + }, + "service_account_email_address": { + "attr_type": "service_account_email_address" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "default": "none", + "param_type": "keyword_only" + }, + "service_account_email_address": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "workload_identity_provider_id": { + "attr_type": "workload_identity_provider_id" + }, + "service_account_email_address": { + "attr_type": "service_account_email_address" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmGcpOfferingMdcContainersImageAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "default": "none", + "param_type": "keyword_only" + }, + "service_account_email_address": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "workload_identity_provider_id": { + "attr_type": "workload_identity_provider_id" + }, + "service_account_email_address": { + "attr_type": "service_account_email_address" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmGcpOfferingVmScanners": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmJFrogOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "mdc_containers_image_assessment": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "mdc_containers_image_assessment": { + "attr_type": "mdc_containers_image_assessment" + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderCspmJFrogOfferingMdcContainersImageAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderFoDatabasesAwsOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "arc_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "rds": { + "default": "none", + "param_type": "keyword_only" + }, + "databases_dspm": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "arc_auto_provisioning": { + "attr_type": "arc_auto_provisioning" + }, + "rds": { + "attr_type": "rds" + }, + "databases_dspm": { + "attr_type": "databases_dspm" + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderFoDatabasesAwsOfferingArcAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderFoDatabasesAwsOfferingDatabasesDspm": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderFoDatabasesAwsOfferingRds": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersAwsOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kubernetes_service": { + "default": "none", + "param_type": "keyword_only" + }, + "kubernetes_data_collection": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_watch_to_kinesis": { + "default": "none", + "param_type": "keyword_only" + }, + "kinesis_to_s3": { + "default": "none", + "param_type": "keyword_only" + }, + "enable_audit_logs_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "enable_defender_agent_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "enable_policy_agent_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "kube_audit_retention_time": { + "default": "none", + "param_type": "keyword_only" + }, + "data_collection_external_id": { + "default": "none", + "param_type": "keyword_only" + }, + "mdc_containers_image_assessment": { + "default": "none", + "param_type": "keyword_only" + }, + "mdc_containers_agentless_discovery_k8_s": { + "default": "none", + "param_type": "keyword_only" + }, + "vm_scanners": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "kubernetes_service": { + "attr_type": "kubernetes_service" + }, + "kubernetes_data_collection": { + "attr_type": "kubernetes_data_collection" + }, + "cloud_watch_to_kinesis": { + "attr_type": "cloud_watch_to_kinesis" + }, + "kinesis_to_s3": { + "attr_type": "kinesis_to_s3" + }, + "enable_audit_logs_auto_provisioning": { + "attr_type": "enable_audit_logs_auto_provisioning" + }, + "enable_defender_agent_auto_provisioning": { + "attr_type": "enable_defender_agent_auto_provisioning" + }, + "enable_policy_agent_auto_provisioning": { + "attr_type": "enable_policy_agent_auto_provisioning" + }, + "kube_audit_retention_time": { + "attr_type": "kube_audit_retention_time" + }, + "data_collection_external_id": { + "attr_type": "data_collection_external_id" + }, + "mdc_containers_image_assessment": { + "attr_type": "mdc_containers_image_assessment" + }, + "mdc_containers_agentless_discovery_k8_s": { + "attr_type": "mdc_containers_agentless_discovery_k8_s" + }, + "vm_scanners": { + "attr_type": "vm_scanners" + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersAwsOfferingCloudWatchToKinesis": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersAwsOfferingKinesisToS3": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersAwsOfferingKubernetesDataCollection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersAwsOfferingKubernetesService": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersAwsOfferingMdcContainersImageAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersAwsOfferingVmScanners": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersDockerHubOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersGcpOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "native_cloud_connection": { + "default": "none", + "param_type": "keyword_only" + }, + "data_pipeline_native_cloud_connection": { + "default": "none", + "param_type": "keyword_only" + }, + "enable_audit_logs_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "enable_defender_agent_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "enable_policy_agent_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "mdc_containers_image_assessment": { + "default": "none", + "param_type": "keyword_only" + }, + "mdc_containers_agentless_discovery_k8_s": { + "default": "none", + "param_type": "keyword_only" + }, + "vm_scanners": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "native_cloud_connection": { + "attr_type": "native_cloud_connection" + }, + "data_pipeline_native_cloud_connection": { + "attr_type": "data_pipeline_native_cloud_connection" + }, + "enable_audit_logs_auto_provisioning": { + "attr_type": "enable_audit_logs_auto_provisioning" + }, + "enable_defender_agent_auto_provisioning": { + "attr_type": "enable_defender_agent_auto_provisioning" + }, + "enable_policy_agent_auto_provisioning": { + "attr_type": "enable_policy_agent_auto_provisioning" + }, + "mdc_containers_image_assessment": { + "attr_type": "mdc_containers_image_assessment" + }, + "mdc_containers_agentless_discovery_k8_s": { + "attr_type": "mdc_containers_agentless_discovery_k8_s" + }, + "vm_scanners": { + "attr_type": "vm_scanners" + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_account_email_address": { + "default": "none", + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "service_account_email_address": { + "attr_type": "service_account_email_address" + }, + "workload_identity_provider_id": { + "attr_type": "workload_identity_provider_id" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "default": "none", + "param_type": "keyword_only" + }, + "service_account_email_address": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "workload_identity_provider_id": { + "attr_type": "workload_identity_provider_id" + }, + "service_account_email_address": { + "attr_type": "service_account_email_address" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersGcpOfferingMdcContainersImageAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "default": "none", + "param_type": "keyword_only" + }, + "service_account_email_address": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "workload_identity_provider_id": { + "attr_type": "workload_identity_provider_id" + }, + "service_account_email_address": { + "attr_type": "service_account_email_address" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersGcpOfferingNativeCloudConnection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_account_email_address": { + "default": "none", + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "service_account_email_address": { + "attr_type": "service_account_email_address" + }, + "workload_identity_provider_id": { + "attr_type": "workload_identity_provider_id" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersGcpOfferingVmScanners": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForContainersJFrogOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForDatabasesGcpOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "arc_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "defender_for_databases_arc_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "arc_auto_provisioning": { + "attr_type": "arc_auto_provisioning" + }, + "defender_for_databases_arc_auto_provisioning": { + "attr_type": "defender_for_databases_arc_auto_provisioning" + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForDatabasesGcpOfferingArcAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_account_email_address": { + "default": "none", + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "service_account_email_address": { + "attr_type": "service_account_email_address" + }, + "workload_identity_provider_id": { + "attr_type": "workload_identity_provider_id" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersAwsOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_servers": { + "default": "none", + "param_type": "keyword_only" + }, + "arc_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "va_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "mde_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "sub_plan": { + "default": "none", + "param_type": "keyword_only" + }, + "vm_scanners": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "defender_for_servers": { + "attr_type": "defender_for_servers" + }, + "arc_auto_provisioning": { + "attr_type": "arc_auto_provisioning" + }, + "va_auto_provisioning": { + "attr_type": "va_auto_provisioning" + }, + "mde_auto_provisioning": { + "attr_type": "mde_auto_provisioning" + }, + "sub_plan": { + "attr_type": "sub_plan" + }, + "vm_scanners": { + "attr_type": "vm_scanners" + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersAwsOfferingArcAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersAwsOfferingDefenderForServers": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersAwsOfferingMdeAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersAwsOfferingSubPlan": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": { + "attr_type": "type" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersAwsOfferingVaAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersAwsOfferingVaAutoProvisioningConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": { + "attr_type": "type" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersAwsOfferingVmScanners": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersGcpOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_servers": { + "default": "none", + "param_type": "keyword_only" + }, + "arc_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "va_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "mde_auto_provisioning": { + "default": "none", + "param_type": "keyword_only" + }, + "sub_plan": { + "default": "none", + "param_type": "keyword_only" + }, + "vm_scanners": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": { + "attr_type": null + }, + "defender_for_servers": { + "attr_type": "defender_for_servers" + }, + "arc_auto_provisioning": { + "attr_type": "arc_auto_provisioning" + }, + "va_auto_provisioning": { + "attr_type": "va_auto_provisioning" + }, + "mde_auto_provisioning": { + "attr_type": "mde_auto_provisioning" + }, + "sub_plan": { + "attr_type": "sub_plan" + }, + "vm_scanners": { + "attr_type": "vm_scanners" + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersGcpOfferingArcAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersGcpOfferingDefenderForServers": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workload_identity_provider_id": { + "default": "none", + "param_type": "keyword_only" + }, + "service_account_email_address": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workload_identity_provider_id": { + "attr_type": "workload_identity_provider_id" + }, + "service_account_email_address": { + "attr_type": "service_account_email_address" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersGcpOfferingMdeAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersGcpOfferingSubPlan": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": { + "attr_type": "type" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersGcpOfferingVaAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersGcpOfferingVaAutoProvisioningConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": { + "attr_type": "type" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForServersGcpOfferingVmScanners": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForStorageSetting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForStorageSettingList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DefenderForStorageSettingProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "malware_scanning": { + "default": "none", + "param_type": "keyword_only" + }, + "sensitive_data_discovery": { + "default": "none", + "param_type": "keyword_only" + }, + "override_subscription_level_settings": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "is_enabled": { + "attr_type": "is_enabled" + }, + "malware_scanning": { + "attr_type": "malware_scanning" + }, + "sensitive_data_discovery": { + "attr_type": "sensitive_data_discovery" + }, + "override_subscription_level_settings": { + "attr_type": "override_subscription_level_settings" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DenylistCustomAlertRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "denylist_values": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "denylist_values": { + "attr_type": "denylist_values" + }, + "value_type": { + "attr_type": null + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DesiredOnboardingState": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "DevOpsCapability": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": { + "attr_type": null + }, + "value": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DevOpsConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "system_data": { + "attr_type": null + }, + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DevOpsConfigurationListResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "next_link": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": "next_link" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DevOpsConfigurationProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "authorization": { + "default": "none", + "param_type": "keyword_only" + }, + "auto_discovery": { + "default": "none", + "param_type": "keyword_only" + }, + "top_level_inventory_list": { + "default": "none", + "param_type": "keyword_only" + }, + "agentless_configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": { + "attr_type": null + }, + "provisioning_status_update_time_utc": { + "attr_type": null + }, + "provisioning_state": { + "attr_type": null + }, + "authorization": { + "attr_type": "authorization" + }, + "auto_discovery": { + "attr_type": "auto_discovery" + }, + "top_level_inventory_list": { + "attr_type": "top_level_inventory_list" + }, + "capabilities": { + "attr_type": null + }, + "agentless_configuration": { + "attr_type": "agentless_configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DevOpsProvisioningState": { + "type": "Enum", + "methods": {}, + "properties": { + "CANCELED": "CANCELED", + "DELETION_FAILURE": "DELETION_FAILURE", + "DELETION_SUCCESS": "DELETION_SUCCESS", + "FAILED": "FAILED", + "PENDING": "PENDING", + "PENDING_DELETION": "PENDING_DELETION", + "SUCCEEDED": "SUCCEEDED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "DeviceSecurityGroup": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "threshold_rules": { + "default": "none", + "param_type": "keyword_only" + }, + "time_window_rules": { + "default": "none", + "param_type": "keyword_only" + }, + "allowlist_rules": { + "default": "none", + "param_type": "keyword_only" + }, + "denylist_rules": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "threshold_rules": { + "attr_type": "threshold_rules" + }, + "time_window_rules": { + "attr_type": "time_window_rules" + }, + "allowlist_rules": { + "attr_type": "allowlist_rules" + }, + "denylist_rules": { + "attr_type": "denylist_rules" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DeviceSecurityGroupList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DirectMethodInvokesNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DiscoveredSecuritySolution": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_family": { + "default": null, + "param_type": "keyword_only" + }, + "offer": { + "default": null, + "param_type": "keyword_only" + }, + "publisher": { + "default": null, + "param_type": "keyword_only" + }, + "sku": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "location": { + "attr_type": null + }, + "security_family": { + "attr_type": "security_family" + }, + "offer": { + "attr_type": "offer" + }, + "publisher": { + "attr_type": "publisher" + }, + "sku": { + "attr_type": "sku" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DiscoveredSecuritySolutionList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "DockerHubEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "authentication": { + "default": "none", + "param_type": "keyword_only" + }, + "scan_interval": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "environment_type": { + "attr_type": null + }, + "authentication": { + "attr_type": "authentication" + }, + "scan_interval": { + "attr_type": "scan_interval" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ETag": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "etag": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "etag": { + "attr_type": "etag" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "EdgeIdentifiers": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "source": { + "default": null, + "param_type": "keyword_only" + }, + "target": { + "default": null, + "param_type": "keyword_only" + }, + "type": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "source": { + "attr_type": "source" + }, + "target": { + "attr_type": "target" + }, + "type": { + "attr_type": "type" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Effect": { + "type": "Enum", + "methods": {}, + "properties": { + "ATTEST": "ATTEST", + "AUDIT": "AUDIT", + "EXEMPT": "EXEMPT", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Enforce": { + "type": "Enum", + "methods": {}, + "properties": { + "FALSE": "FALSE", + "TRUE": "TRUE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "EnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "environment_type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "EnvironmentDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "native_resource_id": { + "default": "none", + "param_type": "keyword_only" + }, + "environment_hierarchy_id": { + "default": "none", + "param_type": "keyword_only" + }, + "organizational_hierarchy_id": { + "default": "none", + "param_type": "keyword_only" + }, + "subscription_id": { + "default": "none", + "param_type": "keyword_only" + }, + "tenant_id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "native_resource_id": { + "attr_type": "native_resource_id" + }, + "environment_hierarchy_id": { + "attr_type": "environment_hierarchy_id" + }, + "organizational_hierarchy_id": { + "attr_type": "organizational_hierarchy_id" + }, + "subscription_id": { + "attr_type": "subscription_id" + }, + "tenant_id": { + "attr_type": "tenant_id" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "EnvironmentType": { + "type": "Enum", + "methods": {}, + "properties": { + "AWS_ACCOUNT": "AWS_ACCOUNT", + "AZURE_DEV_OPS_SCOPE": "AZURE_DEV_OPS_SCOPE", + "DOCKER_HUB_ORGANIZATION": "DOCKER_HUB_ORGANIZATION", + "GCP_PROJECT": "GCP_PROJECT", + "GITHUB_SCOPE": "GITHUB_SCOPE", + "GITLAB_SCOPE": "GITLAB_SCOPE", + "J_FROG_ARTIFACTORY": "J_FROG_ARTIFACTORY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ErrorAdditionalInfo": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": { + "attr_type": null + }, + "info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ErrorDetail": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ErrorDetailAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ErrorDetailAutoGenerated2": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "message": { + "attr_type": null + }, + "target": { + "attr_type": null + }, + "details": { + "attr_type": null + }, + "additional_info": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ErrorResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "error": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "error": { + "attr_type": "error" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ErrorResponseAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "error": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "error": { + "attr_type": "error" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ErrorResponseAutoGenerated2": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "error": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "error": { + "attr_type": "error" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "EventSource": { + "type": "Enum", + "methods": {}, + "properties": { + "ALERTS": "ALERTS", + "ASSESSMENTS": "ASSESSMENTS", + "ASSESSMENTS_SNAPSHOT": "ASSESSMENTS_SNAPSHOT", + "ATTACK_PATHS": "ATTACK_PATHS", + "ATTACK_PATHS_SNAPSHOT": "ATTACK_PATHS_SNAPSHOT", + "REGULATORY_COMPLIANCE_ASSESSMENT": "REGULATORY_COMPLIANCE_ASSESSMENT", + "REGULATORY_COMPLIANCE_ASSESSMENT_SNAPSHOT": "REGULATORY_COMPLIANCE_ASSESSMENT_SNAPSHOT", + "SECURE_SCORES": "SECURE_SCORES", + "SECURE_SCORES_SNAPSHOT": "SECURE_SCORES_SNAPSHOT", + "SECURE_SCORE_CONTROLS": "SECURE_SCORE_CONTROLS", + "SECURE_SCORE_CONTROLS_SNAPSHOT": "SECURE_SCORE_CONTROLS_SNAPSHOT", + "SUB_ASSESSMENTS": "SUB_ASSESSMENTS", + "SUB_ASSESSMENTS_SNAPSHOT": "SUB_ASSESSMENTS_SNAPSHOT", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ExecuteGovernanceRuleParams": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "override": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "override": { + "attr_type": "override" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ExemptionCategory": { + "type": "Enum", + "methods": {}, + "properties": { + "MITIGATED": "MITIGATED", + "WAIVER": "WAIVER", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ExpandControlsEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "DEFINITION": "DEFINITION", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ExpandEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "LINKS": "LINKS", + "METADATA": "METADATA", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ExportData": { + "type": "Enum", + "methods": {}, + "properties": { + "RAW_EVENTS": "RAW_EVENTS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Extension": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "name": { + "default": null, + "param_type": "keyword_only" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "additional_extension_properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": { + "attr_type": "name" + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_extension_properties": { + "attr_type": "additional_extension_properties" + }, + "operation_status": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ExternalSecuritySolution": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "location": { + "attr_type": null + }, + "kind": { + "attr_type": "kind" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ExternalSecuritySolutionKind": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "kind": { + "attr_type": "kind" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ExternalSecuritySolutionKindEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "AAD": "AAD", + "ATA": "ATA", + "CEF": "CEF", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ExternalSecuritySolutionList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ExternalSecuritySolutionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "additional_properties": { + "default": "none", + "param_type": "keyword_only" + }, + "device_vendor": { + "default": "none", + "param_type": "keyword_only" + }, + "device_type": { + "default": "none", + "param_type": "keyword_only" + }, + "workspace": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "additional_properties": { + "attr_type": null + }, + "device_vendor": { + "attr_type": "device_vendor" + }, + "device_type": { + "attr_type": "device_type" + }, + "workspace": { + "attr_type": "workspace" + } + } + }, + "FailedLocalLoginsNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "FileUploadsNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "FilesScanSummary": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "total_files_scanned": { + "default": "none", + "param_type": "keyword_only" + }, + "malicious_files_count": { + "default": "none", + "param_type": "keyword_only" + }, + "skipped_files_count": { + "default": "none", + "param_type": "keyword_only" + }, + "failed_files_count": { + "default": "none", + "param_type": "keyword_only" + }, + "scanned_files_in_gb": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "total_files_scanned": { + "attr_type": "total_files_scanned" + }, + "malicious_files_count": { + "attr_type": "malicious_files_count" + }, + "skipped_files_count": { + "attr_type": "skipped_files_count" + }, + "failed_files_count": { + "attr_type": "failed_files_count" + }, + "scanned_files_in_gb": { + "attr_type": "scanned_files_in_gb" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GcpOrganizationalData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "organization_membership_type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GcpOrganizationalDataMember": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "parent_hierarchy_id": { + "default": "none", + "param_type": "keyword_only" + }, + "management_project_number": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "organization_membership_type": { + "attr_type": null + }, + "parent_hierarchy_id": { + "attr_type": "parent_hierarchy_id" + }, + "management_project_number": { + "attr_type": "management_project_number" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GcpOrganizationalDataOrganization": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "excluded_project_numbers": { + "default": "none", + "param_type": "keyword_only" + }, + "service_account_email_address": { + "default": "none", + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "organization_membership_type": { + "attr_type": null + }, + "excluded_project_numbers": { + "attr_type": "excluded_project_numbers" + }, + "service_account_email_address": { + "attr_type": "service_account_email_address" + }, + "workload_identity_provider_id": { + "attr_type": "workload_identity_provider_id" + }, + "organization_name": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GcpProjectDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_number": { + "default": "none", + "param_type": "keyword_only" + }, + "project_id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "project_number": { + "attr_type": "project_number" + }, + "project_id": { + "attr_type": "project_id" + }, + "workload_identity_pool_id": { + "attr_type": null + }, + "project_name": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GcpProjectEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "organizational_data": { + "default": "none", + "param_type": "keyword_only" + }, + "project_details": { + "default": "none", + "param_type": "keyword_only" + }, + "scan_interval": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "environment_type": { + "attr_type": null + }, + "organizational_data": { + "attr_type": "organizational_data" + }, + "project_details": { + "attr_type": "project_details" + }, + "scan_interval": { + "attr_type": "scan_interval" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GetSensitivitySettingsListResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GetSensitivitySettingsResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "properties": { + "attr_type": "properties" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GetSensitivitySettingsResponseProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitive_info_types_ids": { + "default": "none", + "param_type": "keyword_only" + }, + "sensitivity_threshold_label_order": { + "default": "none", + "param_type": "keyword_only" + }, + "sensitivity_threshold_label_id": { + "default": "none", + "param_type": "keyword_only" + }, + "mip_information": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "sensitive_info_types_ids": { + "attr_type": "sensitive_info_types_ids" + }, + "sensitivity_threshold_label_order": { + "attr_type": "sensitivity_threshold_label_order" + }, + "sensitivity_threshold_label_id": { + "attr_type": "sensitivity_threshold_label_id" + }, + "mip_information": { + "attr_type": "mip_information" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GetSensitivitySettingsResponsePropertiesMipInformation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "mip_integration_status": { + "default": "none", + "param_type": "keyword_only" + }, + "labels": { + "default": "none", + "param_type": "keyword_only" + }, + "custom_info_types": { + "default": "none", + "param_type": "keyword_only" + }, + "built_in_info_types": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "mip_integration_status": { + "attr_type": "mip_integration_status" + }, + "labels": { + "attr_type": "labels" + }, + "custom_info_types": { + "attr_type": "custom_info_types" + }, + "built_in_info_types": { + "attr_type": "built_in_info_types" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitHubOwner": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "system_data": { + "attr_type": null + }, + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitHubOwnerConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "auto_discovery": { + "default": "none", + "param_type": "keyword_only" + }, + "repository_configs": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "auto_discovery": { + "attr_type": "auto_discovery" + }, + "repository_configs": { + "attr_type": "repository_configs" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitHubOwnerListResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "next_link": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": "next_link" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitHubOwnerProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "onboarding_state": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": { + "attr_type": null + }, + "provisioning_status_update_time_utc": { + "attr_type": null + }, + "provisioning_state": { + "attr_type": null + }, + "owner_url": { + "attr_type": null + }, + "git_hub_internal_id": { + "attr_type": null + }, + "onboarding_state": { + "attr_type": "onboarding_state" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitHubRepository": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "system_data": { + "attr_type": null + }, + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitHubRepositoryListResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "next_link": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": "next_link" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitHubRepositoryProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "onboarding_state": { + "default": "none", + "param_type": "keyword_only" + }, + "parent_owner_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": { + "attr_type": null + }, + "provisioning_status_update_time_utc": { + "attr_type": null + }, + "provisioning_state": { + "attr_type": null + }, + "repo_id": { + "attr_type": null + }, + "repo_name": { + "attr_type": null + }, + "repo_full_name": { + "attr_type": null + }, + "onboarding_state": { + "attr_type": "onboarding_state" + }, + "repo_url": { + "attr_type": null + }, + "parent_owner_name": { + "attr_type": "parent_owner_name" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitLabGroup": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "system_data": { + "attr_type": null + }, + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitLabGroupConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "auto_discovery": { + "default": "none", + "param_type": "keyword_only" + }, + "project_configs": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "auto_discovery": { + "attr_type": "auto_discovery" + }, + "project_configs": { + "attr_type": "project_configs" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitLabGroupListResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "next_link": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": "next_link" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitLabGroupProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "onboarding_state": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": { + "attr_type": null + }, + "provisioning_status_update_time_utc": { + "attr_type": null + }, + "provisioning_state": { + "attr_type": null + }, + "fully_qualified_name": { + "attr_type": null + }, + "fully_qualified_friendly_name": { + "attr_type": null + }, + "url": { + "attr_type": null + }, + "onboarding_state": { + "attr_type": "onboarding_state" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitLabProject": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "system_data": { + "attr_type": null + }, + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitLabProjectListResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "next_link": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": "next_link" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitLabProjectProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "onboarding_state": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": { + "attr_type": null + }, + "provisioning_status_update_time_utc": { + "attr_type": null + }, + "provisioning_state": { + "attr_type": null + }, + "fully_qualified_name": { + "attr_type": null + }, + "fully_qualified_friendly_name": { + "attr_type": null + }, + "fully_qualified_parent_group_name": { + "attr_type": null + }, + "url": { + "attr_type": null + }, + "onboarding_state": { + "attr_type": "onboarding_state" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GithubScopeEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "environment_type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GitlabScopeEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "environment_type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GovernanceAssignment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner": { + "default": "none", + "param_type": "keyword_only" + }, + "remediation_due_date": { + "default": "none", + "param_type": "keyword_only" + }, + "remediation_eta": { + "default": "none", + "param_type": "keyword_only" + }, + "is_grace_period": { + "default": "none", + "param_type": "keyword_only" + }, + "governance_email_notification": { + "default": "none", + "param_type": "keyword_only" + }, + "additional_data": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "owner": { + "attr_type": "owner" + }, + "remediation_due_date": { + "attr_type": "remediation_due_date" + }, + "remediation_eta": { + "attr_type": "remediation_eta" + }, + "is_grace_period": { + "attr_type": "is_grace_period" + }, + "governance_email_notification": { + "attr_type": "governance_email_notification" + }, + "additional_data": { + "attr_type": "additional_data" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GovernanceAssignmentAdditionalData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "ticket_number": { + "default": "none", + "param_type": "keyword_only" + }, + "ticket_link": { + "default": "none", + "param_type": "keyword_only" + }, + "ticket_status": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "ticket_number": { + "attr_type": "ticket_number" + }, + "ticket_link": { + "attr_type": "ticket_link" + }, + "ticket_status": { + "attr_type": "ticket_status" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GovernanceAssignmentsList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GovernanceEmailNotification": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "disable_manager_email_notification": { + "default": "none", + "param_type": "keyword_only" + }, + "disable_owner_email_notification": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "disable_manager_email_notification": { + "attr_type": "disable_manager_email_notification" + }, + "disable_owner_email_notification": { + "attr_type": "disable_owner_email_notification" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GovernanceRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "remediation_timeframe": { + "default": "none", + "param_type": "keyword_only" + }, + "is_grace_period": { + "default": "none", + "param_type": "keyword_only" + }, + "rule_priority": { + "default": "none", + "param_type": "keyword_only" + }, + "is_disabled": { + "default": "none", + "param_type": "keyword_only" + }, + "rule_type": { + "default": "none", + "param_type": "keyword_only" + }, + "source_resource_type": { + "default": "none", + "param_type": "keyword_only" + }, + "excluded_scopes": { + "default": "none", + "param_type": "keyword_only" + }, + "condition_sets": { + "default": "none", + "param_type": "keyword_only" + }, + "include_member_scopes": { + "default": "none", + "param_type": "keyword_only" + }, + "owner_source": { + "default": "none", + "param_type": "keyword_only" + }, + "governance_email_notification": { + "default": "none", + "param_type": "keyword_only" + }, + "metadata": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tenant_id": { + "attr_type": null + }, + "display_name": { + "attr_type": "display_name" + }, + "description": { + "attr_type": "description" + }, + "remediation_timeframe": { + "attr_type": "remediation_timeframe" + }, + "is_grace_period": { + "attr_type": "is_grace_period" + }, + "rule_priority": { + "attr_type": "rule_priority" + }, + "is_disabled": { + "attr_type": "is_disabled" + }, + "rule_type": { + "attr_type": "rule_type" + }, + "source_resource_type": { + "attr_type": "source_resource_type" + }, + "excluded_scopes": { + "attr_type": "excluded_scopes" + }, + "condition_sets": { + "attr_type": "condition_sets" + }, + "include_member_scopes": { + "attr_type": "include_member_scopes" + }, + "owner_source": { + "attr_type": "owner_source" + }, + "governance_email_notification": { + "attr_type": "governance_email_notification" + }, + "metadata": { + "attr_type": "metadata" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GovernanceRuleConditionOperator": { + "type": "Enum", + "methods": {}, + "properties": { + "EQUALS": "EQUALS", + "IN": "IN", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "GovernanceRuleEmailNotification": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "disable_manager_email_notification": { + "default": "none", + "param_type": "keyword_only" + }, + "disable_owner_email_notification": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "disable_manager_email_notification": { + "attr_type": "disable_manager_email_notification" + }, + "disable_owner_email_notification": { + "attr_type": "disable_owner_email_notification" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GovernanceRuleList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GovernanceRuleMetadata": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "created_by": { + "attr_type": null + }, + "created_on": { + "attr_type": null + }, + "updated_by": { + "attr_type": null + }, + "updated_on": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GovernanceRuleOwnerSource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "default": "none", + "param_type": "keyword_only" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": { + "attr_type": "type" + }, + "value": { + "attr_type": "value" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "GovernanceRuleOwnerSourceType": { + "type": "Enum", + "methods": {}, + "properties": { + "BY_TAG": "BY_TAG", + "MANUALLY": "MANUALLY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "GovernanceRuleSourceResourceType": { + "type": "Enum", + "methods": {}, + "properties": { + "ASSESSMENTS": "ASSESSMENTS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "GovernanceRuleType": { + "type": "Enum", + "methods": {}, + "properties": { + "INTEGRATED": "INTEGRATED", + "SERVICE_NOW": "SERVICE_NOW", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "HealthDataClassification": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "component": { + "default": "none", + "param_type": "keyword_only" + }, + "scenario": { + "default": "none", + "param_type": "keyword_only" + }, + "scope": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "component": { + "attr_type": "component" + }, + "scenario": { + "attr_type": "scenario" + }, + "scope": { + "attr_type": "scope" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "HealthReport": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_details": { + "default": "none", + "param_type": "keyword_only" + }, + "environment_details": { + "default": "none", + "param_type": "keyword_only" + }, + "health_data_classification": { + "default": "none", + "param_type": "keyword_only" + }, + "status": { + "default": "none", + "param_type": "keyword_only" + }, + "affected_defenders_plans": { + "default": "none", + "param_type": "keyword_only" + }, + "affected_defenders_sub_plans": { + "default": "none", + "param_type": "keyword_only" + }, + "issues": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "resource_details": { + "attr_type": "resource_details" + }, + "environment_details": { + "attr_type": "environment_details" + }, + "health_data_classification": { + "attr_type": "health_data_classification" + }, + "status": { + "attr_type": "status" + }, + "affected_defenders_plans": { + "attr_type": "affected_defenders_plans" + }, + "affected_defenders_sub_plans": { + "attr_type": "affected_defenders_sub_plans" + }, + "report_additional_data": { + "attr_type": null + }, + "issues": { + "attr_type": "issues" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "HealthReportsList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "HttpC2DMessagesNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "HttpC2DRejectedMessagesNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "HttpD2CMessagesNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Identity": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "principal_id": { + "attr_type": null + }, + "tenant_id": { + "attr_type": null + }, + "type": { + "attr_type": "type" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ImplementationEffort": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "LOW": "LOW", + "MODERATE": "MODERATE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "InfoType": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "name": { + "default": "none", + "param_type": "keyword_only" + }, + "id": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": { + "attr_type": "name" + }, + "id": { + "attr_type": "id" + }, + "description": { + "attr_type": "description" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "InformationProtectionKeyword": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pattern": { + "default": "none", + "param_type": "keyword_only" + }, + "custom": { + "default": "none", + "param_type": "keyword_only" + }, + "can_be_numeric": { + "default": "none", + "param_type": "keyword_only" + }, + "excluded": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "pattern": { + "attr_type": "pattern" + }, + "custom": { + "attr_type": "custom" + }, + "can_be_numeric": { + "attr_type": "can_be_numeric" + }, + "excluded": { + "attr_type": "excluded" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "InformationProtectionPolicy": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "labels": { + "default": "none", + "param_type": "keyword_only" + }, + "information_types": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "last_modified_utc": { + "attr_type": null + }, + "version": { + "attr_type": null + }, + "labels": { + "attr_type": "labels" + }, + "information_types": { + "attr_type": "information_types" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "InformationProtectionPolicyList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "InformationProtectionPolicyName": { + "type": "Enum", + "methods": {}, + "properties": { + "CUSTOM": "CUSTOM", + "EFFECTIVE": "EFFECTIVE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "InformationType": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "order": { + "default": "none", + "param_type": "keyword_only" + }, + "recommended_label_id": { + "default": "none", + "param_type": "keyword_only" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "custom": { + "default": "none", + "param_type": "keyword_only" + }, + "keywords": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": { + "attr_type": "display_name" + }, + "description": { + "attr_type": "description" + }, + "order": { + "attr_type": "order" + }, + "recommended_label_id": { + "attr_type": "recommended_label_id" + }, + "enabled": { + "attr_type": "enabled" + }, + "custom": { + "attr_type": "custom" + }, + "keywords": { + "attr_type": "keywords" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "InheritFromParentState": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Inherited": { + "type": "Enum", + "methods": {}, + "properties": { + "FALSE": "FALSE", + "TRUE": "TRUE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Intent": { + "type": "Enum", + "methods": {}, + "properties": { + "COLLECTION": "COLLECTION", + "COMMAND_AND_CONTROL": "COMMAND_AND_CONTROL", + "CREDENTIAL_ACCESS": "CREDENTIAL_ACCESS", + "DEFENSE_EVASION": "DEFENSE_EVASION", + "DISCOVERY": "DISCOVERY", + "EXECUTION": "EXECUTION", + "EXFILTRATION": "EXFILTRATION", + "EXPLOITATION": "EXPLOITATION", + "IMPACT": "IMPACT", + "INITIAL_ACCESS": "INITIAL_ACCESS", + "LATERAL_MOVEMENT": "LATERAL_MOVEMENT", + "PERSISTENCE": "PERSISTENCE", + "PRE_ATTACK": "PRE_ATTACK", + "PRIVILEGE_ESCALATION": "PRIVILEGE_ESCALATION", + "PROBING": "PROBING", + "UNKNOWN": "UNKNOWN", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "InventoryKind": { + "type": "Enum", + "methods": {}, + "properties": { + "AZURE_DEV_OPS_ORGANIZATION": "AZURE_DEV_OPS_ORGANIZATION", + "AZURE_DEV_OPS_PROJECT": "AZURE_DEV_OPS_PROJECT", + "AZURE_DEV_OPS_REPOSITORY": "AZURE_DEV_OPS_REPOSITORY", + "GIT_HUB_OWNER": "GIT_HUB_OWNER", + "GIT_HUB_REPOSITORY": "GIT_HUB_REPOSITORY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "InventoryList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "inventory_kind": { + "default": "none", + "param_type": "keyword_only" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "inventory_kind": { + "attr_type": "inventory_kind" + }, + "value": { + "attr_type": "value" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "InventoryListKind": { + "type": "Enum", + "methods": {}, + "properties": { + "EXCLUSION": "EXCLUSION", + "INCLUSION": "INCLUSION", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "IoTSecurityAggregatedAlert": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tags": { + "attr_type": "tags" + }, + "alert_type": { + "attr_type": null + }, + "alert_display_name": { + "attr_type": null + }, + "aggregated_date_utc": { + "attr_type": null + }, + "vendor_name": { + "attr_type": null + }, + "reported_severity": { + "attr_type": null + }, + "remediation_steps": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "count": { + "attr_type": null + }, + "effected_resource_type": { + "attr_type": null + }, + "system_source": { + "attr_type": null + }, + "action_taken": { + "attr_type": null + }, + "log_analytics_query": { + "attr_type": null + }, + "top_devices_list": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSecurityAggregatedAlertList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSecurityAggregatedAlertPropertiesTopDevicesListItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "device_id": { + "attr_type": null + }, + "alerts_count": { + "attr_type": null + }, + "last_occurrence": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSecurityAggregatedRecommendation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "recommendation_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tags": { + "attr_type": "tags" + }, + "recommendation_name": { + "attr_type": "recommendation_name" + }, + "recommendation_display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "recommendation_type_id": { + "attr_type": null + }, + "detected_by": { + "attr_type": null + }, + "remediation_steps": { + "attr_type": null + }, + "reported_severity": { + "attr_type": null + }, + "healthy_devices": { + "attr_type": null + }, + "unhealthy_device_count": { + "attr_type": null + }, + "log_analytics_query": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSecurityAggregatedRecommendationList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSecurityAlertedDevice": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "device_id": { + "attr_type": null + }, + "alerts_count": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSecurityDeviceAlert": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "alert_display_name": { + "attr_type": null + }, + "reported_severity": { + "attr_type": null + }, + "alerts_count": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSecurityDeviceRecommendation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "recommendation_display_name": { + "attr_type": null + }, + "reported_severity": { + "attr_type": null + }, + "devices_count": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSecuritySolutionAnalyticsModel": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "top_alerted_devices": { + "default": "none", + "param_type": "keyword_only" + }, + "most_prevalent_device_alerts": { + "default": "none", + "param_type": "keyword_only" + }, + "most_prevalent_device_recommendations": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "metrics": { + "attr_type": null + }, + "unhealthy_device_count": { + "attr_type": null + }, + "devices_metrics": { + "attr_type": null + }, + "top_alerted_devices": { + "attr_type": "top_alerted_devices" + }, + "most_prevalent_device_alerts": { + "attr_type": "most_prevalent_device_alerts" + }, + "most_prevalent_device_recommendations": { + "attr_type": "most_prevalent_device_recommendations" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSecuritySolutionAnalyticsModelList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "date": { + "default": "none", + "param_type": "keyword_only" + }, + "devices_metrics": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "date": { + "attr_type": "date" + }, + "devices_metrics": { + "attr_type": "devices_metrics" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSecuritySolutionModel": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "location": { + "default": "none", + "param_type": "keyword_only" + }, + "workspace": { + "default": "none", + "param_type": "keyword_only" + }, + "display_name": { + "default": "none", + "param_type": "keyword_only" + }, + "status": { + "default": "str", + "param_type": "keyword_only" + }, + "export": { + "default": "none", + "param_type": "keyword_only" + }, + "disabled_data_sources": { + "default": "none", + "param_type": "keyword_only" + }, + "iot_hubs": { + "default": "none", + "param_type": "keyword_only" + }, + "user_defined_resources": { + "default": "none", + "param_type": "keyword_only" + }, + "recommendations_configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "unmasked_ip_logging_status": { + "default": "str", + "param_type": "keyword_only" + }, + "additional_workspaces": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tags": { + "attr_type": "tags" + }, + "location": { + "attr_type": "location" + }, + "system_data": { + "attr_type": null + }, + "workspace": { + "attr_type": "workspace" + }, + "display_name": { + "attr_type": "display_name" + }, + "status": { + "attr_type": "status" + }, + "export": { + "attr_type": "export" + }, + "disabled_data_sources": { + "attr_type": "disabled_data_sources" + }, + "iot_hubs": { + "attr_type": "iot_hubs" + }, + "user_defined_resources": { + "attr_type": "user_defined_resources" + }, + "auto_discovered_resources": { + "attr_type": null + }, + "recommendations_configuration": { + "attr_type": "recommendations_configuration" + }, + "unmasked_ip_logging_status": { + "attr_type": "unmasked_ip_logging_status" + }, + "additional_workspaces": { + "attr_type": "additional_workspaces" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSecuritySolutionsList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IoTSeverityMetrics": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "high": { + "default": "none", + "param_type": "keyword_only" + }, + "medium": { + "default": "none", + "param_type": "keyword_only" + }, + "low": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "high": { + "attr_type": "high" + }, + "medium": { + "attr_type": "medium" + }, + "low": { + "attr_type": "low" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IsEnabled": { + "type": "Enum", + "methods": {}, + "properties": { + "FALSE": "FALSE", + "TRUE": "TRUE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Issue": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "issue_key": { + "default": null, + "param_type": "keyword_only" + }, + "issue_name": { + "default": "none", + "param_type": "keyword_only" + }, + "security_values": { + "default": "none", + "param_type": "keyword_only" + }, + "issue_description": { + "default": "none", + "param_type": "keyword_only" + }, + "remediation_steps": { + "default": "none", + "param_type": "keyword_only" + }, + "remediation_script": { + "default": "none", + "param_type": "keyword_only" + }, + "issue_additional_data": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "issue_key": { + "attr_type": "issue_key" + }, + "issue_name": { + "attr_type": "issue_name" + }, + "security_values": { + "attr_type": "security_values" + }, + "issue_description": { + "attr_type": "issue_description" + }, + "remediation_steps": { + "attr_type": "remediation_steps" + }, + "remediation_script": { + "attr_type": "remediation_script" + }, + "issue_additional_data": { + "attr_type": "issue_additional_data" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "IssueCreationRequest": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_assessment_resource_id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "security_assessment_resource_id": { + "attr_type": "security_assessment_resource_id" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "JFrogEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_interval": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "environment_type": { + "attr_type": null + }, + "scan_interval": { + "attr_type": "scan_interval" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "JitNetworkAccessPoliciesList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "JitNetworkAccessPolicy": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "virtual_machines": { + "default": null, + "param_type": "keyword_only" + }, + "kind": { + "default": "none", + "param_type": "keyword_only" + }, + "requests": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "location": { + "attr_type": null + }, + "kind": { + "attr_type": "kind" + }, + "virtual_machines": { + "attr_type": "virtual_machines" + }, + "requests": { + "attr_type": "requests" + }, + "provisioning_state": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "JitNetworkAccessPolicyInitiatePort": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "number": { + "default": null, + "param_type": "keyword_only" + }, + "end_time_utc": { + "default": null, + "param_type": "keyword_only" + }, + "allowed_source_address_prefix": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "number": { + "attr_type": "number" + }, + "allowed_source_address_prefix": { + "attr_type": "allowed_source_address_prefix" + }, + "end_time_utc": { + "attr_type": "end_time_utc" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "JitNetworkAccessPolicyInitiateRequest": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "virtual_machines": { + "default": null, + "param_type": "keyword_only" + }, + "justification": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "virtual_machines": { + "attr_type": "virtual_machines" + }, + "justification": { + "attr_type": "justification" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "JitNetworkAccessPolicyInitiateVirtualMachine": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "default": null, + "param_type": "keyword_only" + }, + "ports": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "ports": { + "attr_type": "ports" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "JitNetworkAccessPolicyVirtualMachine": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "default": null, + "param_type": "keyword_only" + }, + "ports": { + "default": null, + "param_type": "keyword_only" + }, + "public_ip_address": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "ports": { + "attr_type": "ports" + }, + "public_ip_address": { + "attr_type": "public_ip_address" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "JitNetworkAccessPortRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "number": { + "default": null, + "param_type": "keyword_only" + }, + "protocol": { + "default": null, + "param_type": "keyword_only" + }, + "max_request_access_duration": { + "default": null, + "param_type": "keyword_only" + }, + "allowed_source_address_prefix": { + "default": "none", + "param_type": "keyword_only" + }, + "allowed_source_address_prefixes": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "number": { + "attr_type": "number" + }, + "protocol": { + "attr_type": "protocol" + }, + "allowed_source_address_prefix": { + "attr_type": "allowed_source_address_prefix" + }, + "allowed_source_address_prefixes": { + "attr_type": "allowed_source_address_prefixes" + }, + "max_request_access_duration": { + "attr_type": "max_request_access_duration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "JitNetworkAccessRequest": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "virtual_machines": { + "default": null, + "param_type": "keyword_only" + }, + "start_time_utc": { + "default": null, + "param_type": "keyword_only" + }, + "requestor": { + "default": null, + "param_type": "keyword_only" + }, + "justification": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "virtual_machines": { + "attr_type": "virtual_machines" + }, + "start_time_utc": { + "attr_type": "start_time_utc" + }, + "requestor": { + "attr_type": "requestor" + }, + "justification": { + "attr_type": "justification" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "JitNetworkAccessRequestPort": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "number": { + "default": null, + "param_type": "keyword_only" + }, + "end_time_utc": { + "default": null, + "param_type": "keyword_only" + }, + "status": { + "default": null, + "param_type": "keyword_only" + }, + "status_reason": { + "default": null, + "param_type": "keyword_only" + }, + "allowed_source_address_prefix": { + "default": "none", + "param_type": "keyword_only" + }, + "allowed_source_address_prefixes": { + "default": "none", + "param_type": "keyword_only" + }, + "mapped_port": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "number": { + "attr_type": "number" + }, + "allowed_source_address_prefix": { + "attr_type": "allowed_source_address_prefix" + }, + "allowed_source_address_prefixes": { + "attr_type": "allowed_source_address_prefixes" + }, + "end_time_utc": { + "attr_type": "end_time_utc" + }, + "status": { + "attr_type": "status" + }, + "status_reason": { + "attr_type": "status_reason" + }, + "mapped_port": { + "attr_type": "mapped_port" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "JitNetworkAccessRequestVirtualMachine": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "default": null, + "param_type": "keyword_only" + }, + "ports": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "ports": { + "attr_type": "ports" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Kind": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "kind": { + "attr_type": "kind" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "KindEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "BUNDLES": "BUNDLES", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Label": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "name": { + "default": "none", + "param_type": "keyword_only" + }, + "id": { + "default": "none", + "param_type": "keyword_only" + }, + "order": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": { + "attr_type": "name" + }, + "id": { + "attr_type": "id" + }, + "order": { + "attr_type": "order" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ListCustomAlertRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "value_type": { + "attr_type": null + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "LocalUserNotAllowed": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "allowlist_values": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "allowlist_values": { + "attr_type": "allowlist_values" + }, + "value_type": { + "attr_type": null + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Location": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "location": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "LogAnalyticsIdentifier": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": { + "attr_type": null + }, + "workspace_id": { + "attr_type": null + }, + "workspace_subscription_id": { + "attr_type": null + }, + "workspace_resource_group": { + "attr_type": null + }, + "agent_id": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "MalwareScan": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": { + "attr_type": "properties" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "MalwareScanProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": "none", + "param_type": "keyword_only" + }, + "scan_status": { + "default": "none", + "param_type": "keyword_only" + }, + "scan_status_message": { + "default": "none", + "param_type": "keyword_only" + }, + "scan_start_time": { + "default": "none", + "param_type": "keyword_only" + }, + "scan_end_time": { + "default": "none", + "param_type": "keyword_only" + }, + "scan_summary": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "scan_id": { + "attr_type": "scan_id" + }, + "scan_status": { + "attr_type": "scan_status" + }, + "scan_status_message": { + "attr_type": "scan_status_message" + }, + "scan_start_time": { + "attr_type": "scan_start_time" + }, + "scan_end_time": { + "attr_type": "scan_end_time" + }, + "scan_summary": { + "attr_type": "scan_summary" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "MalwareScanningProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "on_upload": { + "default": "none", + "param_type": "keyword_only" + }, + "scan_results_event_grid_topic_resource_id": { + "default": "none", + "param_type": "keyword_only" + }, + "blob_scan_results_options": { + "default": "str", + "param_type": "keyword_only" + }, + "automated_response": { + "default": "str", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "on_upload": { + "attr_type": "on_upload" + }, + "scan_results_event_grid_topic_resource_id": { + "attr_type": "scan_results_event_grid_topic_resource_id" + }, + "blob_scan_results_options": { + "attr_type": "blob_scan_results_options" + }, + "automated_response": { + "attr_type": "automated_response" + }, + "operation_status": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "MdeOnboardingData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "onboarding_package_windows": { + "default": "none", + "param_type": "keyword_only" + }, + "onboarding_package_linux": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "onboarding_package_windows": { + "attr_type": "onboarding_package_windows" + }, + "onboarding_package_linux": { + "attr_type": "onboarding_package_linux" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "MdeOnboardingDataList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "MipIntegrationStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "NO_AUTO_LABELING_RULES": "NO_AUTO_LABELING_RULES", + "NO_CONSENT": "NO_CONSENT", + "NO_MIP_LABELS": "NO_MIP_LABELS", + "OK": "OK", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "MqttC2DMessagesNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "MqttC2DRejectedMessagesNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "MqttD2CMessagesNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "NodeIdentifier": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "default": null, + "param_type": "keyword_only" + }, + "type": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "type": { + "attr_type": "type" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "OfferingType": { + "type": "Enum", + "methods": {}, + "properties": { + "CSPM_MONITOR_AWS": "CSPM_MONITOR_AWS", + "CSPM_MONITOR_AZURE_DEV_OPS": "CSPM_MONITOR_AZURE_DEV_OPS", + "CSPM_MONITOR_DOCKER_HUB": "CSPM_MONITOR_DOCKER_HUB", + "CSPM_MONITOR_GCP": "CSPM_MONITOR_GCP", + "CSPM_MONITOR_GITHUB": "CSPM_MONITOR_GITHUB", + "CSPM_MONITOR_GIT_LAB": "CSPM_MONITOR_GIT_LAB", + "CSPM_MONITOR_J_FROG": "CSPM_MONITOR_J_FROG", + "DEFENDER_CSPM_AWS": "DEFENDER_CSPM_AWS", + "DEFENDER_CSPM_DOCKER_HUB": "DEFENDER_CSPM_DOCKER_HUB", + "DEFENDER_CSPM_GCP": "DEFENDER_CSPM_GCP", + "DEFENDER_CSPM_J_FROG": "DEFENDER_CSPM_J_FROG", + "DEFENDER_FOR_CONTAINERS_AWS": "DEFENDER_FOR_CONTAINERS_AWS", + "DEFENDER_FOR_CONTAINERS_DOCKER_HUB": "DEFENDER_FOR_CONTAINERS_DOCKER_HUB", + "DEFENDER_FOR_CONTAINERS_GCP": "DEFENDER_FOR_CONTAINERS_GCP", + "DEFENDER_FOR_CONTAINERS_J_FROG": "DEFENDER_FOR_CONTAINERS_J_FROG", + "DEFENDER_FOR_DATABASES_AWS": "DEFENDER_FOR_DATABASES_AWS", + "DEFENDER_FOR_DATABASES_GCP": "DEFENDER_FOR_DATABASES_GCP", + "DEFENDER_FOR_SERVERS_AWS": "DEFENDER_FOR_SERVERS_AWS", + "DEFENDER_FOR_SERVERS_GCP": "DEFENDER_FOR_SERVERS_GCP", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "OnPremiseResourceDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_id": { + "default": null, + "param_type": "keyword_only" + }, + "vmuuid": { + "default": null, + "param_type": "keyword_only" + }, + "source_computer_id": { + "default": null, + "param_type": "keyword_only" + }, + "machine_name": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "source": { + "attr_type": null + }, + "workspace_id": { + "attr_type": "workspace_id" + }, + "vmuuid": { + "attr_type": "vmuuid" + }, + "source_computer_id": { + "attr_type": "source_computer_id" + }, + "machine_name": { + "attr_type": "machine_name" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "OnPremiseSqlResourceDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_id": { + "default": null, + "param_type": "keyword_only" + }, + "vmuuid": { + "default": null, + "param_type": "keyword_only" + }, + "source_computer_id": { + "default": null, + "param_type": "keyword_only" + }, + "machine_name": { + "default": null, + "param_type": "keyword_only" + }, + "server_name": { + "default": null, + "param_type": "keyword_only" + }, + "database_name": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "source": { + "attr_type": null + }, + "server_name": { + "attr_type": "server_name" + }, + "database_name": { + "attr_type": "database_name" + }, + "workspace_id": { + "attr_type": "workspace_id" + }, + "vmuuid": { + "attr_type": "vmuuid" + }, + "source_computer_id": { + "attr_type": "source_computer_id" + }, + "machine_name": { + "attr_type": "machine_name" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "OnUploadFilters": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_blobs_with_prefix": { + "default": "none", + "param_type": "keyword_only" + }, + "exclude_blobs_with_suffix": { + "default": "none", + "param_type": "keyword_only" + }, + "exclude_blobs_larger_than": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "exclude_blobs_with_prefix": { + "attr_type": "exclude_blobs_with_prefix" + }, + "exclude_blobs_with_suffix": { + "attr_type": "exclude_blobs_with_suffix" + }, + "exclude_blobs_larger_than": { + "attr_type": "exclude_blobs_larger_than" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "OnUploadProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "cap_gb_per_month": { + "default": "none", + "param_type": "keyword_only" + }, + "filters": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "is_enabled": { + "attr_type": "is_enabled" + }, + "cap_gb_per_month": { + "attr_type": "cap_gb_per_month" + }, + "filters": { + "attr_type": "filters" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "OnboardingState": { + "type": "Enum", + "methods": {}, + "properties": { + "NOT_APPLICABLE": "NOT_APPLICABLE", + "NOT_ONBOARDED": "NOT_ONBOARDED", + "ONBOARDED": "ONBOARDED", + "ONBOARDED_BY_OTHER_CONNECTOR": "ONBOARDED_BY_OTHER_CONNECTOR", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Operation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "display": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": { + "attr_type": null + }, + "is_data_action": { + "attr_type": null + }, + "display": { + "attr_type": "display" + }, + "origin": { + "attr_type": null + }, + "action_type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "OperationDisplay": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provider": { + "attr_type": null + }, + "resource": { + "attr_type": null + }, + "operation": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "OperationListResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "OperationResult": { + "type": "Enum", + "methods": {}, + "properties": { + "CANCELED": "CANCELED", + "FAILED": "FAILED", + "SUCCEEDED": "SUCCEEDED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "OperationResultAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "status": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "OperationStatus": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "code": { + "default": "none", + "param_type": "keyword_only" + }, + "message": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": "code" + }, + "message": { + "attr_type": "message" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "OperationStatusAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "code": { + "default": "none", + "param_type": "keyword_only" + }, + "message": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": "code" + }, + "message": { + "attr_type": "message" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "OperationStatusResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "status": { + "default": null, + "param_type": "keyword_only" + }, + "id": { + "default": "none", + "param_type": "keyword_only" + }, + "name": { + "default": "none", + "param_type": "keyword_only" + }, + "percent_complete": { + "default": "none", + "param_type": "keyword_only" + }, + "start_time": { + "default": "none", + "param_type": "keyword_only" + }, + "end_time": { + "default": "none", + "param_type": "keyword_only" + }, + "operations": { + "default": "none", + "param_type": "keyword_only" + }, + "error": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "name": { + "attr_type": "name" + }, + "status": { + "attr_type": "status" + }, + "percent_complete": { + "attr_type": "percent_complete" + }, + "start_time": { + "attr_type": "start_time" + }, + "end_time": { + "attr_type": "end_time" + }, + "operations": { + "attr_type": "operations" + }, + "error": { + "attr_type": "error" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "OperationStatusResultAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "status": { + "default": null, + "param_type": "keyword_only" + }, + "id": { + "default": "none", + "param_type": "keyword_only" + }, + "name": { + "default": "none", + "param_type": "keyword_only" + }, + "percent_complete": { + "default": "none", + "param_type": "keyword_only" + }, + "start_time": { + "default": "none", + "param_type": "keyword_only" + }, + "end_time": { + "default": "none", + "param_type": "keyword_only" + }, + "operations": { + "default": "none", + "param_type": "keyword_only" + }, + "error": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "resource_id": { + "attr_type": null + }, + "name": { + "attr_type": "name" + }, + "status": { + "attr_type": "status" + }, + "percent_complete": { + "attr_type": "percent_complete" + }, + "start_time": { + "attr_type": "start_time" + }, + "end_time": { + "attr_type": "end_time" + }, + "operations": { + "attr_type": "operations" + }, + "error": { + "attr_type": "error" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Operator": { + "type": "Enum", + "methods": {}, + "properties": { + "CONTAINS": "CONTAINS", + "ENDS_WITH": "ENDS_WITH", + "EQUALS": "EQUALS", + "GREATER_THAN": "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO": "GREATER_THAN_OR_EQUAL_TO", + "LESSER_THAN": "LESSER_THAN", + "LESSER_THAN_OR_EQUAL_TO": "LESSER_THAN_OR_EQUAL_TO", + "NOT_EQUALS": "NOT_EQUALS", + "STARTS_WITH": "STARTS_WITH", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "OrganizationMembershipType": { + "type": "Enum", + "methods": {}, + "properties": { + "MEMBER": "MEMBER", + "ORGANIZATION": "ORGANIZATION", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Origin": { + "type": "Enum", + "methods": {}, + "properties": { + "SYSTEM": "SYSTEM", + "USER": "USER", + "USER_SYSTEM": "USER_SYSTEM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "PartialAssessmentProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_key": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "assessment_key": { + "attr_type": "assessment_key" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Path": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "default": null, + "param_type": "keyword_only" + }, + "nodes": { + "default": null, + "param_type": "keyword_only" + }, + "edges": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "nodes": { + "attr_type": "nodes" + }, + "edges": { + "attr_type": "edges" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Pricing": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_tier": { + "default": "none", + "param_type": "keyword_only" + }, + "sub_plan": { + "default": "none", + "param_type": "keyword_only" + }, + "enforce": { + "default": "none", + "param_type": "keyword_only" + }, + "extensions": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "pricing_tier": { + "attr_type": "pricing_tier" + }, + "sub_plan": { + "attr_type": "sub_plan" + }, + "free_trial_remaining_time": { + "attr_type": null + }, + "enablement_time": { + "attr_type": null + }, + "enforce": { + "attr_type": "enforce" + }, + "inherited": { + "attr_type": null + }, + "inherited_from": { + "attr_type": null + }, + "resources_coverage_status": { + "attr_type": null + }, + "extensions": { + "attr_type": "extensions" + }, + "deprecated": { + "attr_type": null + }, + "replaced_by": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PricingList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PricingTier": { + "type": "Enum", + "methods": {}, + "properties": { + "FREE": "FREE", + "STANDARD": "STANDARD", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "PrivateEndpoint": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PrivateEndpointConnection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint": { + "default": "none", + "param_type": "keyword_only" + }, + "private_link_service_connection_state": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "group_ids": { + "attr_type": null + }, + "private_endpoint": { + "attr_type": "private_endpoint" + }, + "private_link_service_connection_state": { + "attr_type": "private_link_service_connection_state" + }, + "provisioning_state": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "system_data": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PrivateEndpointConnectionListResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "Enum", + "methods": {}, + "properties": { + "CREATING": "CREATING", + "DELETING": "DELETING", + "FAILED": "FAILED", + "SUCCEEDED": "SUCCEEDED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "APPROVED": "APPROVED", + "PENDING": "PENDING", + "REJECTED": "REJECTED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "PrivateLinkParameters": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "private_link_name": { + "attr_type": "private_link_name" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PrivateLinkResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "default": null, + "param_type": "keyword_only" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "public_network_access": { + "default": "str", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_state": { + "attr_type": null + }, + "private_endpoint_connections": { + "attr_type": null + }, + "private_link_resources": { + "attr_type": null + }, + "public_network_access": { + "attr_type": "public_network_access" + }, + "tags": { + "attr_type": "tags" + }, + "location": { + "attr_type": "location" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "system_data": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PrivateLinkResourceAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "required_zone_names": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "group_id": { + "attr_type": null + }, + "required_members": { + "attr_type": null + }, + "required_zone_names": { + "attr_type": "required_zone_names" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "system_data": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PrivateLinkResourceListResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PrivateLinkServiceConnectionState": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "status": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "actions_required": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "status": { + "attr_type": "status" + }, + "description": { + "attr_type": "description" + }, + "actions_required": { + "attr_type": "actions_required" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PrivateLinkUpdate": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tags": { + "attr_type": "tags" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PrivateLinksList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ProcessNotAllowed": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "allowlist_values": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "allowlist_values": { + "attr_type": "allowlist_values" + }, + "value_type": { + "attr_type": null + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PropertyType": { + "type": "Enum", + "methods": {}, + "properties": { + "BOOLEAN": "BOOLEAN", + "INTEGER": "INTEGER", + "NUMBER": "NUMBER", + "STRING": "STRING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ProtocolEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "ALL": "ALL", + "TCP": "TCP", + "UDP": "UDP", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ProvisioningState": { + "type": "Enum", + "methods": {}, + "properties": { + "FAILED": "FAILED", + "SUCCEEDED": "SUCCEEDED", + "UPDATING": "UPDATING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ProxyResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "PublicNetworkAccess": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "QueryCheck": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "query": { + "default": "none", + "param_type": "keyword_only" + }, + "expected_result": { + "default": "none", + "param_type": "keyword_only" + }, + "column_names": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "query": { + "attr_type": "query" + }, + "expected_result": { + "attr_type": "expected_result" + }, + "column_names": { + "attr_type": "column_names" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "QueuePurgesNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Rank": { + "type": "Enum", + "methods": {}, + "properties": { + "CRITICAL": "CRITICAL", + "HIGH": "HIGH", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "NONE": "NONE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RecommendationConfigStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RecommendationConfigurationProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "recommendation_type": { + "default": null, + "param_type": "keyword_only" + }, + "status": { + "default": "str", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "recommendation_type": { + "attr_type": "recommendation_type" + }, + "name": { + "attr_type": null + }, + "status": { + "attr_type": "status" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "RecommendationSupportedClouds": { + "type": "Enum", + "methods": {}, + "properties": { + "AWS": "AWS", + "AZURE": "AZURE", + "GCP": "GCP", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RecommendationType": { + "type": "Enum", + "methods": {}, + "properties": { + "IO_T_ACRAUTHENTICATION": "IO_T_ACRAUTHENTICATION", + "IO_T_AGENT_SENDS_UNUTILIZED_MESSAGES": "IO_T_AGENT_SENDS_UNUTILIZED_MESSAGES", + "IO_T_BASELINE": "IO_T_BASELINE", + "IO_T_EDGE_HUB_MEM_OPTIMIZE": "IO_T_EDGE_HUB_MEM_OPTIMIZE", + "IO_T_EDGE_LOGGING_OPTIONS": "IO_T_EDGE_LOGGING_OPTIONS", + "IO_T_INCONSISTENT_MODULE_SETTINGS": "IO_T_INCONSISTENT_MODULE_SETTINGS", + "IO_T_INSTALL_AGENT": "IO_T_INSTALL_AGENT", + "IO_T_IPFILTER_DENY_ALL": "IO_T_IPFILTER_DENY_ALL", + "IO_T_IPFILTER_PERMISSIVE_RULE": "IO_T_IPFILTER_PERMISSIVE_RULE", + "IO_T_OPEN_PORTS": "IO_T_OPEN_PORTS", + "IO_T_PERMISSIVE_FIREWALL_POLICY": "IO_T_PERMISSIVE_FIREWALL_POLICY", + "IO_T_PERMISSIVE_INPUT_FIREWALL_RULES": "IO_T_PERMISSIVE_INPUT_FIREWALL_RULES", + "IO_T_PERMISSIVE_OUTPUT_FIREWALL_RULES": "IO_T_PERMISSIVE_OUTPUT_FIREWALL_RULES", + "IO_T_PRIVILEGED_DOCKER_OPTIONS": "IO_T_PRIVILEGED_DOCKER_OPTIONS", + "IO_T_SHARED_CREDENTIALS": "IO_T_SHARED_CREDENTIALS", + "IO_T_VULNERABLE_TLS_CIPHER_SUITE": "IO_T_VULNERABLE_TLS_CIPHER_SUITE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RegulatoryComplianceAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "state": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": { + "attr_type": null + }, + "assessment_type": { + "attr_type": null + }, + "assessment_details_link": { + "attr_type": null + }, + "state": { + "attr_type": "state" + }, + "passed_resources": { + "attr_type": null + }, + "failed_resources": { + "attr_type": null + }, + "skipped_resources": { + "attr_type": null + }, + "unsupported_resources": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "RegulatoryComplianceAssessmentList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "RegulatoryComplianceControl": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "state": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": { + "attr_type": null + }, + "state": { + "attr_type": "state" + }, + "passed_assessments": { + "attr_type": null + }, + "failed_assessments": { + "attr_type": null + }, + "skipped_assessments": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "RegulatoryComplianceControlList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "RegulatoryComplianceStandard": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "state": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "state": { + "attr_type": "state" + }, + "passed_controls": { + "attr_type": null + }, + "failed_controls": { + "attr_type": null + }, + "skipped_controls": { + "attr_type": null + }, + "unsupported_controls": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "RegulatoryComplianceStandardList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Remediation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "scripts": { + "default": "none", + "param_type": "keyword_only" + }, + "automated": { + "default": "none", + "param_type": "keyword_only" + }, + "portal_link": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": { + "attr_type": "description" + }, + "scripts": { + "attr_type": "scripts" + }, + "automated": { + "attr_type": "automated" + }, + "portal_link": { + "attr_type": "portal_link" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "RemediationEta": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "eta": { + "default": null, + "param_type": "keyword_only" + }, + "justification": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "eta": { + "attr_type": "eta" + }, + "justification": { + "attr_type": "justification" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ReportedSeverity": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "INFORMATIONAL": "INFORMATIONAL", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Resource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ResourceAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ResourceAutoGenerated2": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "system_data": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ResourceAutoGenerated3": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "system_data": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ResourceDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "source": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ResourceDetailsAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "source": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "source": { + "attr_type": "source" + }, + "id": { + "attr_type": null + }, + "connector_id": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ResourceIdentifier": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ResourceIdentifierType": { + "type": "Enum", + "methods": {}, + "properties": { + "AZURE_RESOURCE": "AZURE_RESOURCE", + "LOG_ANALYTICS": "LOG_ANALYTICS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ResourceStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "HEALTHY": "HEALTHY", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "NOT_HEALTHY": "NOT_HEALTHY", + "OFF_BY_POLICY": "OFF_BY_POLICY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ResourcesCoverageStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "FULLY_COVERED": "FULLY_COVERED", + "NOT_COVERED": "NOT_COVERED", + "PARTIALLY_COVERED": "PARTIALLY_COVERED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RiskLevel": { + "type": "Enum", + "methods": {}, + "properties": { + "CRITICAL": "CRITICAL", + "HIGH": "HIGH", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "NONE": "NONE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RuleCategory": { + "type": "Enum", + "methods": {}, + "properties": { + "ARTIFACTS": "ARTIFACTS", + "CODE": "CODE", + "CONTAINERS": "CONTAINERS", + "DEPENDENCIES": "DEPENDENCIES", + "IA_C": "IA_C", + "SECRETS": "SECRETS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RuleResults": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "RuleResultsInput": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "latest_scan": { + "default": "none", + "param_type": "keyword_only" + }, + "results": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "latest_scan": { + "attr_type": "latest_scan" + }, + "results": { + "attr_type": "results" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "RuleResultsProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "results": { + "default": "none", + "param_type": "keyword_only" + }, + "latest_scan": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "results": { + "attr_type": "results" + }, + "latest_scan": { + "attr_type": "latest_scan" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "RuleSeverity": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "INFORMATIONAL": "INFORMATIONAL", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "OBSOLETE": "OBSOLETE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RuleState": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "EXPIRED": "EXPIRED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RuleStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "FINDING": "FINDING", + "INTERNAL_ERROR": "INTERNAL_ERROR", + "NON_FINDING": "NON_FINDING", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RuleType": { + "type": "Enum", + "methods": {}, + "properties": { + "BASELINE_EXPECTED": "BASELINE_EXPECTED", + "BINARY": "BINARY", + "NEGATIVE_LIST": "NEGATIVE_LIST", + "POSITIVE_LIST": "POSITIVE_LIST", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RulesResults": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "RulesResultsInput": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "latest_scan": { + "default": "none", + "param_type": "keyword_only" + }, + "results": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "latest_scan": { + "attr_type": "latest_scan" + }, + "results": { + "attr_type": "results" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ScanOperationStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "FAILED": "FAILED", + "FAILED_TO_RUN": "FAILED_TO_RUN", + "IN_PROGRESS": "IN_PROGRESS", + "PASSED": "PASSED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ScanPropertiesV2": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "trigger_type": { + "default": "none", + "param_type": "keyword_only" + }, + "state": { + "default": "none", + "param_type": "keyword_only" + }, + "server": { + "default": "none", + "param_type": "keyword_only" + }, + "database": { + "default": "none", + "param_type": "keyword_only" + }, + "sql_version": { + "default": "none", + "param_type": "keyword_only" + }, + "start_time": { + "default": "none", + "param_type": "keyword_only" + }, + "end_time": { + "default": "none", + "param_type": "keyword_only" + }, + "high_severity_failed_rules_count": { + "default": "none", + "param_type": "keyword_only" + }, + "medium_severity_failed_rules_count": { + "default": "none", + "param_type": "keyword_only" + }, + "low_severity_failed_rules_count": { + "default": "none", + "param_type": "keyword_only" + }, + "total_passed_rules_count": { + "default": "none", + "param_type": "keyword_only" + }, + "total_failed_rules_count": { + "default": "none", + "param_type": "keyword_only" + }, + "total_rules_count": { + "default": "none", + "param_type": "keyword_only" + }, + "is_baseline_applied": { + "default": "none", + "param_type": "keyword_only" + }, + "last_scan_time": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "trigger_type": { + "attr_type": "trigger_type" + }, + "state": { + "attr_type": "state" + }, + "server": { + "attr_type": "server" + }, + "database": { + "attr_type": "database" + }, + "sql_version": { + "attr_type": "sql_version" + }, + "start_time": { + "attr_type": "start_time" + }, + "end_time": { + "attr_type": "end_time" + }, + "high_severity_failed_rules_count": { + "attr_type": "high_severity_failed_rules_count" + }, + "medium_severity_failed_rules_count": { + "attr_type": "medium_severity_failed_rules_count" + }, + "low_severity_failed_rules_count": { + "attr_type": "low_severity_failed_rules_count" + }, + "total_passed_rules_count": { + "attr_type": "total_passed_rules_count" + }, + "total_failed_rules_count": { + "attr_type": "total_failed_rules_count" + }, + "total_rules_count": { + "attr_type": "total_rules_count" + }, + "is_baseline_applied": { + "attr_type": "is_baseline_applied" + }, + "last_scan_time": { + "attr_type": "last_scan_time" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ScanResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ScanResultProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": "none", + "param_type": "keyword_only" + }, + "status": { + "default": "none", + "param_type": "keyword_only" + }, + "is_trimmed": { + "default": "none", + "param_type": "keyword_only" + }, + "query_results": { + "default": "none", + "param_type": "keyword_only" + }, + "remediation": { + "default": "none", + "param_type": "keyword_only" + }, + "baseline_adjusted_result": { + "default": "none", + "param_type": "keyword_only" + }, + "rule_metadata": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_id": { + "attr_type": "rule_id" + }, + "status": { + "attr_type": "status" + }, + "is_trimmed": { + "attr_type": "is_trimmed" + }, + "query_results": { + "attr_type": "query_results" + }, + "remediation": { + "attr_type": "remediation" + }, + "baseline_adjusted_result": { + "attr_type": "baseline_adjusted_result" + }, + "rule_metadata": { + "attr_type": "rule_metadata" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ScanResults": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ScanState": { + "type": "Enum", + "methods": {}, + "properties": { + "FAILED": "FAILED", + "FAILED_TO_RUN": "FAILED_TO_RUN", + "IN_PROGRESS": "IN_PROGRESS", + "PASSED": "PASSED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ScanSummary": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "blobs": { + "default": "none", + "param_type": "keyword_only" + }, + "files": { + "default": "none", + "param_type": "keyword_only" + }, + "estimated_scan_cost_usd": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "blobs": { + "attr_type": "blobs" + }, + "files": { + "attr_type": "files" + }, + "estimated_scan_cost_usd": { + "attr_type": "estimated_scan_cost_usd" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ScanTriggerType": { + "type": "Enum", + "methods": {}, + "properties": { + "ON_DEMAND": "ON_DEMAND", + "RECURRING": "RECURRING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ScanV2": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ScanningMode": { + "type": "Enum", + "methods": {}, + "properties": { + "DEFAULT": "DEFAULT", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ScansV2": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ScopeElement": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "additional_properties": { + "default": "none", + "param_type": "keyword_only" + }, + "field": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "additional_properties": { + "attr_type": null + }, + "field": { + "attr_type": "field" + } + } + }, + "SecureScoreControlDefinitionItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "max_score": { + "attr_type": null + }, + "source": { + "attr_type": null + }, + "assessment_definitions": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecureScoreControlDefinitionList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecureScoreControlDefinitionSource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "source_type": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "source_type": { + "attr_type": "source_type" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecureScoreControlDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "definition": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": { + "attr_type": null + }, + "healthy_resource_count": { + "attr_type": null + }, + "unhealthy_resource_count": { + "attr_type": null + }, + "not_applicable_resource_count": { + "attr_type": null + }, + "weight": { + "attr_type": null + }, + "definition": { + "attr_type": "definition" + }, + "max": { + "attr_type": null + }, + "current": { + "attr_type": null + }, + "percentage": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecureScoreControlList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecureScoreControlScore": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "max": { + "attr_type": null + }, + "current": { + "attr_type": null + }, + "percentage": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecureScoreItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": { + "attr_type": null + }, + "weight": { + "attr_type": null + }, + "max": { + "attr_type": null + }, + "current": { + "attr_type": null + }, + "percentage": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecureScoresList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "risk": { + "default": "none", + "param_type": "keyword_only" + }, + "resource_details": { + "default": "none", + "param_type": "keyword_only" + }, + "additional_data": { + "default": "none", + "param_type": "keyword_only" + }, + "metadata": { + "default": "none", + "param_type": "keyword_only" + }, + "partners_data": { + "default": "none", + "param_type": "keyword_only" + }, + "status": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "risk": { + "attr_type": "risk" + }, + "resource_details": { + "attr_type": "resource_details" + }, + "display_name": { + "attr_type": null + }, + "additional_data": { + "attr_type": "additional_data" + }, + "links": { + "attr_type": null + }, + "metadata": { + "attr_type": "metadata" + }, + "partners_data": { + "attr_type": "partners_data" + }, + "status": { + "attr_type": "status" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentMetadata": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "remediation_description": { + "default": "none", + "param_type": "keyword_only" + }, + "categories": { + "default": "none", + "param_type": "keyword_only" + }, + "severity": { + "default": "none", + "param_type": "keyword_only" + }, + "user_impact": { + "default": "none", + "param_type": "keyword_only" + }, + "implementation_effort": { + "default": "none", + "param_type": "keyword_only" + }, + "threats": { + "default": "none", + "param_type": "keyword_only" + }, + "preview": { + "default": "none", + "param_type": "keyword_only" + }, + "assessment_type": { + "default": "none", + "param_type": "keyword_only" + }, + "partner_data": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": { + "attr_type": "display_name" + }, + "policy_definition_id": { + "attr_type": null + }, + "description": { + "attr_type": "description" + }, + "remediation_description": { + "attr_type": "remediation_description" + }, + "categories": { + "attr_type": "categories" + }, + "severity": { + "attr_type": "severity" + }, + "user_impact": { + "attr_type": "user_impact" + }, + "implementation_effort": { + "attr_type": "implementation_effort" + }, + "threats": { + "attr_type": "threats" + }, + "preview": { + "attr_type": "preview" + }, + "assessment_type": { + "attr_type": "assessment_type" + }, + "partner_data": { + "attr_type": "partner_data" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentMetadataPartnerData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "partner_name": { + "default": null, + "param_type": "keyword_only" + }, + "secret": { + "default": null, + "param_type": "keyword_only" + }, + "product_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "partner_name": { + "attr_type": "partner_name" + }, + "product_name": { + "attr_type": "product_name" + }, + "secret": { + "attr_type": "secret" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentMetadataProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "default": null, + "param_type": "keyword_only" + }, + "severity": { + "default": null, + "param_type": "keyword_only" + }, + "assessment_type": { + "default": null, + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "remediation_description": { + "default": "none", + "param_type": "keyword_only" + }, + "categories": { + "default": "none", + "param_type": "keyword_only" + }, + "user_impact": { + "default": "none", + "param_type": "keyword_only" + }, + "implementation_effort": { + "default": "none", + "param_type": "keyword_only" + }, + "threats": { + "default": "none", + "param_type": "keyword_only" + }, + "preview": { + "default": "none", + "param_type": "keyword_only" + }, + "partner_data": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": { + "attr_type": "display_name" + }, + "policy_definition_id": { + "attr_type": null + }, + "description": { + "attr_type": "description" + }, + "remediation_description": { + "attr_type": "remediation_description" + }, + "categories": { + "attr_type": "categories" + }, + "severity": { + "attr_type": "severity" + }, + "user_impact": { + "attr_type": "user_impact" + }, + "implementation_effort": { + "attr_type": "implementation_effort" + }, + "threats": { + "attr_type": "threats" + }, + "preview": { + "attr_type": "preview" + }, + "assessment_type": { + "attr_type": "assessment_type" + }, + "partner_data": { + "attr_type": "partner_data" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentMetadataPropertiesResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "default": null, + "param_type": "keyword_only" + }, + "severity": { + "default": null, + "param_type": "keyword_only" + }, + "assessment_type": { + "default": null, + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "remediation_description": { + "default": "none", + "param_type": "keyword_only" + }, + "categories": { + "default": "none", + "param_type": "keyword_only" + }, + "user_impact": { + "default": "none", + "param_type": "keyword_only" + }, + "implementation_effort": { + "default": "none", + "param_type": "keyword_only" + }, + "threats": { + "default": "none", + "param_type": "keyword_only" + }, + "preview": { + "default": "none", + "param_type": "keyword_only" + }, + "partner_data": { + "default": "none", + "param_type": "keyword_only" + }, + "publish_dates": { + "default": "none", + "param_type": "keyword_only" + }, + "planned_deprecation_date": { + "default": "none", + "param_type": "keyword_only" + }, + "tactics": { + "default": "none", + "param_type": "keyword_only" + }, + "techniques": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "publish_dates": { + "attr_type": "publish_dates" + }, + "planned_deprecation_date": { + "attr_type": "planned_deprecation_date" + }, + "tactics": { + "attr_type": "tactics" + }, + "techniques": { + "attr_type": "techniques" + }, + "display_name": { + "attr_type": "display_name" + }, + "policy_definition_id": { + "attr_type": null + }, + "description": { + "attr_type": "description" + }, + "remediation_description": { + "attr_type": "remediation_description" + }, + "categories": { + "attr_type": "categories" + }, + "severity": { + "attr_type": "severity" + }, + "user_impact": { + "attr_type": "user_impact" + }, + "implementation_effort": { + "attr_type": "implementation_effort" + }, + "threats": { + "attr_type": "threats" + }, + "preview": { + "attr_type": "preview" + }, + "assessment_type": { + "attr_type": "assessment_type" + }, + "partner_data": { + "attr_type": "partner_data" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentMetadataPropertiesResponsePublishDates": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "public": { + "default": null, + "param_type": "keyword_only" + }, + "ga": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "ga": { + "attr_type": "ga" + }, + "public": { + "attr_type": "public" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentMetadataResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "remediation_description": { + "default": "none", + "param_type": "keyword_only" + }, + "categories": { + "default": "none", + "param_type": "keyword_only" + }, + "severity": { + "default": "none", + "param_type": "keyword_only" + }, + "user_impact": { + "default": "none", + "param_type": "keyword_only" + }, + "implementation_effort": { + "default": "none", + "param_type": "keyword_only" + }, + "threats": { + "default": "none", + "param_type": "keyword_only" + }, + "preview": { + "default": "none", + "param_type": "keyword_only" + }, + "assessment_type": { + "default": "none", + "param_type": "keyword_only" + }, + "partner_data": { + "default": "none", + "param_type": "keyword_only" + }, + "publish_dates": { + "default": "none", + "param_type": "keyword_only" + }, + "planned_deprecation_date": { + "default": "none", + "param_type": "keyword_only" + }, + "tactics": { + "default": "none", + "param_type": "keyword_only" + }, + "techniques": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": { + "attr_type": "display_name" + }, + "policy_definition_id": { + "attr_type": null + }, + "description": { + "attr_type": "description" + }, + "remediation_description": { + "attr_type": "remediation_description" + }, + "categories": { + "attr_type": "categories" + }, + "severity": { + "attr_type": "severity" + }, + "user_impact": { + "attr_type": "user_impact" + }, + "implementation_effort": { + "attr_type": "implementation_effort" + }, + "threats": { + "attr_type": "threats" + }, + "preview": { + "attr_type": "preview" + }, + "assessment_type": { + "attr_type": "assessment_type" + }, + "partner_data": { + "attr_type": "partner_data" + }, + "publish_dates": { + "attr_type": "publish_dates" + }, + "planned_deprecation_date": { + "attr_type": "planned_deprecation_date" + }, + "tactics": { + "attr_type": "tactics" + }, + "techniques": { + "attr_type": "techniques" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentMetadataResponseList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentPartnerData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "partner_name": { + "default": null, + "param_type": "keyword_only" + }, + "secret": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "partner_name": { + "attr_type": "partner_name" + }, + "secret": { + "attr_type": "secret" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_details": { + "default": null, + "param_type": "keyword_only" + }, + "status": { + "default": null, + "param_type": "keyword_only" + }, + "risk": { + "default": "none", + "param_type": "keyword_only" + }, + "additional_data": { + "default": "none", + "param_type": "keyword_only" + }, + "metadata": { + "default": "none", + "param_type": "keyword_only" + }, + "partners_data": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "status": { + "attr_type": "status" + }, + "risk": { + "attr_type": "risk" + }, + "resource_details": { + "attr_type": "resource_details" + }, + "display_name": { + "attr_type": null + }, + "additional_data": { + "attr_type": "additional_data" + }, + "links": { + "attr_type": null + }, + "metadata": { + "attr_type": "metadata" + }, + "partners_data": { + "attr_type": "partners_data" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentPropertiesBase": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_details": { + "default": null, + "param_type": "keyword_only" + }, + "risk": { + "default": "none", + "param_type": "keyword_only" + }, + "additional_data": { + "default": "none", + "param_type": "keyword_only" + }, + "metadata": { + "default": "none", + "param_type": "keyword_only" + }, + "partners_data": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "risk": { + "attr_type": "risk" + }, + "resource_details": { + "attr_type": "resource_details" + }, + "display_name": { + "attr_type": null + }, + "additional_data": { + "attr_type": "additional_data" + }, + "links": { + "attr_type": null + }, + "metadata": { + "attr_type": "metadata" + }, + "partners_data": { + "attr_type": "partners_data" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentPropertiesBaseRisk": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "risk_factors": { + "default": "none", + "param_type": "keyword_only" + }, + "level": { + "default": "none", + "param_type": "keyword_only" + }, + "attack_paths_references": { + "default": "none", + "param_type": "keyword_only" + }, + "paths": { + "default": "none", + "param_type": "keyword_only" + }, + "is_contextual_risk": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "risk_factors": { + "attr_type": "risk_factors" + }, + "level": { + "attr_type": "level" + }, + "attack_paths_references": { + "attr_type": "attack_paths_references" + }, + "paths": { + "attr_type": "paths" + }, + "is_contextual_risk": { + "attr_type": "is_contextual_risk" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentPropertiesBaseRiskPathsItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "default": "none", + "param_type": "keyword_only" + }, + "nodes": { + "default": "none", + "param_type": "keyword_only" + }, + "edges": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "nodes": { + "attr_type": "nodes" + }, + "edges": { + "attr_type": "edges" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "default": "none", + "param_type": "keyword_only" + }, + "node_properties_label": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": { + "attr_type": "id" + }, + "node_properties_label": { + "attr_type": "node_properties_label" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentPropertiesResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_details": { + "default": null, + "param_type": "keyword_only" + }, + "status": { + "default": null, + "param_type": "keyword_only" + }, + "risk": { + "default": "none", + "param_type": "keyword_only" + }, + "additional_data": { + "default": "none", + "param_type": "keyword_only" + }, + "metadata": { + "default": "none", + "param_type": "keyword_only" + }, + "partners_data": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "status": { + "attr_type": "status" + }, + "risk": { + "attr_type": "risk" + }, + "resource_details": { + "attr_type": "resource_details" + }, + "display_name": { + "attr_type": null + }, + "additional_data": { + "attr_type": "additional_data" + }, + "links": { + "attr_type": null + }, + "metadata": { + "attr_type": "metadata" + }, + "partners_data": { + "attr_type": "partners_data" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityAssessmentResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "risk": { + "default": "none", + "param_type": "keyword_only" + }, + "resource_details": { + "default": "none", + "param_type": "keyword_only" + }, + "additional_data": { + "default": "none", + "param_type": "keyword_only" + }, + "metadata": { + "default": "none", + "param_type": "keyword_only" + }, + "partners_data": { + "default": "none", + "param_type": "keyword_only" + }, + "status": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "risk": { + "attr_type": "risk" + }, + "resource_details": { + "attr_type": "resource_details" + }, + "display_name": { + "attr_type": null + }, + "additional_data": { + "attr_type": "additional_data" + }, + "links": { + "attr_type": null + }, + "metadata": { + "attr_type": "metadata" + }, + "partners_data": { + "attr_type": "partners_data" + }, + "status": { + "attr_type": "status" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityConnector": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "etag": { + "default": "none", + "param_type": "keyword_only" + }, + "kind": { + "default": "none", + "param_type": "keyword_only" + }, + "location": { + "default": "none", + "param_type": "keyword_only" + }, + "hierarchy_identifier": { + "default": "none", + "param_type": "keyword_only" + }, + "environment_name": { + "default": "none", + "param_type": "keyword_only" + }, + "offerings": { + "default": "none", + "param_type": "keyword_only" + }, + "environment_data": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "system_data": { + "attr_type": null + }, + "hierarchy_identifier": { + "attr_type": "hierarchy_identifier" + }, + "hierarchy_identifier_trial_end_date": { + "attr_type": null + }, + "environment_name": { + "attr_type": "environment_name" + }, + "offerings": { + "attr_type": "offerings" + }, + "environment_data": { + "attr_type": "environment_data" + }, + "tags": { + "attr_type": "tags" + }, + "etag": { + "attr_type": "etag" + }, + "kind": { + "attr_type": "kind" + }, + "location": { + "attr_type": "location" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityConnectorsList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityFamily": { + "type": "Enum", + "methods": {}, + "properties": { + "NGFW": "NGFW", + "SAAS_WAF": "SAAS_WAF", + "VA": "VA", + "WAF": "WAF", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SecurityIssue": { + "type": "Enum", + "methods": {}, + "properties": { + "ANONYMOUS_ACCESS": "ANONYMOUS_ACCESS", + "BEST_PRACTICES": "BEST_PRACTICES", + "EXCESSIVE_PERMISSIONS": "EXCESSIVE_PERMISSIONS", + "NETWORK_EXPOSURE": "NETWORK_EXPOSURE", + "TRAFFIC_ENCRYPTION": "TRAFFIC_ENCRYPTION", + "VULNERABILITY": "VULNERABILITY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SecurityOperator": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "identity": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "identity": { + "attr_type": "identity" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityOperatorList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecuritySolution": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_family": { + "default": "none", + "param_type": "keyword_only" + }, + "provisioning_state": { + "default": "none", + "param_type": "keyword_only" + }, + "template": { + "default": "none", + "param_type": "keyword_only" + }, + "protection_status": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "location": { + "attr_type": null + }, + "security_family": { + "attr_type": "security_family" + }, + "provisioning_state": { + "attr_type": "provisioning_state" + }, + "template": { + "attr_type": "template" + }, + "protection_status": { + "attr_type": "protection_status" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecuritySolutionList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecuritySolutionStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SecuritySolutionsReferenceData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_family": { + "default": null, + "param_type": "keyword_only" + }, + "alert_vendor_name": { + "default": null, + "param_type": "keyword_only" + }, + "package_info_url": { + "default": null, + "param_type": "keyword_only" + }, + "product_name": { + "default": null, + "param_type": "keyword_only" + }, + "publisher": { + "default": null, + "param_type": "keyword_only" + }, + "publisher_display_name": { + "default": null, + "param_type": "keyword_only" + }, + "template": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "location": { + "attr_type": null + }, + "security_family": { + "attr_type": "security_family" + }, + "alert_vendor_name": { + "attr_type": "alert_vendor_name" + }, + "package_info_url": { + "attr_type": "package_info_url" + }, + "product_name": { + "attr_type": "product_name" + }, + "publisher": { + "attr_type": "publisher" + }, + "publisher_display_name": { + "attr_type": "publisher_display_name" + }, + "template": { + "attr_type": "template" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecuritySolutionsReferenceDataList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityStandard": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "assessments": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_providers": { + "default": "none", + "param_type": "keyword_only" + }, + "policy_set_definition_id": { + "default": "none", + "param_type": "keyword_only" + }, + "metadata": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": { + "attr_type": "display_name" + }, + "standard_type": { + "attr_type": null + }, + "description": { + "attr_type": "description" + }, + "assessments": { + "attr_type": "assessments" + }, + "cloud_providers": { + "attr_type": "cloud_providers" + }, + "policy_set_definition_id": { + "attr_type": "policy_set_definition_id" + }, + "metadata": { + "attr_type": "metadata" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityStandardList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecuritySubAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "status": { + "default": "none", + "param_type": "keyword_only" + }, + "resource_details": { + "default": "none", + "param_type": "keyword_only" + }, + "additional_data": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id_properties_id": { + "attr_type": null + }, + "display_name": { + "attr_type": null + }, + "status": { + "attr_type": "status" + }, + "remediation": { + "attr_type": null + }, + "impact": { + "attr_type": null + }, + "category": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "time_generated": { + "attr_type": null + }, + "resource_details": { + "attr_type": "resource_details" + }, + "additional_data": { + "attr_type": "additional_data" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecuritySubAssessmentList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityTask": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_task_parameters": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "state": { + "attr_type": null + }, + "creation_time_utc": { + "attr_type": null + }, + "security_task_parameters": { + "attr_type": "security_task_parameters" + }, + "last_state_change_time_utc": { + "attr_type": null + }, + "sub_state": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityTaskList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SecurityTaskParameters": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "additional_properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "additional_properties": { + "attr_type": null + }, + "name": { + "attr_type": null + } + } + }, + "SensitiveDataDiscoveryProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "is_enabled": { + "attr_type": "is_enabled" + }, + "operation_status": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SensitivityLabel": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "rank": { + "default": "none", + "param_type": "keyword_only" + }, + "order": { + "default": "none", + "param_type": "keyword_only" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": { + "attr_type": "display_name" + }, + "description": { + "attr_type": "description" + }, + "rank": { + "attr_type": "rank" + }, + "order": { + "attr_type": "order" + }, + "enabled": { + "attr_type": "enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ServerVulnerabilityAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_state": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ServerVulnerabilityAssessmentPropertiesProvisioningState": { + "type": "Enum", + "methods": {}, + "properties": { + "CANCELED": "CANCELED", + "DEPROVISIONING": "DEPROVISIONING", + "FAILED": "FAILED", + "PROVISIONING": "PROVISIONING", + "SUCCEEDED": "SUCCEEDED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ServerVulnerabilityAssessmentsAzureSettingSelectedProvider": { + "type": "Enum", + "methods": {}, + "properties": { + "MDE_TVM": "MDE_TVM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ServerVulnerabilityAssessmentsList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ServerVulnerabilityAssessmentsSetting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "kind": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "system_data": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ServerVulnerabilityAssessmentsSettingKind": { + "type": "Enum", + "methods": {}, + "properties": { + "AZURE_SERVERS_SETTING": "AZURE_SERVERS_SETTING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ServerVulnerabilityAssessmentsSettingKindName": { + "type": "Enum", + "methods": {}, + "properties": { + "AZURE_SERVERS_SETTING": "AZURE_SERVERS_SETTING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ServerVulnerabilityAssessmentsSettingsList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ServerVulnerabilityProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "assessed_resource_type": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "cvss": { + "attr_type": null + }, + "patchable": { + "attr_type": null + }, + "cve": { + "attr_type": null + }, + "threat": { + "attr_type": null + }, + "published_time": { + "attr_type": null + }, + "vendor_references": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Setting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "kind": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SettingKind": { + "type": "Enum", + "methods": {}, + "properties": { + "ALERT_SUPPRESSION_SETTING": "ALERT_SUPPRESSION_SETTING", + "ALERT_SYNC_SETTINGS": "ALERT_SYNC_SETTINGS", + "DATA_EXPORT_SETTINGS": "DATA_EXPORT_SETTINGS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SettingName": { + "type": "Enum", + "methods": {}, + "properties": { + "MCAS": "MCAS", + "SENTINEL": "SENTINEL", + "WDATP": "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW": "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", + "WDATP_UNIFIED_SOLUTION": "WDATP_UNIFIED_SOLUTION", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SettingNameAutoGenerated": { + "type": "Enum", + "methods": {}, + "properties": { + "CURRENT": "CURRENT", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SettingsList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Severity": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SeverityEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Source": { + "type": "Enum", + "methods": {}, + "properties": { + "AZURE": "AZURE", + "ON_PREMISE": "ON_PREMISE", + "ON_PREMISE_SQL": "ON_PREMISE_SQL", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SqlServerVulnerabilityProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "assessed_resource_type": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "query": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SqlVulnerabilityAssessmentScanOperationResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SqlVulnerabilityAssessmentScanOperationResultProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": "none", + "param_type": "keyword_only" + }, + "scan_status": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "operation_id": { + "attr_type": "operation_id" + }, + "scan_status": { + "attr_type": "scan_status" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SqlVulnerabilityAssessmentSettings": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": { + "attr_type": "properties" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SqlVulnerabilityAssessmentSettingsProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "state": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "creation_time": { + "attr_type": null + }, + "state": { + "attr_type": "state" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SqlVulnerabilityAssessmentState": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Standard": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "etag": { + "default": "none", + "param_type": "keyword_only" + }, + "kind": { + "default": "none", + "param_type": "keyword_only" + }, + "location": { + "default": "none", + "param_type": "keyword_only" + }, + "display_name": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "category": { + "default": "none", + "param_type": "keyword_only" + }, + "components": { + "default": "none", + "param_type": "keyword_only" + }, + "supported_clouds": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "system_data": { + "attr_type": null + }, + "display_name": { + "attr_type": "display_name" + }, + "standard_type": { + "attr_type": null + }, + "description": { + "attr_type": "description" + }, + "category": { + "attr_type": "category" + }, + "components": { + "attr_type": "components" + }, + "supported_clouds": { + "attr_type": "supported_clouds" + }, + "tags": { + "attr_type": "tags" + }, + "etag": { + "attr_type": "etag" + }, + "kind": { + "attr_type": "kind" + }, + "location": { + "attr_type": "location" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "StandardAssignment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "assigned_standard": { + "default": "none", + "param_type": "keyword_only" + }, + "effect": { + "default": "none", + "param_type": "keyword_only" + }, + "excluded_scopes": { + "default": "none", + "param_type": "keyword_only" + }, + "expires_on": { + "default": "none", + "param_type": "keyword_only" + }, + "exemption_data": { + "default": "none", + "param_type": "keyword_only" + }, + "attestation_data": { + "default": "none", + "param_type": "keyword_only" + }, + "metadata": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": { + "attr_type": "display_name" + }, + "description": { + "attr_type": "description" + }, + "assigned_standard": { + "attr_type": "assigned_standard" + }, + "effect": { + "attr_type": "effect" + }, + "excluded_scopes": { + "attr_type": "excluded_scopes" + }, + "expires_on": { + "attr_type": "expires_on" + }, + "exemption_data": { + "attr_type": "exemption_data" + }, + "attestation_data": { + "attr_type": "attestation_data" + }, + "metadata": { + "attr_type": "metadata" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "StandardAssignmentMetadata": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "created_by": { + "attr_type": null + }, + "created_on": { + "attr_type": null + }, + "last_updated_by": { + "attr_type": null + }, + "last_updated_on": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "StandardAssignmentPropertiesAttestationData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "compliance_state": { + "default": "none", + "param_type": "keyword_only" + }, + "assigned_assessment": { + "default": "none", + "param_type": "keyword_only" + }, + "evidence": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "compliance_state": { + "attr_type": "compliance_state" + }, + "assigned_assessment": { + "attr_type": "assigned_assessment" + }, + "compliance_date": { + "attr_type": null + }, + "evidence": { + "attr_type": "evidence" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "StandardAssignmentPropertiesExemptionData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exemption_category": { + "default": "none", + "param_type": "keyword_only" + }, + "assigned_assessment": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "exemption_category": { + "attr_type": "exemption_category" + }, + "assigned_assessment": { + "attr_type": "assigned_assessment" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "StandardAssignmentsList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "StandardComponentProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "key": { + "attr_type": "key" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "StandardList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "StandardMetadata": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "created_by": { + "attr_type": null + }, + "created_on": { + "attr_type": null + }, + "last_updated_by": { + "attr_type": null + }, + "last_updated_on": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "StandardSupportedCloud": { + "type": "Enum", + "methods": {}, + "properties": { + "AWS": "AWS", + "AZURE": "AZURE", + "GCP": "GCP", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "StandardSupportedClouds": { + "type": "Enum", + "methods": {}, + "properties": { + "AWS": "AWS", + "GCP": "GCP", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "StandardType": { + "type": "Enum", + "methods": {}, + "properties": { + "COMPLIANCE": "COMPLIANCE", + "CUSTOM": "CUSTOM", + "DEFAULT": "DEFAULT", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "State": { + "type": "Enum", + "methods": {}, + "properties": { + "FAILED": "FAILED", + "PASSED": "PASSED", + "SKIPPED": "SKIPPED", + "UNSUPPORTED": "UNSUPPORTED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Status": { + "type": "Enum", + "methods": {}, + "properties": { + "INITIATED": "INITIATED", + "REVOKED": "REVOKED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "StatusAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "code": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": "code" + }, + "reason": { + "attr_type": null + }, + "last_scanned_date": { + "attr_type": null + }, + "status_change_date": { + "attr_type": null + }, + "first_evaluation_date": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "StatusName": { + "type": "Enum", + "methods": {}, + "properties": { + "HEALTHY": "HEALTHY", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "NOT_HEALTHY": "NOT_HEALTHY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "StatusReason": { + "type": "Enum", + "methods": {}, + "properties": { + "EXPIRED": "EXPIRED", + "NEWER_REQUEST_INITIATED": "NEWER_REQUEST_INITIATED", + "USER_REQUESTED": "USER_REQUESTED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SubAssessmentStatus": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": { + "attr_type": null + }, + "cause": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "severity": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SubAssessmentStatusCode": { + "type": "Enum", + "methods": {}, + "properties": { + "HEALTHY": "HEALTHY", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "UNHEALTHY": "UNHEALTHY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SubPlan": { + "type": "Enum", + "methods": {}, + "properties": { + "P1": "P1", + "P2": "P2", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SuppressionAlertsScope": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "all_of": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "all_of": { + "attr_type": "all_of" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "SystemData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "created_by": { + "default": "none", + "param_type": "keyword_only" + }, + "created_by_type": { + "default": "none", + "param_type": "keyword_only" + }, + "created_at": { + "default": "none", + "param_type": "keyword_only" + }, + "last_modified_by": { + "default": "none", + "param_type": "keyword_only" + }, + "last_modified_by_type": { + "default": "none", + "param_type": "keyword_only" + }, + "last_modified_at": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "created_by": { + "attr_type": "created_by" + }, + "created_by_type": { + "attr_type": "created_by_type" + }, + "created_at": { + "attr_type": "created_at" + }, + "last_modified_by": { + "attr_type": "last_modified_by" + }, + "last_modified_by_type": { + "attr_type": "last_modified_by_type" + }, + "last_modified_at": { + "attr_type": "last_modified_at" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Tactics": { + "type": "Enum", + "methods": {}, + "properties": { + "COLLECTION": "COLLECTION", + "COMMAND_AND_CONTROL": "COMMAND_AND_CONTROL", + "CREDENTIAL_ACCESS": "CREDENTIAL_ACCESS", + "DEFENSE_EVASION": "DEFENSE_EVASION", + "DISCOVERY": "DISCOVERY", + "EXECUTION": "EXECUTION", + "EXFILTRATION": "EXFILTRATION", + "IMPACT": "IMPACT", + "INITIAL_ACCESS": "INITIAL_ACCESS", + "LATERAL_MOVEMENT": "LATERAL_MOVEMENT", + "PERSISTENCE": "PERSISTENCE", + "PRIVILEGE_ESCALATION": "PRIVILEGE_ESCALATION", + "RECONNAISSANCE": "RECONNAISSANCE", + "RESOURCE_DEVELOPMENT": "RESOURCE_DEVELOPMENT", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Tags": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tags": { + "attr_type": "tags" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "TagsResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tags": { + "attr_type": "tags" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "TargetBranchConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "branch_names": { + "default": "none", + "param_type": "keyword_only" + }, + "annotate_default_branch": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "branch_names": { + "attr_type": "branch_names" + }, + "annotate_default_branch": { + "attr_type": "annotate_default_branch" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "TaskUpdateActionType": { + "type": "Enum", + "methods": {}, + "properties": { + "ACTIVATE": "ACTIVATE", + "CLOSE": "CLOSE", + "DISMISS": "DISMISS", + "RESOLVE": "RESOLVE", + "START": "START", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Techniques": { + "type": "Enum", + "methods": {}, + "properties": { + "ABUSE_ELEVATION_CONTROL_MECHANISM": "ABUSE_ELEVATION_CONTROL_MECHANISM", + "ACCESS_TOKEN_MANIPULATION": "ACCESS_TOKEN_MANIPULATION", + "ACCOUNT_DISCOVERY": "ACCOUNT_DISCOVERY", + "ACCOUNT_MANIPULATION": "ACCOUNT_MANIPULATION", + "ACTIVE_SCANNING": "ACTIVE_SCANNING", + "APPLICATION_LAYER_PROTOCOL": "APPLICATION_LAYER_PROTOCOL", + "AUDIO_CAPTURE": "AUDIO_CAPTURE", + "BOOT_OR_LOGON_AUTOSTART_EXECUTION": "BOOT_OR_LOGON_AUTOSTART_EXECUTION", + "BOOT_OR_LOGON_INITIALIZATION_SCRIPTS": "BOOT_OR_LOGON_INITIALIZATION_SCRIPTS", + "BRUTE_FORCE": "BRUTE_FORCE", + "CLOUD_INFRASTRUCTURE_DISCOVERY": "CLOUD_INFRASTRUCTURE_DISCOVERY", + "CLOUD_SERVICE_DASHBOARD": "CLOUD_SERVICE_DASHBOARD", + "CLOUD_SERVICE_DISCOVERY": "CLOUD_SERVICE_DISCOVERY", + "COMMAND_AND_SCRIPTING_INTERPRETER": "COMMAND_AND_SCRIPTING_INTERPRETER", + "COMPROMISE_CLIENT_SOFTWARE_BINARY": "COMPROMISE_CLIENT_SOFTWARE_BINARY", + "COMPROMISE_INFRASTRUCTURE": "COMPROMISE_INFRASTRUCTURE", + "CONTAINER_AND_RESOURCE_DISCOVERY": "CONTAINER_AND_RESOURCE_DISCOVERY", + "CREATE_ACCOUNT": "CREATE_ACCOUNT", + "CREATE_OR_MODIFY_SYSTEM_PROCESS": "CREATE_OR_MODIFY_SYSTEM_PROCESS", + "CREDENTIALS_FROM_PASSWORD_STORES": "CREDENTIALS_FROM_PASSWORD_STORES", + "DATA_DESTRUCTION": "DATA_DESTRUCTION", + "DATA_ENCRYPTED_FOR_IMPACT": "DATA_ENCRYPTED_FOR_IMPACT", + "DATA_FROM_CLOUD_STORAGE_OBJECT": "DATA_FROM_CLOUD_STORAGE_OBJECT", + "DATA_FROM_CONFIGURATION_REPOSITORY": "DATA_FROM_CONFIGURATION_REPOSITORY", + "DATA_FROM_INFORMATION_REPOSITORIES": "DATA_FROM_INFORMATION_REPOSITORIES", + "DATA_FROM_LOCAL_SYSTEM": "DATA_FROM_LOCAL_SYSTEM", + "DATA_MANIPULATION": "DATA_MANIPULATION", + "DATA_STAGED": "DATA_STAGED", + "DEFACEMENT": "DEFACEMENT", + "DEOBFUSCATE_DECODE_FILES_OR_INFORMATION": "DEOBFUSCATE_DECODE_FILES_OR_INFORMATION", + "DISK_WIPE": "DISK_WIPE", + "DOMAIN_TRUST_DISCOVERY": "DOMAIN_TRUST_DISCOVERY", + "DRIVE_BY_COMPROMISE": "DRIVE_BY_COMPROMISE", + "DYNAMIC_RESOLUTION": "DYNAMIC_RESOLUTION", + "ENDPOINT_DENIAL_OF_SERVICE": "ENDPOINT_DENIAL_OF_SERVICE", + "EVENT_TRIGGERED_EXECUTION": "EVENT_TRIGGERED_EXECUTION", + "EXFILTRATION_OVER_ALTERNATIVE_PROTOCOL": "EXFILTRATION_OVER_ALTERNATIVE_PROTOCOL", + "EXPLOITATION_FOR_CLIENT_EXECUTION": "EXPLOITATION_FOR_CLIENT_EXECUTION", + "EXPLOITATION_FOR_CREDENTIAL_ACCESS": "EXPLOITATION_FOR_CREDENTIAL_ACCESS", + "EXPLOITATION_FOR_DEFENSE_EVASION": "EXPLOITATION_FOR_DEFENSE_EVASION", + "EXPLOITATION_FOR_PRIVILEGE_ESCALATION": "EXPLOITATION_FOR_PRIVILEGE_ESCALATION", + "EXPLOITATION_OF_REMOTE_SERVICES": "EXPLOITATION_OF_REMOTE_SERVICES", + "EXPLOIT_PUBLIC_FACING_APPLICATION": "EXPLOIT_PUBLIC_FACING_APPLICATION", + "EXTERNAL_REMOTE_SERVICES": "EXTERNAL_REMOTE_SERVICES", + "FALLBACK_CHANNELS": "FALLBACK_CHANNELS", + "FILE_AND_DIRECTORY_DISCOVERY": "FILE_AND_DIRECTORY_DISCOVERY", + "FILE_AND_DIRECTORY_PERMISSIONS_MODIFICATION": "FILE_AND_DIRECTORY_PERMISSIONS_MODIFICATION", + "GATHER_VICTIM_NETWORK_INFORMATION": "GATHER_VICTIM_NETWORK_INFORMATION", + "HIDE_ARTIFACTS": "HIDE_ARTIFACTS", + "HIJACK_EXECUTION_FLOW": "HIJACK_EXECUTION_FLOW", + "IMPAIR_DEFENSES": "IMPAIR_DEFENSES", + "IMPLANT_CONTAINER_IMAGE": "IMPLANT_CONTAINER_IMAGE", + "INDICATOR_REMOVAL_ON_HOST": "INDICATOR_REMOVAL_ON_HOST", + "INDIRECT_COMMAND_EXECUTION": "INDIRECT_COMMAND_EXECUTION", + "INGRESS_TOOL_TRANSFER": "INGRESS_TOOL_TRANSFER", + "INPUT_CAPTURE": "INPUT_CAPTURE", + "INTER_PROCESS_COMMUNICATION": "INTER_PROCESS_COMMUNICATION", + "LATERAL_TOOL_TRANSFER": "LATERAL_TOOL_TRANSFER", + "MAN_IN_THE_MIDDLE": "MAN_IN_THE_MIDDLE", + "MASQUERADING": "MASQUERADING", + "MODIFY_AUTHENTICATION_PROCESS": "MODIFY_AUTHENTICATION_PROCESS", + "MODIFY_REGISTRY": "MODIFY_REGISTRY", + "NETWORK_DENIAL_OF_SERVICE": "NETWORK_DENIAL_OF_SERVICE", + "NETWORK_SERVICE_SCANNING": "NETWORK_SERVICE_SCANNING", + "NETWORK_SNIFFING": "NETWORK_SNIFFING", + "NON_APPLICATION_LAYER_PROTOCOL": "NON_APPLICATION_LAYER_PROTOCOL", + "NON_STANDARD_PORT": "NON_STANDARD_PORT", + "OBFUSCATED_FILES_OR_INFORMATION": "OBFUSCATED_FILES_OR_INFORMATION", + "OBTAIN_CAPABILITIES": "OBTAIN_CAPABILITIES", + "OFFICE_APPLICATION_STARTUP": "OFFICE_APPLICATION_STARTUP", + "OS_CREDENTIAL_DUMPING": "OS_CREDENTIAL_DUMPING", + "PERMISSION_GROUPS_DISCOVERY": "PERMISSION_GROUPS_DISCOVERY", + "PHISHING": "PHISHING", + "PRE_OS_BOOT": "PRE_OS_BOOT", + "PROCESS_DISCOVERY": "PROCESS_DISCOVERY", + "PROCESS_INJECTION": "PROCESS_INJECTION", + "PROTOCOL_TUNNELING": "PROTOCOL_TUNNELING", + "PROXY": "PROXY", + "QUERY_REGISTRY": "QUERY_REGISTRY", + "REMOTE_ACCESS_SOFTWARE": "REMOTE_ACCESS_SOFTWARE", + "REMOTE_SERVICES": "REMOTE_SERVICES", + "REMOTE_SERVICE_SESSION_HIJACKING": "REMOTE_SERVICE_SESSION_HIJACKING", + "REMOTE_SYSTEM_DISCOVERY": "REMOTE_SYSTEM_DISCOVERY", + "RESOURCE_HIJACKING": "RESOURCE_HIJACKING", + "SCHEDULED_TASK_JOB": "SCHEDULED_TASK_JOB", + "SCREEN_CAPTURE": "SCREEN_CAPTURE", + "SEARCH_VICTIM_OWNED_WEBSITES": "SEARCH_VICTIM_OWNED_WEBSITES", + "SERVER_SOFTWARE_COMPONENT": "SERVER_SOFTWARE_COMPONENT", + "SERVICE_STOP": "SERVICE_STOP", + "SIGNED_BINARY_PROXY_EXECUTION": "SIGNED_BINARY_PROXY_EXECUTION", + "SOFTWARE_DEPLOYMENT_TOOLS": "SOFTWARE_DEPLOYMENT_TOOLS", + "SQL_STORED_PROCEDURES": "SQL_STORED_PROCEDURES", + "STEAL_OR_FORGE_KERBEROS_TICKETS": "STEAL_OR_FORGE_KERBEROS_TICKETS", + "SUBVERT_TRUST_CONTROLS": "SUBVERT_TRUST_CONTROLS", + "SUPPLY_CHAIN_COMPROMISE": "SUPPLY_CHAIN_COMPROMISE", + "SYSTEM_INFORMATION_DISCOVERY": "SYSTEM_INFORMATION_DISCOVERY", + "TAINT_SHARED_CONTENT": "TAINT_SHARED_CONTENT", + "TRAFFIC_SIGNALING": "TRAFFIC_SIGNALING", + "TRANSFER_DATA_TO_CLOUD_ACCOUNT": "TRANSFER_DATA_TO_CLOUD_ACCOUNT", + "TRUSTED_RELATIONSHIP": "TRUSTED_RELATIONSHIP", + "UNSECURED_CREDENTIALS": "UNSECURED_CREDENTIALS", + "USER_EXECUTION": "USER_EXECUTION", + "VALID_ACCOUNTS": "VALID_ACCOUNTS", + "WINDOWS_MANAGEMENT_INSTRUMENTATION": "WINDOWS_MANAGEMENT_INSTRUMENTATION", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Threats": { + "type": "Enum", + "methods": {}, + "properties": { + "ACCOUNT_BREACH": "ACCOUNT_BREACH", + "DATA_EXFILTRATION": "DATA_EXFILTRATION", + "DATA_SPILLAGE": "DATA_SPILLAGE", + "DENIAL_OF_SERVICE": "DENIAL_OF_SERVICE", + "ELEVATION_OF_PRIVILEGE": "ELEVATION_OF_PRIVILEGE", + "MALICIOUS_INSIDER": "MALICIOUS_INSIDER", + "MISSING_COVERAGE": "MISSING_COVERAGE", + "THREAT_RESISTANCE": "THREAT_RESISTANCE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ThresholdCustomAlertRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "TimeWindowCustomAlertRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "TopologyList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": null + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "TopologyResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "location": { + "attr_type": null + }, + "calculated_date_time": { + "attr_type": null + }, + "topology_resources": { + "attr_type": null + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "TopologySingleResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "resource_id": { + "attr_type": null + }, + "severity": { + "attr_type": null + }, + "recommendations_exist": { + "attr_type": null + }, + "network_zones": { + "attr_type": null + }, + "topology_score": { + "attr_type": null + }, + "location": { + "attr_type": null + }, + "parents": { + "attr_type": null + }, + "children": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "TopologySingleResourceChild": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "resource_id": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "TopologySingleResourceParent": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "resource_id": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "TrackedResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "etag": { + "default": "none", + "param_type": "keyword_only" + }, + "kind": { + "default": "none", + "param_type": "keyword_only" + }, + "location": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tags": { + "attr_type": "tags" + }, + "etag": { + "attr_type": "etag" + }, + "kind": { + "attr_type": "kind" + }, + "location": { + "attr_type": "location" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "TrackedResourceAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "default": null, + "param_type": "keyword_only" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tags": { + "attr_type": "tags" + }, + "location": { + "attr_type": "location" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "system_data": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "TwinUpdatesNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "Type": { + "type": "Enum", + "methods": {}, + "properties": { + "QUALYS": "QUALYS", + "TVM": "TVM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "UnauthorizedOperationsNotInAllowedRange": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_type": { + "attr_type": null + }, + "time_window_size": { + "attr_type": "time_window_size" + }, + "min_threshold": { + "attr_type": "min_threshold" + }, + "max_threshold": { + "attr_type": "max_threshold" + }, + "display_name": { + "attr_type": null + }, + "description": { + "attr_type": null + }, + "is_enabled": { + "attr_type": "is_enabled" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "UnmaskedIpLoggingStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "UpdateIotSecuritySolutionData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "default": "none", + "param_type": "keyword_only" + }, + "user_defined_resources": { + "default": "none", + "param_type": "keyword_only" + }, + "recommendations_configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "user_defined_resources": { + "attr_type": "user_defined_resources" + }, + "recommendations_configuration": { + "attr_type": "recommendations_configuration" + }, + "tags": { + "attr_type": "tags" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "UpdateSensitivitySettingsRequest": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitive_info_types_ids": { + "default": null, + "param_type": "keyword_only" + }, + "sensitivity_threshold_label_order": { + "default": "none", + "param_type": "keyword_only" + }, + "sensitivity_threshold_label_id": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "sensitive_info_types_ids": { + "attr_type": "sensitive_info_types_ids" + }, + "sensitivity_threshold_label_order": { + "attr_type": "sensitivity_threshold_label_order" + }, + "sensitivity_threshold_label_id": { + "attr_type": "sensitivity_threshold_label_id" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "UserDefinedResourcesProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "query": { + "default": null, + "param_type": "keyword_only" + }, + "query_subscriptions": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "query": { + "attr_type": "query" + }, + "query_subscriptions": { + "attr_type": "query_subscriptions" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "UserImpact": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "LOW": "LOW", + "MODERATE": "MODERATE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "VaRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": "none", + "param_type": "keyword_only" + }, + "severity": { + "default": "none", + "param_type": "keyword_only" + }, + "category": { + "default": "none", + "param_type": "keyword_only" + }, + "rule_type": { + "default": "none", + "param_type": "keyword_only" + }, + "title": { + "default": "none", + "param_type": "keyword_only" + }, + "description": { + "default": "none", + "param_type": "keyword_only" + }, + "rationale": { + "default": "none", + "param_type": "keyword_only" + }, + "query_check": { + "default": "none", + "param_type": "keyword_only" + }, + "benchmark_references": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_id": { + "attr_type": "rule_id" + }, + "severity": { + "attr_type": "severity" + }, + "category": { + "attr_type": "category" + }, + "rule_type": { + "attr_type": "rule_type" + }, + "title": { + "attr_type": "title" + }, + "description": { + "attr_type": "description" + }, + "rationale": { + "attr_type": "rationale" + }, + "query_check": { + "attr_type": "query_check" + }, + "benchmark_references": { + "attr_type": "benchmark_references" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "ValueType": { + "type": "Enum", + "methods": {}, + "properties": { + "IP_CIDR": "IP_CIDR", + "STRING": "STRING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "VendorReference": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "title": { + "attr_type": null + }, + "link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "VmScannersAws": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": { + "attr_type": "cloud_role_arn" + }, + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "VmScannersBase": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "VmScannersBaseConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scanning_mode": { + "default": "none", + "param_type": "keyword_only" + }, + "exclusion_tags": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "scanning_mode": { + "attr_type": "scanning_mode" + }, + "exclusion_tags": { + "attr_type": "exclusion_tags" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "VmScannersGcp": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "default": "none", + "param_type": "keyword_only" + }, + "configuration": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": { + "attr_type": "enabled" + }, + "configuration": { + "attr_type": "configuration" + }, + "additional_properties": { + "attr_type": null + } + } + }, + "WorkspaceSetting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_id": { + "default": "none", + "param_type": "keyword_only" + }, + "scope": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workspace_id": { + "attr_type": "workspace_id" + }, + "scope": { + "attr_type": "scope" + }, + "id": { + "attr_type": null + }, + "name": { + "attr_type": null + }, + "type": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + }, + "WorkspaceSettingList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "key_transformer": { + "default": "attribute_transformer", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "deserialize": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "enable_additional_properties_sending": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "from_dict": { + "parameters": { + "data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key_extractors": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "content_type": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "is_xml_model": { + "parameters": {}, + "is_async": false, + "overloads": [] + }, + "serialize": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "keep_readonly": { + "default": "bool", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": { + "attr_type": "value" + }, + "next_link": { + "attr_type": null + }, + "additional_properties": { + "attr_type": null + } + } + } + }, + "function_nodes": {} + }, + "azure.mgmt.security.aio": { + "class_nodes": { + "SecurityCenter": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "credential": { + "default": null, + "param_type": "positional_or_keyword" + }, + "subscription_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "base_url": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "cloud_setting": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "close": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": { + "client_side_validation": { + "attr_type": false + }, + "locations": { + "attr_type": "LocationsOperations" + }, + "tasks": { + "attr_type": "TasksOperations" + }, + "auto_provisioning_settings": { + "attr_type": "AutoProvisioningSettingsOperations" + }, + "compliances": { + "attr_type": "CompliancesOperations" + }, + "information_protection_policies": { + "attr_type": "InformationProtectionPoliciesOperations" + }, + "workspace_settings": { + "attr_type": "WorkspaceSettingsOperations" + }, + "alerts_suppression_rules": { + "attr_type": "AlertsSuppressionRulesOperations" + }, + "regulatory_compliance_standards": { + "attr_type": "RegulatoryComplianceStandardsOperations" + }, + "regulatory_compliance_controls": { + "attr_type": "RegulatoryComplianceControlsOperations" + }, + "regulatory_compliance_assessments": { + "attr_type": "RegulatoryComplianceAssessmentsOperations" + }, + "sub_assessments": { + "attr_type": "SubAssessmentsOperations" + }, + "mde_onboardings": { + "attr_type": "MdeOnboardingsOperations" + }, + "governance_assignments": { + "attr_type": "GovernanceAssignmentsOperations" + }, + "governance_rules": { + "attr_type": "GovernanceRulesOperations" + }, + "applications": { + "attr_type": "ApplicationsOperations" + }, + "application": { + "attr_type": "ApplicationOperations" + }, + "security_connector_applications": { + "attr_type": "SecurityConnectorApplicationsOperations" + }, + "security_connector_application": { + "attr_type": "SecurityConnectorApplicationOperations" + }, + "security_operators": { + "attr_type": "SecurityOperatorsOperations" + }, + "sql_vulnerability_assessment_baseline_rules": { + "attr_type": "SqlVulnerabilityAssessmentBaselineRulesOperations" + }, + "sql_vulnerability_assessment_scans": { + "attr_type": "SqlVulnerabilityAssessmentScansOperations" + }, + "sql_vulnerability_assessment_scan_results": { + "attr_type": "SqlVulnerabilityAssessmentScanResultsOperations" + }, + "sql_vulnerability_assessment_settings": { + "attr_type": "SqlVulnerabilityAssessmentSettingsOperations" + }, + "sensitivity_settings": { + "attr_type": "SensitivitySettingsOperations" + }, + "health_reports": { + "attr_type": "HealthReportsOperations" + }, + "automations": { + "attr_type": "AutomationsOperations" + }, + "security_connectors": { + "attr_type": "SecurityConnectorsOperations" + }, + "azure_dev_ops_orgs": { + "attr_type": "AzureDevOpsOrgsOperations" + }, + "azure_dev_ops_projects": { + "attr_type": "AzureDevOpsProjectsOperations" + }, + "azure_dev_ops_repos": { + "attr_type": "AzureDevOpsReposOperations" + }, + "dev_ops_configurations": { + "attr_type": "DevOpsConfigurationsOperations" + }, + "git_hub_owners": { + "attr_type": "GitHubOwnersOperations" + }, + "git_hub_repos": { + "attr_type": "GitHubReposOperations" + }, + "git_hub_issues": { + "attr_type": "GitHubIssuesOperations" + }, + "git_lab_groups": { + "attr_type": "GitLabGroupsOperations" + }, + "git_lab_subgroups": { + "attr_type": "GitLabSubgroupsOperations" + }, + "git_lab_projects": { + "attr_type": "GitLabProjectsOperations" + }, + "dev_ops_operation_results": { + "attr_type": "DevOpsOperationResultsOperations" + }, + "operations": { + "attr_type": "Operations" + }, + "operation_results": { + "attr_type": "OperationResultsOperations" + }, + "operation_statuses": { + "attr_type": "OperationStatusesOperations" + }, + "assessments_metadata": { + "attr_type": "AssessmentsMetadataOperations" + }, + "assessments": { + "attr_type": "AssessmentsOperations" + }, + "compliance_results": { + "attr_type": "ComplianceResultsOperations" + }, + "advanced_threat_protection": { + "attr_type": "AdvancedThreatProtectionOperations" + }, + "device_security_groups": { + "attr_type": "DeviceSecurityGroupsOperations" + }, + "iot_security_solution_analytics": { + "attr_type": "IotSecuritySolutionAnalyticsOperations" + }, + "iot_security_solutions_analytics_aggregated_alert": { + "attr_type": "IotSecuritySolutionsAnalyticsAggregatedAlertOperations" + }, + "iot_security_solutions_analytics_recommendation": { + "attr_type": "IotSecuritySolutionsAnalyticsRecommendationOperations" + }, + "iot_security_solution": { + "attr_type": "IotSecuritySolutionOperations" + }, + "allowed_connections": { + "attr_type": "AllowedConnectionsOperations" + }, + "discovered_security_solutions": { + "attr_type": "DiscoveredSecuritySolutionsOperations" + }, + "external_security_solutions": { + "attr_type": "ExternalSecuritySolutionsOperations" + }, + "jit_network_access_policies": { + "attr_type": "JitNetworkAccessPoliciesOperations" + }, + "security_solutions": { + "attr_type": "SecuritySolutionsOperations" + }, + "security_solutions_reference_data": { + "attr_type": "SecuritySolutionsReferenceDataOperations" + }, + "server_vulnerability_assessment": { + "attr_type": "ServerVulnerabilityAssessmentOperations" + }, + "topology": { + "attr_type": "TopologyOperations" + }, + "alerts": { + "attr_type": "AlertsOperations" + }, + "settings": { + "attr_type": "SettingsOperations" + }, + "server_vulnerability_assessments_settings": { + "attr_type": "ServerVulnerabilityAssessmentsSettingsOperations" + }, + "api_collections": { + "attr_type": "APICollectionsOperations" + }, + "pricings": { + "attr_type": "PricingsOperations" + }, + "security_standards": { + "attr_type": "SecurityStandardsOperations" + }, + "standard_assignments": { + "attr_type": "StandardAssignmentsOperations" + }, + "custom_recommendations": { + "attr_type": "CustomRecommendationsOperations" + }, + "standards": { + "attr_type": "StandardsOperations" + }, + "assignments": { + "attr_type": "AssignmentsOperations" + }, + "defender_for_storage": { + "attr_type": "DefenderForStorageOperations" + }, + "private_links": { + "attr_type": "PrivateLinksOperations" + }, + "private_link_resources": { + "attr_type": "PrivateLinkResourcesOperations" + }, + "private_endpoint_connections": { + "attr_type": "PrivateEndpointConnectionsOperations" + }, + "secure_scores": { + "attr_type": "SecureScoresOperations" + }, + "secure_score_controls": { + "attr_type": "SecureScoreControlsOperations" + }, + "secure_score_control_definitions": { + "attr_type": "SecureScoreControlDefinitionsOperations" + } + } + } + }, + "function_nodes": {} + }, + "azure.mgmt.security.aio.operations": { + "class_nodes": { + "APICollectionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_onboard_azure_api_management_api": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "api_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get_by_azure_api_management_service": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "api_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list_by_azure_api_management_service": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "offboard_azure_api_management_api": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "api_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "AdvancedThreatProtectionOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "type": "AdvancedThreatProtectionSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "AlertsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_simulate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "type": "AlertSimulatorRequestBody", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get_resource_group_level": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get_subscription_level": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_resource_group_level_by_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_subscription_level_by_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_state_to_activate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_resource_group_level_state_to_dismiss": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_resource_group_level_state_to_in_progress": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_resource_group_level_state_to_resolve": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_subscription_level_state_to_activate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_subscription_level_state_to_dismiss": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_subscription_level_state_to_in_progress": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_subscription_level_state_to_resolve": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "AlertsSuppressionRulesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_type": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "type": "AlertsSuppressionRule", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "AllowedConnectionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "connection_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ApplicationOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "Application", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "ApplicationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AssessmentsMetadataOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_in_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "type": "SecurityAssessmentMetadataResponse", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete_in_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get_in_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AssessmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "type": "SecurityAssessment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expand": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AssignmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "type": "Assignment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AutoProvisioningSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "AutoProvisioningSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AutomationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "Automation", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "AutomationUpdateModel", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "validate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "Automation", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "AzureDevOpsOrgsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "AzureDevOpsOrg", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "AzureDevOpsOrg", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_available": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "AzureDevOpsProjectsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "AzureDevOpsProject", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "AzureDevOpsProject", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AzureDevOpsReposOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "AzureDevOpsRepository", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "AzureDevOpsRepository", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ComplianceResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "compliance_result_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "CompliancesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "compliance_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "CustomRecommendationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "type": "CustomRecommendation", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DefenderForStorageOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "cancel_malware_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingNameAutoGenerated]", + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "type": "DefenderForStorageSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingNameAutoGenerated]", + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get_malware_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "start_malware_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "DevOpsConfigurationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "DevOpsConfiguration", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "DevOpsConfiguration", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DevOpsOperationResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_result_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "DeviceSecurityGroupsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "type": "DeviceSecurityGroup", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DiscoveredSecuritySolutionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "discovered_security_solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ExternalSecuritySolutionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "external_security_solutions_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitHubIssuesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "type": "Optional[IssueCreationRequest]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "GitHubOwnersOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_available": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "GitHubReposOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitLabGroupsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_available": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "GitLabProjectsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitLabSubgroupsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "GovernanceAssignmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "type": "GovernanceAssignment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GovernanceRulesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "begin_execute": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "type": "Optional[ExecuteGovernanceRuleParams]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "type": "GovernanceRule", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "operation_results": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "HealthReportsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "health_report_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "InformationProtectionPoliciesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "type": "Union[str, InformationProtectionPolicyName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "type": "InformationProtectionPolicy", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "type": "Union[str, InformationProtectionPolicyName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "IotSecuritySolutionAnalyticsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "IotSecuritySolutionOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "type": "IoTSecuritySolutionModel", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "type": "UpdateIotSecuritySolutionData", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "IotSecuritySolutionsAnalyticsAggregatedAlertOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "dismiss": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "aggregated_alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "aggregated_alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "top": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "IotSecuritySolutionsAnalyticsRecommendationOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "aggregated_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "top": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "JitNetworkAccessPoliciesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "JitNetworkAccessPolicy", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "initiate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "JitNetworkAccessPolicyInitiateRequest", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group_and_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "LocationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "MdeOnboardingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "OperationResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "OperationStatusesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "Operations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PricingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "type": "Pricing", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "PrivateEndpointConnectionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "type": "PrivateLinkParameters", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "type": "PrivateEndpointConnection", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "type": "PrivateLinkParameters", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PrivateLinkResourcesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PrivateLinksOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "type": "PrivateLinkParameters", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "PrivateLinkResource", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "type": "PrivateLinkParameters", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "head": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "type": "PrivateLinkParameters", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "PrivateLinkUpdate", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_parameters": { + "type": "PrivateLinkParameters", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "RegulatoryComplianceAssessmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_control_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_control_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "RegulatoryComplianceControlsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_control_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "RegulatoryComplianceStandardsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecureScoreControlDefinitionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecureScoreControlsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expand": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_secure_score": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "secure_score_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expand": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecureScoresOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "secure_score_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityConnectorApplicationOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "Application", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityConnectorApplicationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityConnectorsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "SecurityConnector", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "SecurityConnector", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "SecurityOperatorsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_operator_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_operator_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_operator_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "SecuritySolutionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecuritySolutionsReferenceDataOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityStandardsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "SecurityStandard", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SensitivitySettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "type": "UpdateSensitivitySettingsRequest", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "ServerVulnerabilityAssessmentOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list_by_extended_resource": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "ServerVulnerabilityAssessmentsSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "type": "Union[str, ServerVulnerabilityAssessmentsSettingKindName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "type": "ServerVulnerabilityAssessmentsSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "type": "Union[str, ServerVulnerabilityAssessmentsSettingKindName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "Setting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentBaselineRulesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "add": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "body": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[RulesResultsInput]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "body": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[RuleResultsInput]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentScanResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_result_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentScansOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_initiate_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get_scan_operation_result": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[SqlVulnerabilityAssessmentSettings]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "StandardAssignmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "type": "StandardAssignment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "StandardsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "Standard", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SubAssessmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "sub_assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_all": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "TasksOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_resource_group_level_task": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get_subscription_level_task": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_task_state": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_update_action_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_subscription_level_task_state": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_update_action_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "TopologyOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "topology_resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "WorkspaceSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "WorkspaceSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "WorkspaceSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + } + }, + "function_nodes": {} + } +} \ No newline at end of file diff --git a/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/get_advanced_threat_protection_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/get_advanced_threat_protection_settings_example.py index 003c89c17eb6..7fd43be6f118 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/get_advanced_threat_protection_settings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/get_advanced_threat_protection_settings_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/GetAdvancedThreatProtectionSettings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-01-01/examples/AdvancedThreatProtection/GetAdvancedThreatProtectionSettings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/put_advanced_threat_protection_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/put_advanced_threat_protection_settings_example.py index 93c392145486..eda8f7697de2 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/put_advanced_threat_protection_settings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/put_advanced_threat_protection_settings_example.py @@ -43,6 +43,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/PutAdvancedThreatProtectionSettings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-01-01/examples/AdvancedThreatProtection/PutAdvancedThreatProtectionSettings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_resource_group_location_example.py index 97de2b684b75..970c520c43a0 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_resource_group_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_resource_group_location_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertResourceGroupLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/GetAlertResourceGroupLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_subscription_location_example.py index 68056996dbf6..f78ad8b9a594 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_subscription_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_subscription_location_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertSubscriptionLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/GetAlertSubscriptionLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_example.py index db0b407b1235..05cadda8b8bc 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroup_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroup_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_location_example.py index 28eab71cfb87..b90236a5756a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_location_example.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroupLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroupLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscription_example.py index f6c7e95188c0..d3d288550e85 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscriptions_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscriptions_location_example.py index 9de67872b208..c8bee0d656bc 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscriptions_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscriptions_location_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscriptionsLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscriptionsLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/simulate_alerts_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/simulate_alerts_example.py index 275aff37e64b..bc439a2efabc 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/simulate_alerts_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/simulate_alerts_example.py @@ -52,6 +52,6 @@ def main(): ).result() -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/SimulateAlerts_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/SimulateAlerts_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_activate_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_activate_example.py index 8a6ce18b3b03..ac3609a29d5e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_activate_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_activate_example.py @@ -38,6 +38,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_activate_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_activate_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_dismiss_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_dismiss_example.py index 8dbccd8754c8..c21c68047c29 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_dismiss_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_dismiss_example.py @@ -38,6 +38,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_dismiss_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_dismiss_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_in_progress_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_in_progress_example.py index 475fd53cd86f..c72f4a7eb2ad 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_in_progress_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_in_progress_example.py @@ -38,6 +38,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_inProgress_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_inProgress_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_resolve_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_resolve_example.py index b16d2d84712e..bee12ec6ee40 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_resolve_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_resolve_example.py @@ -38,6 +38,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_resolve_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_resolve_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_activate_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_activate_example.py index e8040896ca41..b00d7a794b3d 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_activate_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_activate_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_activate_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_activate_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_dismiss_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_dismiss_example.py index 8caeee5a6b1c..68d9ee3c4a49 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_dismiss_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_dismiss_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_dismiss_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_dismiss_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_in_progress_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_in_progress_example.py index c6e73773d81b..23df0302abfb 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_in_progress_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_in_progress_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_inProgress_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_inProgress_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_resolve_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_resolve_example.py index e0d8baf8f84c..81eec71f27b3 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_resolve_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_resolve_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_resolve_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_resolve_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/delete_alerts_suppression_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/delete_alerts_suppression_rule_example.py index 2bb6a5ffd83d..1775041c26d9 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/delete_alerts_suppression_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/delete_alerts_suppression_rule_example.py @@ -36,6 +36,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/DeleteAlertsSuppressionRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/DeleteAlertsSuppressionRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rule_example.py index 3e024983b194..e7e956543112 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rule_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_example.py index ddae06063ab2..6669dfe9a15c 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRules_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRules_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_with_alert_type_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_with_alert_type_example.py index e9c69e61297c..3906247490c9 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_with_alert_type_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_with_alert_type_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRulesWithAlertType_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRulesWithAlertType_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/put_alerts_suppression_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/put_alerts_suppression_rule_example.py index 1d5468522e57..4cba36f9198a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/put_alerts_suppression_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/put_alerts_suppression_rule_example.py @@ -52,6 +52,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/PutAlertsSuppressionRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/PutAlertsSuppressionRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_example.py b/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_example.py index bd394da631c0..a9a3d07c94d3 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_example.py index 9d4f5d680080..70094895efd1 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_location_example.py index 112b9c144687..a176165f4114 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_location_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_get_by_azure_api_management_service_example.py b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_get_by_azure_api_management_service_example.py index 5360a927abed..3426c94f9225 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_get_by_azure_api_management_service_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_get_by_azure_api_management_service_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_GetByAzureApiManagementService_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-11-15/examples/ApiCollections/APICollections_GetByAzureApiManagementService_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_azure_api_management_service_example.py b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_azure_api_management_service_example.py index bdc268084538..507c85372d95 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_azure_api_management_service_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_azure_api_management_service_example.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByAzureApiManagementService_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByAzureApiManagementService_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_resource_group_example.py index ab021bce0b8c..7afff77930f7 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_resource_group_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_resource_group_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByResourceGroup_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByResourceGroup_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_subscription_example.py index 0c99c1a91486..707dd9280adb 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListBySubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListBySubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_offboard_azure_api_management_api_example.py b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_offboard_azure_api_management_api_example.py index c14168b33da0..5b4ac0e38d4e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_offboard_azure_api_management_api_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_offboard_azure_api_management_api_example.py @@ -38,6 +38,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_OffboardAzureApiManagementApi_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-11-15/examples/ApiCollections/APICollections_OffboardAzureApiManagementApi_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_onboard_azure_api_management_api_example.py b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_onboard_azure_api_management_api_example.py index bbc436a0f937..fd85a0dbd1fc 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_onboard_azure_api_management_api_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_onboard_azure_api_management_api_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_OnboardAzureApiManagementApi_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-11-15/examples/ApiCollections/APICollections_OnboardAzureApiManagementApi_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/delete_application_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/delete_application_example.py index 0e697d283f67..4930db331d6a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/delete_application_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/applications/delete_application_example.py @@ -36,6 +36,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/DeleteApplication_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/DeleteApplication_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/delete_security_connector_application_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/delete_security_connector_application_example.py index d82410f67824..dabc7d76f505 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/delete_security_connector_application_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/applications/delete_security_connector_application_example.py @@ -38,6 +38,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/DeleteSecurityConnectorApplication_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/DeleteSecurityConnectorApplication_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/get_application_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/get_application_example.py index 6d2e0a3b17f6..dc96d90d8d70 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/get_application_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/applications/get_application_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/GetApplication_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/GetApplication_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/get_security_connector_application_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/get_security_connector_application_example.py index 6d6ca3c2d717..641f3737a77a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/get_security_connector_application_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/applications/get_security_connector_application_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/GetSecurityConnectorApplication_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/GetSecurityConnectorApplication_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_security_connector_applications_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_security_connector_applications_example.py index c66c126c08e1..2cc5d5242842 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_security_connector_applications_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_security_connector_applications_example.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/ListBySecurityConnectorApplications_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/ListBySecurityConnectorApplications_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_subscription_applications_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_subscription_applications_example.py index 8b6a016caca3..3cc9f3dcfda4 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_subscription_applications_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_subscription_applications_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/ListBySubscriptionApplications_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/ListBySubscriptionApplications_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/put_application_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/put_application_example.py index 35b03a10ff41..74dd0c408a1b 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/put_application_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/applications/put_application_example.py @@ -45,6 +45,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/PutApplication_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/PutApplication_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/put_security_connector_application_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/put_security_connector_application_example.py index 3e09c8e9bffe..fe465e542e50 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/put_security_connector_application_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/applications/put_security_connector_application_example.py @@ -47,6 +47,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/PutSecurityConnectorApplication_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/PutSecurityConnectorApplication_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments/delete_assessment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments/delete_assessment_example.py index f0ddda8305cf..2ea1b2773d29 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments/delete_assessment_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/assessments/delete_assessment_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-05-04-preview/examples/Assessments/DeleteAssessment_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/Assessments/DeleteAssessment_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_example.py index d2498c7ab82e..02ef2cb5d4dc 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-05-04-preview/examples/Assessments/GetAssessment_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/Assessments/GetAssessment_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_with_expand_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_with_expand_example.py index 3d5e83a46fc9..68a79cea60cf 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_with_expand_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_with_expand_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-05-04-preview/examples/Assessments/GetAssessmentWithExpand_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/Assessments/GetAssessmentWithExpand_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments/list_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments/list_assessments_example.py index 255b82f3ec06..48aa8262321d 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments/list_assessments_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/assessments/list_assessments_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-05-04-preview/examples/Assessments/ListAssessments_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/Assessments/ListAssessments_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments/put_assessment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments/put_assessment_example.py index d32e8415423a..f34fb10d2fe9 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments/put_assessment_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/assessments/put_assessment_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-05-04-preview/examples/Assessments/PutAssessment_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/Assessments/PutAssessment_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/create_assessments_metadata_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/create_assessments_metadata_subscription_example.py index e8f7eaa566cc..535089a987dd 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/create_assessments_metadata_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/create_assessments_metadata_subscription_example.py @@ -48,6 +48,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-05-04-preview/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/delete_assessments_metadata_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/delete_assessments_metadata_subscription_example.py index 01729b228a34..34570f1a9c45 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/delete_assessments_metadata_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/delete_assessments_metadata_subscription_example.py @@ -36,6 +36,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-05-04-preview/examples/AssessmentsMetadata/DeleteAssessmentsMetadata_subscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/AssessmentsMetadata/DeleteAssessmentsMetadata_subscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_example.py index 6a035ed4a1dc..0a09ca8b4b2c 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-05-04-preview/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_subscription_example.py index e600de51039a..2778e8f43ec4 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_subscription_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-05-04-preview/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_example.py index ccb85cac38df..18b9f205f9f2 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-05-04-preview/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_subscription_example.py index 13611b354b16..0d0ce2915f10 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-05-04-preview/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assignments/delete_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assignments/delete_assignment_example.py new file mode 100644 index 000000000000..fe89323b93a2 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/assignments/delete_assignment_example.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python delete_assignment_example.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + client.assignments.delete( + resource_group_name="myResourceGroup", + assignment_id="8bb8be0a-6010-4789-812f-e4d661c4ed0e", + ) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Assignments/DeleteAssignment_example.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assignments/get_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assignments/get_assignment_example.py new file mode 100644 index 000000000000..9fd145287589 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/assignments/get_assignment_example.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python get_assignment_example.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + response = client.assignments.get( + resource_group_name="myResourceGroup", + assignment_id="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Assignments/GetAssignment_example.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assignments/list_assignments_example.py b/sdk/security/azure-mgmt-security/generated_samples/assignments/list_assignments_example.py new file mode 100644 index 000000000000..da27f60ec7cd --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/assignments/list_assignments_example.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python list_assignments_example.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + response = client.assignments.list( + resource_group_name="myResourceGroup", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Assignments/ListAssignments_example.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assignments/list_by_subscription_assignments_example.py b/sdk/security/azure-mgmt-security/generated_samples/assignments/list_by_subscription_assignments_example.py new file mode 100644 index 000000000000..52eaa8775d61 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/assignments/list_by_subscription_assignments_example.py @@ -0,0 +1,41 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python list_by_subscription_assignments_example.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + response = client.assignments.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Assignments/ListBySubscriptionAssignments_example.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/connectors/create_update_aws_assume_role_connector_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/assignments/put_assignment_example.py similarity index 58% rename from sdk/security/azure-mgmt-security/generated_samples/connectors/create_update_aws_assume_role_connector_subscription_example.py rename to sdk/security/azure-mgmt-security/generated_samples/assignments/put_assignment_example.py index be3ade7c0b49..1137a988db82 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/connectors/create_update_aws_assume_role_connector_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/assignments/put_assignment_example.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python create_update_aws_assume_role_connector_subscription_example.py + python put_assignment_example.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -31,28 +31,28 @@ def main(): subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", ) - response = client.connectors.create_or_update( - connector_name="aws_dev2", - connector_setting={ + response = client.assignments.create_or_update( + resource_group_name="myResourceGroup", + assignment_id="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + assignment={ "properties": { - "authenticationDetails": { - "authenticationType": "awsAssumeRole", - "awsAssumeRoleArn": "arn:aws:iam::81231569658:role/AscConnector", - "awsExternalId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", - }, - "hybridComputeSettings": { - "autoProvision": "On", - "proxyServer": {"ip": "167.220.197.140", "port": "34"}, - "region": "West US 2", - "resourceGroupName": "AwsConnectorRG", - "servicePrincipal": {"applicationId": "ad9bcd79-be9c-45ab-abd8-80ca1654a7d1", "secret": ""}, + "additionalData": {"exemptionCategory": "waiver"}, + "assignedComponent": {"key": "1195afff-c881-495e-9bc5-1486211ae03f"}, + "assignedStandard": { + "id": "/providers/Microsoft.Security/Standards/1f3afdf9-d0c9-4c3d-847f-89da613e70a8" }, + "description": "Set of policies monitored by Azure Security Center for cross cloud", + "displayName": "ASC Default", + "effect": "Exempt", + "expiresOn": "2022-05-01T19:50:47.083633Z", + "metadata": {"ticketId": 12345}, + "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/ResourceGroup/rg", } }, ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateAwsAssumeRoleConnectorSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Assignments/PutAssignment_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assignments/put_default_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assignments/put_default_assignment_example.py new file mode 100644 index 000000000000..c435c2defa41 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/assignments/put_default_assignment_example.py @@ -0,0 +1,54 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python put_default_assignment_example.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + response = client.assignments.create_or_update( + resource_group_name="myResourceGroup", + assignment_id="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + assignment={ + "properties": { + "assignedStandard": { + "id": "/providers/Microsoft.Security/Standards/1f3afdf9-d0c9-4c3d-847f-89da613e70a8" + }, + "description": "Set of policies monitored by Azure Security Center for cross cloud", + "displayName": "ASC Default", + "effect": "audit", + "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/ResourceGroup/rg", + } + }, + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Assignments/PutDefaultAssignment_example.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/create_auto_provisioning_settings_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/create_auto_provisioning_settings_subscription_example.py index eb02f473421a..fc9f3495b061 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/create_auto_provisioning_settings_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/create_auto_provisioning_settings_subscription_example.py @@ -43,6 +43,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/CreateAutoProvisioningSettingsSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/CreateAutoProvisioningSettingsSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_setting_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_setting_subscription_example.py index e7b74fd40ebf..818a3f4628a0 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_setting_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_setting_subscription_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_settings_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_settings_subscription_example.py index 819c5145af97..fa6cc3ebd200 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_settings_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_settings_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingsSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingsSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/delete_automation_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/delete_automation_example.py index 99afea229368..cf2b288bce45 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/delete_automation_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/automations/delete_automation_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/DeleteAutomation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/DeleteAutomation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/get_automation_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/get_automation_resource_group_example.py index e6d8b02a5fa9..bee11fb7a07e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/get_automation_resource_group_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/automations/get_automation_resource_group_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationResourceGroup_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/GetAutomationResourceGroup_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_resource_group_example.py index b09581e9b1f7..292ff916c7c2 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_resource_group_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_resource_group_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsResourceGroup_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsResourceGroup_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_subscription_example.py index 3a7afaac41a5..8f8aa3b6310e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_create_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/patch_automation_example.py similarity index 52% rename from sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_create_example.py rename to sdk/security/azure-mgmt-security/generated_samples/automations/patch_automation_example.py index 3e8bc687bd1c..410b299ac52a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_create_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/automations/patch_automation_example.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python custom_assessment_automation_create_example.py + python patch_automation_example.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -28,26 +28,40 @@ def main(): client = SecurityCenter( credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", + subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", ) - response = client.custom_assessment_automations.create( - resource_group_name="TestResourceGroup", - custom_assessment_automation_name="MyCustomAssessmentAutomation", - custom_assessment_automation_body={ - "properties": { - "compressedQuery": "DQAKAEkAYQBtAF8ARwByAG8AdQBwAA0ACgB8ACAAZQB4AHQAZQBuAGQAIABIAGUAYQBsAHQAaABTAHQAYQB0AHUAcwAgAD0AIABpAGYAZgAoAHQAbwBzAHQAcgBpAG4AZwAoAFIAZQBjAG8AcgBkAC4AVQBzAGUAcgBOAGEAbQBlACkAIABjAG8AbgB0AGEAaQBuAHMAIAAnAHUAcwBlAHIAJwAsACAAJwBVAE4ASABFAEEATABUAEgAWQAnACwAIAAnAEgARQBBAEwAVABIAFkAJwApAA0ACgA=", - "description": "Data should be encrypted", - "displayName": "Password Policy", - "remediationDescription": "Encrypt store by...", - "severity": "Medium", - "supportedCloud": "AWS", - } + response = client.automations.update( + resource_group_name="exampleResourceGroup", + automation_name="exampleAutomation", + automation={ + "actions": [automation_action], + "description": "str", + "isEnabled": bool, + "scopes": [{"description": "str", "scopePath": "str"}], + "sources": [ + { + "eventSource": "str", + "ruleSets": [ + { + "rules": [ + { + "expectedValue": "str", + "operator": "str", + "propertyJPath": "str", + "propertyType": "str", + } + ] + } + ], + } + ], + "tags": {"str": "str"}, }, ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationCreate_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/PatchAutomation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_all_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_all_assessments_example.py new file mode 100644 index 000000000000..74ee6a8230b2 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_all_assessments_example.py @@ -0,0 +1,73 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python put_automation_all_assessments_example.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", + ) + + response = client.automations.create_or_update( + resource_group_name="exampleResourceGroup", + automation_name="exampleAutomation", + automation={ + "actions": [automation_action], + "description": "str", + "etag": "str", + "id": "str", + "isEnabled": bool, + "kind": "str", + "location": "str", + "name": "str", + "scopes": [{"description": "str", "scopePath": "str"}], + "sources": [ + { + "eventSource": "str", + "ruleSets": [ + { + "rules": [ + { + "expectedValue": "str", + "operator": "str", + "propertyJPath": "str", + "propertyType": "str", + } + ] + } + ], + } + ], + "tags": {"str": "str"}, + "type": "str", + }, + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/PutAutomationAllAssessments_example.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_high_severity_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_high_severity_assessments_example.py new file mode 100644 index 000000000000..f5c216c23160 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_high_severity_assessments_example.py @@ -0,0 +1,73 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python put_automation_high_severity_assessments_example.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", + ) + + response = client.automations.create_or_update( + resource_group_name="exampleResourceGroup", + automation_name="exampleAutomation", + automation={ + "actions": [automation_action], + "description": "str", + "etag": "str", + "id": "str", + "isEnabled": bool, + "kind": "str", + "location": "str", + "name": "str", + "scopes": [{"description": "str", "scopePath": "str"}], + "sources": [ + { + "eventSource": "str", + "ruleSets": [ + { + "rules": [ + { + "expectedValue": "str", + "operator": "str", + "propertyJPath": "str", + "propertyType": "str", + } + ] + } + ], + } + ], + "tags": {"str": "str"}, + "type": "str", + }, + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/PutAutomationHighSeverityAssessments_example.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/put_disable_automation_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/put_disable_automation_example.py new file mode 100644 index 000000000000..ce8f79e058a0 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/automations/put_disable_automation_example.py @@ -0,0 +1,73 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python put_disable_automation_example.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", + ) + + response = client.automations.create_or_update( + resource_group_name="exampleResourceGroup", + automation_name="exampleAutomation", + automation={ + "actions": [automation_action], + "description": "str", + "etag": "str", + "id": "str", + "isEnabled": bool, + "kind": "str", + "location": "str", + "name": "str", + "scopes": [{"description": "str", "scopePath": "str"}], + "sources": [ + { + "eventSource": "str", + "ruleSets": [ + { + "rules": [ + { + "expectedValue": "str", + "operator": "str", + "propertyJPath": "str", + "propertyType": "str", + } + ] + } + ], + } + ], + "tags": {"str": "str"}, + "type": "str", + }, + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/PutDisableAutomation_example.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/validate_automation_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/validate_automation_example.py new file mode 100644 index 000000000000..e43dd5ea85fe --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/automations/validate_automation_example.py @@ -0,0 +1,73 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python validate_automation_example.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", + ) + + response = client.automations.validate( + resource_group_name="exampleResourceGroup", + automation_name="exampleAutomation", + automation={ + "actions": [automation_action], + "description": "str", + "etag": "str", + "id": "str", + "isEnabled": bool, + "kind": "str", + "location": "str", + "name": "str", + "scopes": [{"description": "str", "scopePath": "str"}], + "sources": [ + { + "eventSource": "str", + "ruleSets": [ + { + "rules": [ + { + "expectedValue": "str", + "operator": "str", + "propertyJPath": "str", + "propertyType": "str", + } + ] + } + ], + } + ], + "tags": {"str": "str"}, + "type": "str", + }, + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/ValidateAutomation_example.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/compliance_results/get_compliance_results_example.py b/sdk/security/azure-mgmt-security/generated_samples/compliance_results/get_compliance_results_example.py index 8f250bc08bea..52e14980c17e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/compliance_results/get_compliance_results_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/compliance_results/get_compliance_results_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2017-08-01/examples/ComplianceResults/GetComplianceResults_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2017-08-01/examples/ComplianceResults/GetComplianceResults_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/compliance_results/list_compliance_results_example.py b/sdk/security/azure-mgmt-security/generated_samples/compliance_results/list_compliance_results_example.py index 65ec5fbf567e..1f009c90a98a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/compliance_results/list_compliance_results_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/compliance_results/list_compliance_results_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2017-08-01/examples/ComplianceResults/ListComplianceResults_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2017-08-01/examples/ComplianceResults/ListComplianceResults_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliance_example.py b/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliance_example.py index 06c6d565e1fd..29563f7b0e26 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliance_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliance_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/Compliances/GetCompliance_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/Compliances/GetCompliance_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliances_example.py b/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliances_example.py index 1b4916a41c9d..56aca65d2ef3 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliances_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliances_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/Compliances/GetCompliances_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/Compliances/GetCompliances_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/connectors/create_update_gcp_credentials_connector_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/connectors/create_update_gcp_credentials_connector_subscription_example.py deleted file mode 100644 index 6656127c5f0d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/connectors/create_update_gcp_credentials_connector_subscription_example.py +++ /dev/null @@ -1,61 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_update_gcp_credentials_connector_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.connectors.create_or_update( - connector_name="gcp_dev", - connector_setting={ - "properties": { - "authenticationDetails": { - "authProviderX509CertUrl": "https://www.googleapis.com/oauth2/v1/certs", - "authUri": "https://accounts.google.com/o/oauth2/auth", - "authenticationType": "gcpCredentials", - "clientEmail": "asc-135@asc-project-1234.iam.gserviceaccount.com", - "clientId": "105889053725632919854", - "clientX509CertUrl": "https://www.googleapis.com/robot/v1/metadata/x509/asc-135%40asc-project-1234.iam.gserviceaccount.com", - "organizationId": "AscDemoOrg", - "privateKey": "******", - "privateKeyId": "6efg587hra2568as34d22326b044cc20dc2af", - "projectId": "asc-project-1234", - "tokenUri": "https://oauth2.googleapis.com/token", - "type": "service_account", - }, - "hybridComputeSettings": {"autoProvision": "Off"}, - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateGcpCredentialsConnectorSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_get_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_get_example.py deleted file mode 100644 index 286f27602f8a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_get_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python custom_entity_store_assignment_get_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", - ) - - response = client.custom_entity_store_assignments.get( - resource_group_name="TestResourceGroup", - custom_entity_store_assignment_name="33e7cc6e-a139-4723-a0e5-76993aee0771", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentGet_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_list_by_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_list_by_subscription_example.py deleted file mode 100644 index 485dda12c544..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_list_by_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python custom_entity_store_assignment_list_by_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", - ) - - response = client.custom_entity_store_assignments.list_by_subscription() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentListBySubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_management_group_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_management_group_custom_recommendation_example.py index 820fe253658b..fa55140e4363 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_management_group_custom_recommendation_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_management_group_custom_recommendation_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/CustomRecommendations/DeleteByManagementGroupCustomRecommendation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/DeleteByManagementGroupCustomRecommendation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_security_connector_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_security_connector_custom_recommendation_example.py index 741b8e6c80b3..cd076397e9e4 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_security_connector_custom_recommendation_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_security_connector_custom_recommendation_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/CustomRecommendations/DeleteBySecurityConnectorCustomRecommendation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/DeleteBySecurityConnectorCustomRecommendation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_subscription_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_subscription_custom_recommendation_example.py index 3b457515d42e..94c6d5ab94e6 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_subscription_custom_recommendation_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_subscription_custom_recommendation_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/CustomRecommendations/DeleteBySubscriptionCustomRecommendation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/DeleteBySubscriptionCustomRecommendation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_management_group_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_management_group_custom_recommendation_example.py index ca11d01a7b1c..750486cf7d13 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_management_group_custom_recommendation_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_management_group_custom_recommendation_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/CustomRecommendations/GetByManagementGroupCustomRecommendation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/GetByManagementGroupCustomRecommendation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_security_connector_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_security_connector_custom_recommendation_example.py index 4cbcf88c26d1..82466889bd8f 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_security_connector_custom_recommendation_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_security_connector_custom_recommendation_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/CustomRecommendations/GetBySecurityConnectorCustomRecommendation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/GetBySecurityConnectorCustomRecommendation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_subscription_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_subscription_custom_recommendation_example.py index afc61dfc4fa6..2ac08d18b839 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_subscription_custom_recommendation_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_subscription_custom_recommendation_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/CustomRecommendations/GetBySubscriptionCustomRecommendation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/GetBySubscriptionCustomRecommendation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_management_group_custom_recommendations_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_management_group_custom_recommendations_example.py index 702be79f89e2..4ef4388050e9 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_management_group_custom_recommendations_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_management_group_custom_recommendations_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/CustomRecommendations/ListByManagementGroupCustomRecommendations_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/ListByManagementGroupCustomRecommendations_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_security_connector_custom_recommendations_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_security_connector_custom_recommendations_example.py index a913429e2852..144e29db552b 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_security_connector_custom_recommendations_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_security_connector_custom_recommendations_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/CustomRecommendations/ListBySecurityConnectorCustomRecommendations_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/ListBySecurityConnectorCustomRecommendations_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_subscription_custom_recommendations_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_subscription_custom_recommendations_example.py index 524da2f8b40c..d74cb2f77dca 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_subscription_custom_recommendations_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_subscription_custom_recommendations_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/CustomRecommendations/ListBySubscriptionCustomRecommendations_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/ListBySubscriptionCustomRecommendations_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_management_group_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_management_group_custom_recommendation_example.py index 224619249085..befaa93ae240 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_management_group_custom_recommendation_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_management_group_custom_recommendation_example.py @@ -49,6 +49,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/CustomRecommendations/PutByManagementGroupCustomRecommendation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/PutByManagementGroupCustomRecommendation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_security_connector_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_security_connector_custom_recommendation_example.py index 0590b833b2b8..f8a93ef62826 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_security_connector_custom_recommendation_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_security_connector_custom_recommendation_example.py @@ -49,6 +49,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/CustomRecommendations/PutBySecurityConnectorCustomRecommendation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/PutBySecurityConnectorCustomRecommendation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_subscription_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_subscription_custom_recommendation_example.py index 96912d15d9eb..fb78a02bd6f7 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_subscription_custom_recommendation_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_subscription_custom_recommendation_example.py @@ -49,6 +49,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/CustomRecommendations/PutBySubscriptionCustomRecommendation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/PutBySubscriptionCustomRecommendation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/cancel_malware_scan_example.py b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/cancel_malware_scan_example.py index af501dff9533..68bd18bddeeb 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/cancel_malware_scan_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/cancel_malware_scan_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-02-01-preview/examples/DefenderForStorage/CancelMalwareScan_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-09-01-preview/examples/DefenderForStorage/CancelMalwareScan_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_defender_for_storage_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_defender_for_storage_settings_example.py index 00d395627cc2..6a2eab421991 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_defender_for_storage_settings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_defender_for_storage_settings_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-02-01-preview/examples/DefenderForStorage/GetDefenderForStorageSettings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-09-01-preview/examples/DefenderForStorage/GetDefenderForStorageSettings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_malware_scan_example.py b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_malware_scan_example.py index b2340d2aa6e6..4fbe37955ad8 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_malware_scan_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_malware_scan_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-02-01-preview/examples/DefenderForStorage/GetMalwareScan_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-09-01-preview/examples/DefenderForStorage/GetMalwareScan_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/list_defender_for_storage_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/list_defender_for_storage_settings_example.py new file mode 100644 index 000000000000..54ceeb2c344c --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/list_defender_for_storage_settings_example.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python list_defender_for_storage_settings_example.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.defender_for_storage.list( + resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-09-01-preview/examples/DefenderForStorage/ListDefenderForStorageSettings_example.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/put_defender_for_storage_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/put_defender_for_storage_settings_example.py index e5bd1beec4bc..12da7e470fbb 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/put_defender_for_storage_settings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/put_defender_for_storage_settings_example.py @@ -38,8 +38,10 @@ def main(): "properties": { "isEnabled": True, "malwareScanning": { + "automatedResponse": "BlobSoftDelete", + "blobScanResultsOptions": "BlobIndexTags", "onUpload": { - "capGBPerMonth": -1, + "capGBPerMonth": 10000, "filters": { "excludeBlobsLargerThan": 1024, "excludeBlobsWithPrefix": ["unscanned-container", "sample-container/logs"], @@ -57,6 +59,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-02-01-preview/examples/DefenderForStorage/PutDefenderForStorageSettings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-09-01-preview/examples/DefenderForStorage/PutDefenderForStorageSettings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/start_malware_scan_example.py b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/start_malware_scan_example.py index 5d1b2886deb3..ff7b0601e93b 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/start_malware_scan_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/start_malware_scan_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-02-01-preview/examples/DefenderForStorage/StartMalwareScan_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-09-01-preview/examples/DefenderForStorage/StartMalwareScan_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/delete_device_security_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/delete_device_security_groups_example.py index c0b62d9ab6b9..23d8fc939430 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/delete_device_security_groups_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/delete_device_security_groups_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/get_device_security_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/get_device_security_groups_example.py index a7fd35f85eab..282f2c311f41 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/get_device_security_groups_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/get_device_security_groups_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/list_device_security_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/list_device_security_groups_example.py index 26e2912c4289..1ca8816d3c9d 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/list_device_security_groups_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/list_device_security_groups_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/put_device_security_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/put_device_security_groups_example.py index 152af48895fb..fa06df2e346d 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/put_device_security_groups_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/put_device_security_groups_example.py @@ -51,6 +51,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solution_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solution_resource_group_location_example.py index 9ffd7095d13b..eeaa50cd8fa2 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solution_resource_group_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solution_resource_group_location_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_example.py index 25c838a1d450..a35f4940d9b1 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_location_example.py index 6846eeba2bf4..857d03ae423d 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_location_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solution_example.py b/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solution_example.py index ff85fe44a093..35b8605130ba 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solution_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solution_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_example.py index e995cdc4805f..0a6bf1d44f87 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_location_example.py index e247838a4b99..a2f95161b163 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_location_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/delete_governance_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/delete_governance_assignment_example.py index 4480bdd69e66..d476249f503c 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/delete_governance_assignment_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/delete_governance_assignment_example.py @@ -38,6 +38,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/DeleteGovernanceAssignment_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceAssignments/DeleteGovernanceAssignment_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/get_governance_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/get_governance_assignment_example.py index a83ec7cd8607..cae10633f940 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/get_governance_assignment_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/get_governance_assignment_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/GetGovernanceAssignment_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceAssignments/GetGovernanceAssignment_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/list_governance_assignments_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/list_governance_assignments_example.py index 8f669f7a878b..ccf4f1af3b68 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/list_governance_assignments_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/list_governance_assignments_example.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/ListGovernanceAssignments_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceAssignments/ListGovernanceAssignments_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/put_governance_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/put_governance_assignment_example.py index 7213ffcd7916..c378c1d92a2f 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/put_governance_assignment_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/put_governance_assignment_example.py @@ -52,6 +52,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/PutGovernanceAssignment_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceAssignments/PutGovernanceAssignment_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_governance_rule_example.py index 068145c5500d..2efb4f4ab4a3 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_governance_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_governance_rule_example.py @@ -37,6 +37,6 @@ def main(): ).result() -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteGovernanceRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteGovernanceRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_management_group_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_management_group_governance_rule_example.py index dd646d8790e3..67e1030beaf5 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_management_group_governance_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_management_group_governance_rule_example.py @@ -37,6 +37,6 @@ def main(): ).result() -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteManagementGroupGovernanceRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteManagementGroupGovernanceRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_security_connector_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_security_connector_governance_rule_example.py index f347ff78f8f4..e362cf3358f8 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_security_connector_governance_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_security_connector_governance_rule_example.py @@ -37,6 +37,6 @@ def main(): ).result() -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteSecurityConnectorGovernanceRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteSecurityConnectorGovernanceRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_example.py index 05836478efc8..8f40698997f7 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetGovernanceRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/GetGovernanceRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_execute_status_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_execute_status_example.py index fe822de8c9bc..0c4366e35246 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_execute_status_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_execute_status_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetGovernanceRuleExecuteStatus_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/GetGovernanceRuleExecuteStatus_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_example.py index 9043c7621aee..3c5560b768b6 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_execute_status_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_execute_status_example.py index d5ca4f60290e..0c47e172bcc3 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_execute_status_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_execute_status_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRuleExecuteStatus_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRuleExecuteStatus_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_example.py index b43a43a01c41..7cbc96f2730a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetSecurityConnectorGovernanceRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/GetSecurityConnectorGovernanceRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_execute_status_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_execute_status_example.py index 448bba62adc7..2338d50e5f96 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_execute_status_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_execute_status_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetSecurityConnectorGovernanceRuleExecuteStatus_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/GetSecurityConnectorGovernanceRuleExecuteStatus_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_management_group_governance_rules_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_management_group_governance_rules_example.py index fc5856b6d76f..2426416115af 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_management_group_governance_rules_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_management_group_governance_rules_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListByManagementGroupGovernanceRules_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/ListByManagementGroupGovernanceRules_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_security_connector_governance_rules_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_security_connector_governance_rules_example.py index ebf85040d74e..8a42deed61a2 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_security_connector_governance_rules_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_security_connector_governance_rules_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListBySecurityConnectorGovernanceRules_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/ListBySecurityConnectorGovernanceRules_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_subscription_governance_rules_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_subscription_governance_rules_example.py index 3e6ab5b4af0a..466896d7cce5 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_subscription_governance_rules_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_subscription_governance_rules_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListBySubscriptionGovernanceRules_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/ListBySubscriptionGovernanceRules_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_governance_rule_example.py index 49eea7dea041..d8973a919331 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_governance_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_governance_rule_example.py @@ -37,6 +37,6 @@ def main(): ).result() -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostGovernanceRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/PostGovernanceRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_management_group_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_management_group_governance_rule_example.py index 6e8ad77e8499..cdb7cbea50ef 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_management_group_governance_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_management_group_governance_rule_example.py @@ -37,6 +37,6 @@ def main(): ).result() -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostManagementGroupGovernanceRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/PostManagementGroupGovernanceRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_security_connector_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_security_connector_governance_rule_example.py index b34845570e50..10d5c2d91680 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_security_connector_governance_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_security_connector_governance_rule_example.py @@ -37,6 +37,6 @@ def main(): ).result() -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostSecurityConnectorGovernanceRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/PostSecurityConnectorGovernanceRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_governance_rule_example.py index c3476d5cfe5c..8d00a236ba89 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_governance_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_governance_rule_example.py @@ -66,6 +66,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutGovernanceRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/PutGovernanceRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_management_group_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_management_group_governance_rule_example.py index 8bafe7d86c21..2af98df12da0 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_management_group_governance_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_management_group_governance_rule_example.py @@ -67,6 +67,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutManagementGroupGovernanceRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/PutManagementGroupGovernanceRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_security_connector_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_security_connector_governance_rule_example.py index ff307969e3cc..9282e5c51471 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_security_connector_governance_rule_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_security_connector_governance_rule_example.py @@ -66,6 +66,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutSecurityConnectorGovernanceRule_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/PutSecurityConnectorGovernanceRule_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/health_reports/get_health_reports_example.py b/sdk/security/azure-mgmt-security/generated_samples/health_reports/get_health_reports_example.py index 524f146d43e6..3a5df0f76e5f 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/health_reports/get_health_reports_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/health_reports/get_health_reports_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/GetHealthReports_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-05-01-preview/examples/HealthReports/GetHealthReports_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/health_reports/list_health_reports_example.py b/sdk/security/azure-mgmt-security/generated_samples/health_reports/list_health_reports_example.py index 79709a75e016..dc69f1fa4761 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/health_reports/list_health_reports_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/health_reports/list_health_reports_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/ListHealthReports_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-05-01-preview/examples/HealthReports/ListHealthReports_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/create_or_update_information_protection_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/create_or_update_information_protection_policy_example.py index 91621c7e59a4..a979c78fff3b 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/create_or_update_information_protection_policy_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/create_or_update_information_protection_policy_example.py @@ -69,6 +69,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_custom_information_protection_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_custom_information_protection_policy_example.py index d46036146e4a..5f377ab3ee74 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_custom_information_protection_policy_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_custom_information_protection_policy_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetCustomInformationProtectionPolicy_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetCustomInformationProtectionPolicy_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_effective_information_protection_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_effective_information_protection_policy_example.py index b971c28f2be7..d3938e9ac37a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_effective_information_protection_policy_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_effective_information_protection_policy_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetEffectiveInformationProtectionPolicy_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetEffectiveInformationProtectionPolicy_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/list_information_protection_policies_example.py b/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/list_information_protection_policies_example.py index 2144778d4156..3055c942a867 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/list_information_protection_policies_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/list_information_protection_policies_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/ListInformationProtectionPolicies_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/ListInformationProtectionPolicies_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/create_io_tsecurity_solution.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/create_io_tsecurity_solution.py index 054f2856a68a..4408fc06aa41 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/create_io_tsecurity_solution.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/create_io_tsecurity_solution.py @@ -61,6 +61,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/delete_io_tsecurity_solution.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/delete_io_tsecurity_solution.py index 398cd251f204..d1cf58376ac9 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/delete_io_tsecurity_solution.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/delete_io_tsecurity_solution.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/DeleteIoTSecuritySolution.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/DeleteIoTSecuritySolution.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solution.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solution.py index c1c9a1e71dc9..7a61ffac6f51 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solution.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solution.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolution.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolution.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list.py index 5ed41fce8450..abd25f155d26 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub.py index 7190cbb8966d..c0dbbcde5b74 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub_and_rg.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub_and_rg.py index 9c74b906e7dc..6418336778fd 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub_and_rg.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub_and_rg.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_rg.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_rg.py index 19ec5fcfb0b5..0552e281f226 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_rg.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_rg.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/update_io_tsecurity_solution.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/update_io_tsecurity_solution.py index 0896c6b6132f..d096561d12ab 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/update_io_tsecurity_solution.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/update_io_tsecurity_solution.py @@ -51,6 +51,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert.py index 63994c0f1bad..8608fd3e08df 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlert.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlert.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert_list.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert_list.py index 0c2cf430bac0..a26f2af2083f 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert_list.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert_list.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlertList.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlertList.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics.py index 5577063f6f37..b169a4c3b25d 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalytics.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalytics.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics_list.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics_list.py index c5e7bc5c7122..49bbde992957 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics_list.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics_list.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation.py index 2eb17b70c17f..c9932e4e347a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendation.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendation.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation_list.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation_list.py index d70d5f957601..82e073dde6f9 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation_list.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation_list.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendationList.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendationList.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/post_io_tsecurity_solutions_security_aggregated_alert_dismiss.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/post_io_tsecurity_solutions_security_aggregated_alert_dismiss.py index d9c1e6751c75..1f95f70a11cc 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/post_io_tsecurity_solutions_security_aggregated_alert_dismiss.py +++ b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/post_io_tsecurity_solutions_security_aggregated_alert_dismiss.py @@ -38,6 +38,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/PostIoTSecuritySolutionsSecurityAggregatedAlertDismiss.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/PostIoTSecuritySolutionsSecurityAggregatedAlertDismiss.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/create_jit_network_access_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/create_jit_network_access_policy_example.py index 98164ed99615..bf85d3e458b5 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/create_jit_network_access_policy_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/create_jit_network_access_policy_example.py @@ -88,6 +88,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/delete_jit_network_access_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/delete_jit_network_access_policy_example.py index d4098031855d..a4008ac8294e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/delete_jit_network_access_policy_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/delete_jit_network_access_policy_example.py @@ -38,6 +38,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_example.py index ee6f6219805c..e27175fe9f19 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_location_example.py index 754c42050c3d..cbdcc01e2a41 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_location_example.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_example.py index 789e98abae95..b11b9945cf7c 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_location_example.py index f54678df0ebc..1124c7787cc5 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_location_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policy_example.py index 7b76c71f10cd..08384b0bec64 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policy_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policy_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/initiate_jit_network_access_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/initiate_jit_network_access_policy_example.py index 2ebff49d820f..cd9d99a6983a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/initiate_jit_network_access_policy_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/initiate_jit_network_access_policy_example.py @@ -48,6 +48,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/locations/get_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/locations/get_location_example.py index 7b2bf8eeee19..ec31f486ed8a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/locations/get_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/locations/get_location_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Locations/GetLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Locations/GetLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/locations/get_locations_example.py b/sdk/security/azure-mgmt-security/generated_samples/locations/get_locations_example.py index de97b70bd0b8..c9982419a1d0 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/locations/get_locations_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/locations/get_locations_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Locations/GetLocations_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Locations/GetLocations_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/get_mde_onboardings_example.py b/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/get_mde_onboardings_example.py index 51bfaedee672..69171ba4c5fe 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/get_mde_onboardings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/get_mde_onboardings_example.py @@ -35,6 +35,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-10-01-preview/examples/MdeOnboardings/GetMdeOnboardings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-10-01-preview/examples/MdeOnboardings/GetMdeOnboardings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/list_mde_onboardings_example.py b/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/list_mde_onboardings_example.py index bbd14099b418..eb62e24db4e4 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/list_mde_onboardings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/list_mde_onboardings_example.py @@ -35,6 +35,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-10-01-preview/examples/MdeOnboardings/ListMdeOnboardings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-10-01-preview/examples/MdeOnboardings/ListMdeOnboardings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_contacts/delete_security_contact_example.py b/sdk/security/azure-mgmt-security/generated_samples/operation_results/get_operation_result.py similarity index 83% rename from sdk/security/azure-mgmt-security/generated_samples/security_contacts/delete_security_contact_example.py rename to sdk/security/azure-mgmt-security/generated_samples/operation_results/get_operation_result.py index faf36517a3b0..277a8929fd25 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_contacts/delete_security_contact_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/operation_results/get_operation_result.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python delete_security_contact_example.py + python get_operation_result.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -31,11 +31,12 @@ def main(): subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", ) - client.security_contacts.delete( - security_contact_name="default", + client.operation_results.get( + location="eastus", + operation_id="00000000-0000-0000-0000-000000000000", ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/DeleteSecurityContact_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-10-01-preview/examples/OperationResults/GetOperationResult.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/operation_statuses/get_operation_status.py b/sdk/security/azure-mgmt-security/generated_samples/operation_statuses/get_operation_status.py new file mode 100644 index 000000000000..cc58de907362 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/operation_statuses/get_operation_status.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python get_operation_status.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + response = client.operation_statuses.get( + location="eastus", + operation_id="00000000-0000-0000-0000-000000000000", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-10-01-preview/examples/OperationStatuses/GetOperationStatus.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/operations/list_operations_example.py b/sdk/security/azure-mgmt-security/generated_samples/operations/list_operations_example.py index 1ad19dbced1a..a6b716197233 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/operations/list_operations_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/operations/list_operations_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-05-04-preview/examples/Operations/ListOperations_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-10-01-preview/examples/Operations/ListOperations_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_delete_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_by_name_containers_example.py similarity index 73% rename from sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_delete_example.py rename to sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_by_name_containers_example.py index 73590ce1f2c9..450f9633d0d9 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_delete_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_by_name_containers_example.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python custom_entity_store_assignment_delete_example.py + python delete_resource_pricing_by_name_containers_example.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -28,15 +28,15 @@ def main(): client = SecurityCenter( credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", + subscription_id="SUBSCRIPTION_ID", ) - client.custom_entity_store_assignments.delete( - resource_group_name="TestResourceGroup", - custom_entity_store_assignment_name="33e7cc6e-a139-4723-a0e5-76993aee0771", + client.pricings.delete( + scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/demo-containers-rg/providers/Microsoft.ContainerService/managedClusters/demo-aks-cluster", + pricing_name="Containers", ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentDelete_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/DeleteResourcePricingByNameContainers_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_example.py index 0a6cb16d8c4d..16b452ea5b8a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/DeleteResourcePricing_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/DeleteResourcePricing_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_cloud_posture_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_cloud_posture_example.py index 437bce772428..6de370ddb541 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_cloud_posture_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_cloud_posture_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameCloudPosture_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetPricingByNameCloudPosture_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_containers_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_containers_example.py index 08775b1dda22..2bc14b27efba 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_containers_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_containers_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameContainers_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetPricingByNameContainers_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_dns_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_dns_example.py index d131c835a2fa..4b5b089a6b39 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_dns_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_dns_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameDns_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetPricingByNameDns_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_storage_accounts_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_storage_accounts_example.py index afae6062ba22..ac7a1e89321b 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_storage_accounts_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_storage_accounts_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameStorageAccounts_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetPricingByNameStorageAccounts_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_virtual_machines_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_virtual_machines_example.py index ce1a1964dc76..572dd3fb655f 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_virtual_machines_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_virtual_machines_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameVirtualMachines_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetPricingByNameVirtualMachines_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_get_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_containers_example.py similarity index 73% rename from sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_get_example.py rename to sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_containers_example.py index 05fb075ea32c..4752e642623f 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_get_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_containers_example.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python custom_assessment_automation_get_example.py + python get_resource_pricing_by_name_containers_example.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -28,16 +28,16 @@ def main(): client = SecurityCenter( credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", + subscription_id="SUBSCRIPTION_ID", ) - response = client.custom_assessment_automations.get( - resource_group_name="TestResourceGroup", - custom_assessment_automation_name="MyCustomAssessmentAutomation", + response = client.pricings.get( + scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/demo-containers-rg/providers/Microsoft.ContainerService/managedClusters/demo-aks-cluster", + pricing_name="Containers", ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationGet_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetResourcePricingByNameContainers_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_virtual_machines_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_virtual_machines_example.py index 3f84638bd8f2..3ca81c9623a6 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_virtual_machines_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_virtual_machines_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetResourcePricingByNameVirtualMachines_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetResourcePricingByNameVirtualMachines_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_example.py index bb4e45e3b749..5e6ae65488fa 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListPricings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/ListPricings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_with_plan_filter_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_with_plan_filter_example.py index e2a152e7f1b0..a799837e3e99 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_with_plan_filter_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_with_plan_filter_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListPricingsWithPlanFilter_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/ListPricingsWithPlanFilter_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/list_resource_pricings_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/list_resource_pricings_example.py index 74471b5f6acf..ff118929d282 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/list_resource_pricings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/list_resource_pricings_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListResourcePricings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/ListResourcePricings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_example.py index 55083dac52f2..99b95c0656cb 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutPricingByName_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/PutPricingByName_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_partial_success_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_partial_success_example.py index 3e99d8e75e5d..1b13ef35188f 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_partial_success_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_partial_success_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutPricingByNamePartialSuccess_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/PutPricingByNamePartialSuccess_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_vms_by_name_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_vms_by_name_example.py index 793612594d0a..5da6f17bfc46 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_vms_by_name_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_vms_by_name_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutPricingVMsByName_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/PutPricingVMsByName_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_acr_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_acr_example.py new file mode 100644 index 000000000000..487585c11a14 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_acr_example.py @@ -0,0 +1,52 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python put_resource_pricing_by_name_containers_acr_example.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.pricings.update( + scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myContainerRegistry", + pricing_name="Containers", + pricing={ + "properties": { + "extensions": [ + {"isEnabled": "True", "name": "ContainerRegistriesVulnerabilityAssessments"}, + {"isEnabled": "True", "name": "ContainerIntegrityContribution"}, + ], + "pricingTier": "Standard", + } + }, + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/PutResourcePricingByNameContainersACR_example.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/connectors/create_update_aws_cred_connector_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_example.py similarity index 54% rename from sdk/security/azure-mgmt-security/generated_samples/connectors/create_update_aws_cred_connector_subscription_example.py rename to sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_example.py index ac583cffc298..2a1761f62b20 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/connectors/create_update_aws_cred_connector_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_example.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python create_update_aws_cred_connector_subscription_example.py + python put_resource_pricing_by_name_containers_example.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -28,31 +28,32 @@ def main(): client = SecurityCenter( credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + subscription_id="SUBSCRIPTION_ID", ) - response = client.connectors.create_or_update( - connector_name="aws_dev1", - connector_setting={ + response = client.pricings.update( + scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/demo-containers-rg/providers/Microsoft.ContainerService/managedClusters/demo-aks-cluster", + pricing_name="Containers", + pricing={ "properties": { - "authenticationDetails": { - "authenticationType": "awsCreds", - "awsAccessKeyId": "", - "awsSecretAccessKey": "", - }, - "hybridComputeSettings": { - "autoProvision": "On", - "proxyServer": {"ip": "167.220.197.140", "port": "34"}, - "region": "West US 2", - "resourceGroupName": "AwsConnectorRG", - "servicePrincipal": {"applicationId": "ad9bcd79-be9c-45ab-abd8-80ca1654a7d1", "secret": ""}, - }, + "extensions": [ + {"isEnabled": "True", "name": "ContainerRegistriesVulnerabilityAssessments"}, + {"isEnabled": "True", "name": "ContainerSensor"}, + {"isEnabled": "True", "name": "AgentlessDiscoveryForKubernetes"}, + { + "additionalExtensionProperties": {"ExclusionTags": "[]"}, + "isEnabled": "True", + "name": "AgentlessVmScanning", + }, + {"isEnabled": "True", "name": "ContainerIntegrityContribution"}, + ], + "pricingTier": "Standard", } }, ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateAwsCredConnectorSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/PutResourcePricingByNameContainers_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_virtual_machines_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_virtual_machines_example.py index ed4ce74a7ace..20e06541ab76 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_virtual_machines_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_virtual_machines_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutResourcePricingByNameVirtualMachines_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/PutResourcePricingByNameVirtualMachines_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_create_example.py b/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_create_or_update.py similarity index 64% rename from sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_create_example.py rename to sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_create_or_update.py index c1fe30e55023..6509d2489136 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_create_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_create_or_update.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python custom_entity_store_assignment_create_example.py + python private_endpoint_connections_create_or_update.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -28,21 +28,26 @@ def main(): client = SecurityCenter( credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", ) - response = client.custom_entity_store_assignments.create( - resource_group_name="TestResourceGroup", - custom_entity_store_assignment_name="33e7cc6e-a139-4723-a0e5-76993aee0771", - custom_entity_store_assignment_request_body={ + response = client.private_endpoint_connections.begin_create_or_update( + resource_group_name="rg", + private_endpoint_connection_name="pe", + private_link_parameters={"privateLinkName": "str"}, + private_endpoint_connection={ "properties": { - "principal": "aaduser=f3923a3e-ad57-4752-b1a9-fbf3c8e5e082;72f988bf-86f1-41af-91ab-2d7cd011db47" + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Approved by administrator", + "status": "Approved", + } } }, - ) + ).result() print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentCreate_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateEndpointConnections/PrivateEndpointConnections_CreateOrUpdate.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_delete.py b/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_delete.py new file mode 100644 index 000000000000..1a47fb3ae891 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_delete.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python private_endpoint_connections_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + client.private_endpoint_connections.begin_delete( + resource_group_name="rg", + private_endpoint_connection_name="pe", + private_link_parameters={"privateLinkName": "str"}, + ).result() + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateEndpointConnections/PrivateEndpointConnections_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_get.py b/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_get.py new file mode 100644 index 000000000000..484440463878 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_get.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python private_endpoint_connections_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + response = client.private_endpoint_connections.get( + resource_group_name="rg", + private_endpoint_connection_name="pe", + private_link_parameters={"privateLinkName": "str"}, + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateEndpointConnections/PrivateEndpointConnections_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_list.py b/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_list.py new file mode 100644 index 000000000000..9767743aa8d2 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_list.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python private_endpoint_connections_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + response = client.private_endpoint_connections.list( + resource_group_name="rg", + private_link_parameters={"privateLinkName": "str"}, + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateEndpointConnections/PrivateEndpointConnections_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_get.py b/sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_get.py new file mode 100644 index 000000000000..4ac427738aca --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_get.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python private_link_resources_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + response = client.private_link_resources.get( + resource_group_name="rg", + group_id="containers", + private_link_parameters={"privateLinkName": "str"}, + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinkResources/PrivateLinkResources_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_list_by_private_link.py b/sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_list_by_private_link.py new file mode 100644 index 000000000000..70000db00db4 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_list_by_private_link.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python private_link_resources_list_by_private_link.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + response = client.private_link_resources.list( + resource_group_name="rg", + private_link_parameters={"privateLinkName": "str"}, + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinkResources/PrivateLinkResources_ListByPrivateLink.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_create.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_create.py new file mode 100644 index 000000000000..dcc62a6e2e1a --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_create.py @@ -0,0 +1,48 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python private_links_create.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + response = client.private_links.begin_create( + resource_group_name="rg", + private_link_parameters={"privateLinkName": "str"}, + private_link={ + "location": "eastus", + "properties": {}, + "tags": {"environment": "production", "owner": "security-team", "project": "private-links"}, + }, + ).result() + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_Create.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_delete.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_delete.py new file mode 100644 index 000000000000..e24eeca9152a --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_delete.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python private_links_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + client.private_links.begin_delete( + resource_group_name="rg", + private_link_parameters={"privateLinkName": "str"}, + ).result() + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_contacts/get_security_contact_example.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_get.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_samples/security_contacts/get_security_contact_example.py rename to sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_get.py index b629c94f69f4..b4f78f8682c2 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_contacts/get_security_contact_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_get.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python get_security_contact_example.py + python private_links_get.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -31,12 +31,13 @@ def main(): subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", ) - response = client.security_contacts.get( - security_contact_name="default", + response = client.private_links.get( + resource_group_name="rg", + private_link_parameters={"privateLinkName": "str"}, ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/GetSecurityContact_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_Get.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/connectors/get_connector_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_head.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_samples/connectors/get_connector_subscription_example.py rename to sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_head.py index c900f2ae3d19..ed57a2a71fa2 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/connectors/get_connector_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_head.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python get_connector_subscription_example.py + python private_links_head.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -31,12 +31,13 @@ def main(): subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", ) - response = client.connectors.get( - connector_name="aws_dev1", + response = client.private_links.head( + resource_group_name="rg", + private_link_parameters={"privateLinkName": "str"}, ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/GetConnectorSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_Head.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list.py index 50e4594cc1f2..94bddae9c3cb 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list.py +++ b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-09-01-preview/examples/PrivateLinks/PrivateLinks_List.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_List.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list_by_subscription.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list_by_subscription.py index a8a1a2b0d80c..2da2785188ba 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list_by_subscription.py +++ b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list_by_subscription.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2025-09-01-preview/examples/PrivateLinks/PrivateLinks_ListBySubscription.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_ListBySubscription.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_update.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_update.py new file mode 100644 index 000000000000..7c5beb2c10b0 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_update.py @@ -0,0 +1,46 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python private_links_update.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + response = client.private_links.update( + resource_group_name="rg", + private_link_parameters={"privateLinkName": "str"}, + private_link={ + "tags": {"environment": "development", "owner": "security-team-updated", "project": "private-links"} + }, + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_Update.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_example.py b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_example.py index e4f462564dae..a8b13225c57b 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessment_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessment_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_list_example.py b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_list_example.py index 1656464fa38b..404bd17f7372 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_list_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_list_example.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessmentList_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessmentList_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_example.py b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_example.py index 90bf2b6f709f..d85a665e8da6 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControl_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControl_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_list_example.py b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_list_example.py index eebee579227b..f12401af59de 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_list_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_list_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControlList_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControlList_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_example.py index 3ea8314c9dd9..e55da2219c34 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandard_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandard_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_list_example.py b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_list_example.py index 79f20148c1f7..c4a507bdf311 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_list_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_list_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandardList_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandardList_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_example.py index 61e4176f3b0c..1edb8d9d4fe1 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_subscription_example.py index be2c87e57fc8..9703d290e205 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_subscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_subscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/get_secure_scores_single_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/get_secure_scores_single_example.py index cfda9e3e7583..fd28a45dcf61 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/get_secure_scores_single_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/get_secure_scores_single_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/GetSecureScoresSingle_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScores/GetSecureScoresSingle_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_example.py index c161b647db42..ff59a04c8ee6 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControls_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControls_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_builtin_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_builtin_example.py index d305dd18ed28..c4c971df60e9 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_builtin_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_builtin_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForName_builtin_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForName_builtin_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_with_expand_builtin_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_with_expand_builtin_example.py index edd008d1f7c4..e8eeb6d37474 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_with_expand_builtin_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_with_expand_builtin_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForNameWithExpand_builtin_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForNameWithExpand_builtin_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_scores_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_scores_example.py index 407020cfd897..08853c88cb2e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_scores_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_scores_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScores_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScores/ListSecureScores_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/delete_security_connector_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/delete_security_connector_example.py index fe8681f55d7d..530da6b5f666 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/delete_security_connector_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/delete_security_connector_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2024-08-01-preview/examples/SecurityConnectors/DeleteSecurityConnector_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2024-08-01-preview/examples/SecurityConnectors/DeleteSecurityConnector_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connector_single_resource_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connector_single_resource_example.py index 0b6978479619..81a24056e3e4 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connector_single_resource_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connector_single_resource_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2024-08-01-preview/examples/SecurityConnectors/GetSecurityConnectorSingleResource_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2024-08-01-preview/examples/SecurityConnectors/GetSecurityConnectorSingleResource_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_resource_group_example.py index cd2df5ff6baa..232749cfc681 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_resource_group_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_resource_group_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2024-08-01-preview/examples/SecurityConnectors/GetSecurityConnectorsResourceGroup_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2024-08-01-preview/examples/SecurityConnectors/GetSecurityConnectorsResourceGroup_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_subscription_example.py index b89938f20d55..d37b4ab45c2e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2024-08-01-preview/examples/SecurityConnectors/GetSecurityConnectorsSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2024-08-01-preview/examples/SecurityConnectors/GetSecurityConnectorsSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/patch_security_connector_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/patch_security_connector_example.py index 5c7c732eeb7a..704e53b82125 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/patch_security_connector_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/patch_security_connector_example.py @@ -54,6 +54,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2024-08-01-preview/examples/SecurityConnectors/PatchSecurityConnector_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2024-08-01-preview/examples/SecurityConnectors/PatchSecurityConnector_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/put_security_connector_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/put_security_connector_example.py index 43b78fdf9c02..a6faaf17e283 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/put_security_connector_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/put_security_connector_example.py @@ -54,6 +54,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2024-08-01-preview/examples/SecurityConnectors/PutSecurityConnector_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2024-08-01-preview/examples/SecurityConnectors/PutSecurityConnector_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_delete_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_git_hub_issues_example.py similarity index 74% rename from sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_delete_example.py rename to sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_git_hub_issues_example.py index 74e54ccee8fb..11413e752ed4 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_delete_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_git_hub_issues_example.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python custom_assessment_automation_delete_example.py + python create_git_hub_issues_example.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -28,15 +28,17 @@ def main(): client = SecurityCenter( credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", + subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", ) - client.custom_assessment_automations.delete( - resource_group_name="TestResourceGroup", - custom_assessment_automation_name="MyCustomAssessmentAutomation", - ) + client.git_hub_issues.begin_create( + resource_group_name="myRg", + security_connector_name="mySecurityConnectorName", + owner_name="myGitHubOwner", + repo_name="myGitHubRepo", + ).result() -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationDelete_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateGitHubIssues_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_orgs_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_orgs_example.py index 609a3c4652d5..3fee7ac1274a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_orgs_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_orgs_example.py @@ -42,6 +42,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsOrgs_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsOrgs_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_projects_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_projects_example.py index a88d1c5213ef..5dd2523774cd 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_projects_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_projects_example.py @@ -43,6 +43,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsProjects_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsProjects_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_repos_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_repos_example.py index bc8528da33ec..2095f0690c56 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_repos_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_repos_example.py @@ -44,6 +44,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsRepos_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsRepos_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_and_future_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_and_future_example.py index c6ea2727a7be..c07b29d6cdcd 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_and_future_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_and_future_example.py @@ -41,6 +41,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_only_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_only_example.py index ff84896f2318..aea3cf742743 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_only_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_only_example.py @@ -41,6 +41,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentOnly_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentOnly_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_selected_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_selected_example.py index e9e650b25b1c..58e830803d9f 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_selected_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_selected_example.py @@ -45,6 +45,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardSelected_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardSelected_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_with_agentless_configurations_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_with_agentless_configurations_example.py index 2c5c730054c7..af668502036b 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_with_agentless_configurations_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_with_agentless_configurations_example.py @@ -51,6 +51,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsWithAgentlessConfigurations_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsWithAgentlessConfigurations_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/delete_dev_ops_configurations_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/delete_dev_ops_configurations_example.py index 3611efb2643d..022598adf215 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/delete_dev_ops_configurations_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/delete_dev_ops_configurations_example.py @@ -37,6 +37,6 @@ def main(): ).result() -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/DeleteDevOpsConfigurations_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/DeleteDevOpsConfigurations_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_orgs_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_orgs_example.py index 117acc1e63c1..73c85fac5e76 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_orgs_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_orgs_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/GetAzureDevOpsOrgs_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsOrgs_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_projects_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_projects_example.py index b4971e525861..471144b64c08 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_projects_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_projects_example.py @@ -40,6 +40,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/GetAzureDevOpsProjects_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsProjects_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_repos_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_repos_example.py index 79f10b84ba02..8312a285d490 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_repos_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_repos_example.py @@ -41,6 +41,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/GetAzureDevOpsRepos_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsRepos_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_example.py index 94d61bce651a..e60e4a08f2cb 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/GetDevOpsConfigurations_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsConfigurations_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_agentless_configurations_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_agentless_configurations_example.py index ee7b8d14f5b2..b151a67eef5b 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_agentless_configurations_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_agentless_configurations_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/GetDevOpsConfigurationsWithAgentlessConfigurations_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsConfigurationsWithAgentlessConfigurations_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_capabilities_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_capabilities_example.py index 8650ef8e0332..650e4d89d9f4 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_capabilities_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_capabilities_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/GetDevOpsConfigurationsWithCapabilities_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsConfigurationsWithCapabilities_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_failed_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_failed_example.py index ec29f488421a..3fb0b0a2f79e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_failed_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_failed_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsFailed_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsFailed_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_succeeded_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_succeeded_example.py index 1f3adcde94a0..1bae07846fe2 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_succeeded_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_succeeded_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsSucceeded_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsSucceeded_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_owners_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_owners_example.py index 577392b1d252..91877f18071e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_owners_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_owners_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/GetGitHubOwners_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetGitHubOwners_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_repos_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_repos_example.py index c53233a24f4e..96390bb59e5a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_repos_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_repos_example.py @@ -40,6 +40,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/GetGitHubRepos_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetGitHubRepos_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_groups_example.py index 1d4e885abddd..dc1939a2b8d4 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_groups_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_groups_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/GetGitLabGroups_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetGitLabGroups_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_projects_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_projects_example.py index 1845a1032065..dcc9063cf161 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_projects_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_projects_example.py @@ -40,6 +40,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/GetGitLabProjects_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetGitLabProjects_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_azure_dev_ops_orgs_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_azure_dev_ops_orgs_example.py index 3fde78c0b459..809658c6cb1c 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_azure_dev_ops_orgs_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_azure_dev_ops_orgs_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/ListAvailableAzureDevOpsOrgs_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListAvailableAzureDevOpsOrgs_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_hub_owners_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_hub_owners_example.py index b6edbd90f9b3..b14b0f7733f1 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_hub_owners_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_hub_owners_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/ListAvailableGitHubOwners_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitHubOwners_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_lab_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_lab_groups_example.py index af89bf662006..5ec41ac27b13 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_lab_groups_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_lab_groups_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/ListAvailableGitLabGroups_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitLabGroups_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_orgs_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_orgs_example.py index e3ea6da5baa6..b260d06ed3a5 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_orgs_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_orgs_example.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/ListAzureDevOpsOrgs_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsOrgs_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_projects_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_projects_example.py index bfad06c620f9..ba3d7e3cf59a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_projects_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_projects_example.py @@ -40,6 +40,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/ListAzureDevOpsProjects_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsProjects_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_repos_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_repos_example.py index 17405bec73f5..67c498729a88 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_repos_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_repos_example.py @@ -41,6 +41,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/ListAzureDevOpsRepos_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsRepos_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_dev_ops_configurations_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_dev_ops_configurations_example.py index cd3b218ff269..bc2f4b5daad8 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_dev_ops_configurations_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_dev_ops_configurations_example.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/ListDevOpsConfigurations_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListDevOpsConfigurations_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_owners_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_owners_example.py index ae016dbf8d3b..9e97875ffb4f 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_owners_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_owners_example.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/ListGitHubOwners_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListGitHubOwners_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_repos_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_repos_example.py index a66451d839af..28af6d6dcd80 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_repos_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_repos_example.py @@ -40,6 +40,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/ListGitHubRepos_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListGitHubRepos_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_groups_example.py index 9071849fb0db..bb59f26461d7 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_groups_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_groups_example.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/ListGitLabGroups_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListGitLabGroups_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_projects_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_projects_example.py index 9ebb2dddb34a..3740e819894d 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_projects_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_projects_example.py @@ -40,6 +40,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/ListGitLabProjects_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListGitLabProjects_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_subgroups_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_subgroups_example.py index d5e4745c9bcf..54aaabf3fac7 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_subgroups_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_subgroups_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/ListGitLabSubgroups_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListGitLabSubgroups_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_orgs_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_orgs_example.py index 761b3d0a2a5e..a023382660d0 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_orgs_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_orgs_example.py @@ -42,6 +42,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsOrgs_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsOrgs_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_projects_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_projects_example.py index 5ecdbc1fd644..c332e5ebd29e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_projects_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_projects_example.py @@ -43,6 +43,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsProjects_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsProjects_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_repos_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_repos_example.py index 2038bd13d339..0cf3ff8b1e40 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_repos_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_repos_example.py @@ -44,6 +44,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsRepos_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsRepos_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_dev_ops_configurations_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_dev_ops_configurations_example.py index 40290a05528f..6d36e90204d3 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_dev_ops_configurations_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_dev_ops_configurations_example.py @@ -50,6 +50,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2025-03-01/examples/SecurityConnectorsDevOps/UpdateDevOpsConfigurations_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/UpdateDevOpsConfigurations_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_operators/delete_security_operator_by_name_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_operators/delete_security_operator_by_name_example.py index 3e1641165ddb..f8859f8f629b 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_operators/delete_security_operator_by_name_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_operators/delete_security_operator_by_name_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/DeleteSecurityOperatorByName_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-01-01-preview/examples/SecurityOperators/DeleteSecurityOperatorByName_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_operators/get_security_operator_by_name_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_operators/get_security_operator_by_name_example.py index 8e5f4cd9b276..86e159c20bd0 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_operators/get_security_operator_by_name_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_operators/get_security_operator_by_name_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/GetSecurityOperatorByName_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-01-01-preview/examples/SecurityOperators/GetSecurityOperatorByName_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_operators/list_security_operators_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_operators/list_security_operators_example.py index ddfca8424dd3..c0f97dbae034 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_operators/list_security_operators_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_operators/list_security_operators_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/ListSecurityOperators_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-01-01-preview/examples/SecurityOperators/ListSecurityOperators_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_operators/put_security_operator_by_name_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_operators/put_security_operator_by_name_example.py index ec41edb37312..aceab20cfe2a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_operators/put_security_operator_by_name_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_operators/put_security_operator_by_name_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/PutSecurityOperatorByName_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-01-01-preview/examples/SecurityOperators/PutSecurityOperatorByName_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_resource_group_location_example.py index 9419072312ac..24b41f428ed0 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_resource_group_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_resource_group_location_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsResourceGroupLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsResourceGroupLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_subscription_example.py index 29fbffedb270..85cd33dca4a7 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_example.py index 2c5426f6da7d..85416781b33c 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_example.py @@ -35,6 +35,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_location_example.py index d6f05f0ff9cd..f7f72d2b39f3 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_location_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscriptionLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscriptionLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_management_group_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_management_group_security_standard_example.py index 2fafa94950f5..9b914a8104a1 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_management_group_security_standard_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_management_group_security_standard_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/SecurityStandards/DeleteByManagementGroupSecurityStandard_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/DeleteByManagementGroupSecurityStandard_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_security_connector_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_security_connector_security_standard_example.py index a7ebe3114361..6950e21f5b55 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_security_connector_security_standard_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_security_connector_security_standard_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/SecurityStandards/DeleteBySecurityConnectorSecurityStandard_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/DeleteBySecurityConnectorSecurityStandard_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_subscription_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_subscription_security_standard_example.py index 067d53523c89..3eb802b58a66 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_subscription_security_standard_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_subscription_security_standard_example.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/SecurityStandards/DeleteBySubscriptionSecurityStandard_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/DeleteBySubscriptionSecurityStandard_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_management_group_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_management_group_security_standard_example.py index a4f9f540b537..c402239aa2fc 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_management_group_security_standard_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_management_group_security_standard_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/SecurityStandards/GetByManagementGroupSecurityStandard_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/GetByManagementGroupSecurityStandard_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_security_connector_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_security_connector_security_standard_example.py index 8a96cb25d7f5..00a695814f5b 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_security_connector_security_standard_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_security_connector_security_standard_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/SecurityStandards/GetBySecurityConnectorSecurityStandard_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/GetBySecurityConnectorSecurityStandard_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_subscription_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_subscription_security_standard_example.py index d2b85c6812e9..ccd0a3769b88 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_subscription_security_standard_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_subscription_security_standard_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/SecurityStandards/GetBySubscriptionSecurityStandard_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/GetBySubscriptionSecurityStandard_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_management_group_security_standards_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_management_group_security_standards_example.py index 7a9d96f3ad0d..9ae3d66fb74c 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_management_group_security_standards_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_management_group_security_standards_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/SecurityStandards/ListByManagementGroupSecurityStandards_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/ListByManagementGroupSecurityStandards_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_security_connector_security_standards_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_security_connector_security_standards_example.py index 9afcdc64f57c..4eaee5c9f4f8 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_security_connector_security_standards_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_security_connector_security_standards_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/SecurityStandards/ListBySecurityConnectorSecurityStandards_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/ListBySecurityConnectorSecurityStandards_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_subscription_security_standards_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_subscription_security_standards_example.py index 6eee9e338e28..4b7f7d75ea01 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_subscription_security_standards_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_subscription_security_standards_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/SecurityStandards/ListBySubscriptionSecurityStandards_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/ListBySubscriptionSecurityStandards_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_management_group_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_management_group_security_standard_example.py index e34c5e8a3832..cce9c7e79c52 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_management_group_security_standard_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_management_group_security_standard_example.py @@ -50,6 +50,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/SecurityStandards/PutByManagementGroupSecurityStandard_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/PutByManagementGroupSecurityStandard_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_security_connector_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_security_connector_security_standard_example.py index 89940620c10f..877aa3f70640 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_security_connector_security_standard_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_security_connector_security_standard_example.py @@ -49,6 +49,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/SecurityStandards/PutBySecurityConnectorSecurityStandard_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/PutBySecurityConnectorSecurityStandard_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_subscription_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_subscription_security_standard_example.py index 37d991c651be..93b4930ae9e4 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_subscription_security_standard_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_subscription_security_standard_example.py @@ -50,6 +50,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/SecurityStandards/PutBySubscriptionSecurityStandard_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/PutBySubscriptionSecurityStandard_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_example.py index 307bf94c6cf4..3faa96791214 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_example.py @@ -35,6 +35,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_list_example.py b/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_list_example.py index f7c783ecc818..cff21a8252d3 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_list_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_list_example.py @@ -35,6 +35,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettingsList_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettingsList_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/put_sensitivity_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/put_sensitivity_settings_example.py index 77ba6282462d..e5f78f01a27c 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/put_sensitivity_settings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/put_sensitivity_settings_example.py @@ -45,6 +45,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/PutSensitivitySettings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-02-15-preview/examples/SensitivitySettings/PutSensitivitySettings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/create_server_vulnerability_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/create_server_vulnerability_assessments_example.py index bac9bf416aba..f01ce7abb6b7 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/create_server_vulnerability_assessments_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/create_server_vulnerability_assessments_example.py @@ -40,6 +40,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/CreateServerVulnerabilityAssessments_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/CreateServerVulnerabilityAssessments_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/delete_server_vulnerability_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/delete_server_vulnerability_assessments_example.py index 084ed118c14f..38692d02255a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/delete_server_vulnerability_assessments_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/delete_server_vulnerability_assessments_example.py @@ -39,6 +39,6 @@ def main(): ).result() -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/DeleteServerVulnerabilityAssessments_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/DeleteServerVulnerabilityAssessments_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/get_server_vulnerability_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/get_server_vulnerability_assessments_example.py index 22075042a509..ca283886cc84 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/get_server_vulnerability_assessments_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/get_server_vulnerability_assessments_example.py @@ -40,6 +40,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/GetServerVulnerabilityAssessments_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/GetServerVulnerabilityAssessments_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/list_by_extended_resource_server_vulnerability_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/list_by_extended_resource_server_vulnerability_assessments_example.py index 653f1c223c1e..2bec730452a6 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/list_by_extended_resource_server_vulnerability_assessments_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/list_by_extended_resource_server_vulnerability_assessments_example.py @@ -40,6 +40,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/ListByExtendedResourceServerVulnerabilityAssessments_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/ListByExtendedResourceServerVulnerabilityAssessments_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/delete_server_vulnerability_assessments_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/delete_server_vulnerability_assessments_setting_example.py index e345fc99a8fd..c56eaf95608e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/delete_server_vulnerability_assessments_setting_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/delete_server_vulnerability_assessments_setting_example.py @@ -36,6 +36,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/DeleteServerVulnerabilityAssessmentsSetting_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/DeleteServerVulnerabilityAssessmentsSetting_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/get_server_vulnerability_assessments_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/get_server_vulnerability_assessments_setting_example.py index 8c2dfb26f9ca..854922330893 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/get_server_vulnerability_assessments_setting_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/get_server_vulnerability_assessments_setting_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/GetServerVulnerabilityAssessmentsSetting_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/GetServerVulnerabilityAssessmentsSetting_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/list_server_vulnerability_assessments_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/list_server_vulnerability_assessments_settings_example.py index 639248c894ac..96c9b3c03717 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/list_server_vulnerability_assessments_settings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/list_server_vulnerability_assessments_settings_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/ListServerVulnerabilityAssessmentsSettings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/ListServerVulnerabilityAssessmentsSettings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/put_server_vulnerability_assessments_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/put_server_vulnerability_assessments_setting_example.py index 7b28ccbf0023..e41940723468 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/put_server_vulnerability_assessments_setting_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/put_server_vulnerability_assessments_setting_example.py @@ -41,6 +41,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/PutServerVulnerabilityAssessmentsSetting_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/PutServerVulnerabilityAssessmentsSetting_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/settings/get_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/settings/get_setting_example.py index dbba23658887..1f6014c4cb95 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/settings/get_setting_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/settings/get_setting_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/GetSetting_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-05-01/examples/Settings/GetSetting_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/settings/get_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/settings/get_settings_example.py index cc983e75b59b..49100e9eb3cd 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/settings/get_settings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/settings/get_settings_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/GetSettings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-05-01/examples/Settings/GetSettings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/settings/update_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/settings/update_setting_example.py index 5d29470ec142..66bc6be6ae9e 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/settings/update_setting_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/settings/update_setting_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/UpdateSetting_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-05-01/examples/Settings/UpdateSetting_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/software_inventories/get_software_example.py b/sdk/security/azure-mgmt-security/generated_samples/software_inventories/get_software_example.py deleted file mode 100644 index 7ee62c182095..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/software_inventories/get_software_example.py +++ /dev/null @@ -1,46 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_software_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", - ) - - response = client.software_inventories.get( - resource_group_name="EITAN-TESTS", - resource_namespace="Microsoft.Compute", - resource_type="virtualMachines", - resource_name="Eitan-Test1", - software_name="outlook_16.0.10371.20060", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/GetSoftware_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/software_inventories/list_by_extended_resource_software_inventories_example.py b/sdk/security/azure-mgmt-security/generated_samples/software_inventories/list_by_extended_resource_software_inventories_example.py deleted file mode 100644 index c2108dd3119d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/software_inventories/list_by_extended_resource_software_inventories_example.py +++ /dev/null @@ -1,46 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_extended_resource_software_inventories_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", - ) - - response = client.software_inventories.list_by_extended_resource( - resource_group_name="EITAN-TESTS", - resource_namespace="Microsoft.Compute", - resource_type="virtualMachines", - resource_name="Eitan-Test1", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListByExtendedResourceSoftwareInventories_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/software_inventories/list_by_subscription_software_inventories_example.py b/sdk/security/azure-mgmt-security/generated_samples/software_inventories/list_by_subscription_software_inventories_example.py deleted file mode 100644 index b55e4903b782..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/software_inventories/list_by_subscription_software_inventories_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_subscription_software_inventories_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", - ) - - response = client.software_inventories.list_by_subscription() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListBySubscriptionSoftwareInventories_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_add.py index c69a82f91931..9869e836c88d 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_add.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_add.py @@ -32,12 +32,11 @@ def main(): ) response = client.sql_vulnerability_assessment_baseline_rules.add( - workspace_id="55555555-6666-7777-8888-999999999999", resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Add.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Add.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_delete.py index e601a400b8e8..5fd19c6fbb97 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_delete.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_delete.py @@ -32,12 +32,11 @@ def main(): ) client.sql_vulnerability_assessment_baseline_rules.delete( - rule_id="VA1234", - workspace_id="55555555-6666-7777-8888-999999999999", resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", + rule_id="VA1234", ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Delete.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Delete.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_get.py index c7cb0fb709b8..5bff5f75cc4d 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_get.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_get.py @@ -32,13 +32,12 @@ def main(): ) response = client.sql_vulnerability_assessment_baseline_rules.get( - rule_id="VA1234", - workspace_id="55555555-6666-7777-8888-999999999999", resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", + rule_id="VA1234", ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Get.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Get.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_list.py index cb48730f9926..15c324c82b97 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_list.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_list.py @@ -32,12 +32,12 @@ def main(): ) response = client.sql_vulnerability_assessment_baseline_rules.list( - workspace_id="55555555-6666-7777-8888-999999999999", resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", ) - print(response) + for item in response: + print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_List.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_List.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_put.py index f6007dc93607..8690fd1873ab 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_put.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_put.py @@ -32,13 +32,12 @@ def main(): ) response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( - rule_id="VA1234", - workspace_id="55555555-6666-7777-8888-999999999999", resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", + rule_id="VA1234", ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Put.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Put.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_add_latest.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_add.py similarity index 79% rename from sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_add_latest.py rename to sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_add.py index ef1125ba7218..78a1a580b081 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_add_latest.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_add.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python arc_machine_baseline_rules_add_latest.py + python server_level_sql_managed_instance_baseline_rules_add.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -32,12 +32,11 @@ def main(): ) response = client.sql_vulnerability_assessment_baseline_rules.add( - workspace_id="55555555-6666-7777-8888-999999999999", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_AddLatest.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlManagedInstanceBaselineRules_Add.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_delete.py new file mode 100644 index 000000000000..cf21ed8566ef --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_delete.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_managed_instance_baseline_rules_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.sql_vulnerability_assessment_baseline_rules.delete( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", + rule_id="VA1234", + ) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlManagedInstanceBaselineRules_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_get.py new file mode 100644 index 000000000000..6e05c0ee8950 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_managed_instance_baseline_rules_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.get( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlManagedInstanceBaselineRules_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_list.py new file mode 100644 index 000000000000..a0acde682aeb --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_list.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_managed_instance_baseline_rules_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlManagedInstanceBaselineRules_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_put_latest.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_put.py similarity index 80% rename from sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_put_latest.py rename to sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_put.py index 32aeb439d00e..ca6967f18b20 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_put_latest.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_put.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python arc_machine_baseline_rules_put_latest.py + python server_level_sql_managed_instance_baseline_rules_put.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -32,13 +32,12 @@ def main(): ) response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", rule_id="VA1234", - workspace_id="55555555-6666-7777-8888-999999999999", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_PutLatest.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlManagedInstanceBaselineRules_Put.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_add.py new file mode 100644 index 000000000000..20c51b09e558 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_add.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_server_baseline_rules_add.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.add( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlServerBaselineRules_Add.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_delete.py new file mode 100644 index 000000000000..dc12cc990ed2 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_delete.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_server_baseline_rules_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.sql_vulnerability_assessment_baseline_rules.delete( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + rule_id="VA1234", + ) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlServerBaselineRules_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_get.py new file mode 100644 index 000000000000..fb17c2bb43dd --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_server_baseline_rules_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.get( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlServerBaselineRules_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_list.py new file mode 100644 index 000000000000..0f1d452a085f --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_list.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_server_baseline_rules_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlServerBaselineRules_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_put.py new file mode 100644 index 000000000000..85d532c053a2 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_put.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_server_baseline_rules_put.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlServerBaselineRules_Put.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_add.py new file mode 100644 index 000000000000..19849e3878b5 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_add.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_synapse_baseline_rules_add.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.add( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SynapseBaselineRules_Add.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_delete.py new file mode 100644 index 000000000000..3f29eb22fe37 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_delete.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_synapse_baseline_rules_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.sql_vulnerability_assessment_baseline_rules.delete( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + rule_id="VA1234", + ) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SynapseBaselineRules_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_get.py new file mode 100644 index 000000000000..376daafc3d72 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_synapse_baseline_rules_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.get( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SynapseBaselineRules_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_list.py new file mode 100644 index 000000000000..669293fae4e0 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_list.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_synapse_baseline_rules_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SynapseBaselineRules_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_put.py new file mode 100644 index 000000000000..bbe794584f61 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_put.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_synapse_baseline_rules_put.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SynapseBaselineRules_Put.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_add.py new file mode 100644 index 000000000000..6dacbacd4468 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_add.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_baseline_rules_add.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.add( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlManagedInstanceBaselineRules_Add.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_delete.py new file mode 100644 index 000000000000..e3eb544bd217 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_delete.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_baseline_rules_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.sql_vulnerability_assessment_baseline_rules.delete( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", + rule_id="VA1234", + ) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlManagedInstanceBaselineRules_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_get.py new file mode 100644 index 000000000000..c7b5bbadc09e --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_baseline_rules_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.get( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlManagedInstanceBaselineRules_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_list.py new file mode 100644 index 000000000000..d862df0726a9 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_list.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_baseline_rules_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlManagedInstanceBaselineRules_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_put.py new file mode 100644 index 000000000000..789c380abedf --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_put.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_baseline_rules_put.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlManagedInstanceBaselineRules_Put.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_add.py new file mode 100644 index 000000000000..273ebd690b8c --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_add.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_baseline_rules_add.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.add( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlServerBaselineRules_Add.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_delete.py new file mode 100644 index 000000000000..3637399f4c54 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_delete.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_baseline_rules_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.sql_vulnerability_assessment_baseline_rules.delete( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", + rule_id="VA1234", + ) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlServerBaselineRules_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_get.py new file mode 100644 index 000000000000..9b3fdc8a1cec --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_baseline_rules_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.get( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlServerBaselineRules_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_list.py new file mode 100644 index 000000000000..a9fae12f5a01 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_list.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_baseline_rules_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlServerBaselineRules_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_put.py new file mode 100644 index 000000000000..f014e6c61619 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_put.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_baseline_rules_put.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlServerBaselineRules_Put.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_add.py new file mode 100644 index 000000000000..5b228873e756 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_add.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_baseline_rules_add.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.add( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SynapseBaselineRules_Add.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_delete.py new file mode 100644 index 000000000000..3beb1f7dd9be --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_delete.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_baseline_rules_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.sql_vulnerability_assessment_baseline_rules.delete( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", + rule_id="VA1234", + ) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SynapseBaselineRules_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_get.py new file mode 100644 index 000000000000..230f75c119e2 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_baseline_rules_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.get( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SynapseBaselineRules_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_list.py new file mode 100644 index 000000000000..68c50833e5f5 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_list.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_baseline_rules_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SynapseBaselineRules_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_put.py new file mode 100644 index 000000000000..fa009fbd2d4f --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_put.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_baseline_rules_put.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SynapseBaselineRules_Put.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_add.py new file mode 100644 index 000000000000..57ff2a5c664a --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_add.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python virtual_machine_baseline_rules_add.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.add( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/VirtualMachineBaselineRules_Add.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_delete.py new file mode 100644 index 000000000000..893af2bd5656 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_delete.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python virtual_machine_baseline_rules_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.sql_vulnerability_assessment_baseline_rules.delete( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", + rule_id="VA1234", + ) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/VirtualMachineBaselineRules_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_get.py new file mode 100644 index 000000000000..bad687b857e5 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python virtual_machine_baseline_rules_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.get( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/VirtualMachineBaselineRules_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_list.py new file mode 100644 index 000000000000..9e17a884f889 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_list.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python virtual_machine_baseline_rules_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/VirtualMachineBaselineRules_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_put.py new file mode 100644 index 000000000000..405f91fd7ab4 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_put.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python virtual_machine_baseline_rules_put.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", + rule_id="VA1234", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/VirtualMachineBaselineRules_Put.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessment_scan_operations/arc_machine_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_get.py similarity index 90% rename from sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessment_scan_operations/arc_machine_scans_get.py rename to sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_get.py index b5463c16c8d7..95e7281dd9ce 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessment_scan_operations/arc_machine_scans_get.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_get.py @@ -33,12 +33,11 @@ def main(): response = client.sql_vulnerability_assessment_scans.get( scan_id="Scheduled-20200623", - workspace_id="55555555-6666-7777-8888-999999999999", resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_Get.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ArcMachineScans_Get.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessment_scan_operations/arc_machine_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_list.py similarity index 88% rename from sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessment_scan_operations/arc_machine_scans_list.py rename to sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_list.py index a0ee845eb3dd..b536a9384a2d 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessment_scan_operations/arc_machine_scans_list.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_list.py @@ -32,12 +32,12 @@ def main(): ) response = client.sql_vulnerability_assessment_scans.list( - workspace_id="55555555-6666-7777-8888-999999999999", resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", ) - print(response) + for item in response: + print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_List.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ArcMachineScans_List.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessment_scan_operations/arc_machine_scans_get_latest.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get.py similarity index 79% rename from sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessment_scan_operations/arc_machine_scans_get_latest.py rename to sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get.py index 7c320ceb60f8..fc28603e2845 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessment_scan_operations/arc_machine_scans_get_latest.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python arc_machine_scans_get_latest.py + python server_level_sql_managed_instance_scans_get.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -32,13 +32,12 @@ def main(): ) response = client.sql_vulnerability_assessment_scans.get( - scan_id="latest", - workspace_id="55555555-6666-7777-8888-999999999999", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_GetLatest.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlManagedInstanceScans_Get.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get_scan_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get_scan_operation_result.py new file mode 100644 index 000000000000..95ee88fd6f29 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get_scan_operation_result.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_managed_instance_scans_get_scan_operation_result.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.get_scan_operation_result( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", + operation_id="11111111-2222-3333-4444-555555555555", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlManagedInstanceScans_GetScanOperationResult.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_initiate_scan.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_initiate_scan.py new file mode 100644 index 000000000000..1761772e280e --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_initiate_scan.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_managed_instance_scans_initiate_scan.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.begin_initiate_scan( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", + ).result() + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlManagedInstanceScans_InitiateScan.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_list.py new file mode 100644 index 000000000000..93dea53f677b --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_list.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_managed_instance_scans_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlManagedInstanceScans_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get.py new file mode 100644 index 000000000000..396312f52b65 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_server_scans_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.get( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlServerScans_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get_scan_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get_scan_operation_result.py new file mode 100644 index 000000000000..03cb35ace7e6 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get_scan_operation_result.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_server_scans_get_scan_operation_result.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.get_scan_operation_result( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + operation_id="11111111-2222-3333-4444-555555555555", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlServerScans_GetScanOperationResult.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_initiate_scan.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_initiate_scan.py new file mode 100644 index 000000000000..a199148c337c --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_initiate_scan.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_server_scans_initiate_scan.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.begin_initiate_scan( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + ).result() + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlServerScans_InitiateScan.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_list_by_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_list.py similarity index 75% rename from sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_list_by_subscription_example.py rename to sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_list.py index 51934ba4ca9e..80eba700f05a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_list_by_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_list.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python custom_assessment_automation_list_by_subscription_example.py + python server_level_sql_server_scans_list.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -28,14 +28,16 @@ def main(): client = SecurityCenter( credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", + subscription_id="SUBSCRIPTION_ID", ) - response = client.custom_assessment_automations.list_by_subscription() + response = client.sql_vulnerability_assessment_scans.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + ) for item in response: print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationListBySubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlServerScans_List.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get.py new file mode 100644 index 000000000000..bffa802e9d31 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_synapse_scans_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.get( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SynapseScans_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get_scan_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get_scan_operation_result.py new file mode 100644 index 000000000000..2610a805178d --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get_scan_operation_result.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_synapse_scans_get_scan_operation_result.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.get_scan_operation_result( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + operation_id="11111111-2222-3333-4444-555555555555", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SynapseScans_GetScanOperationResult.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_initiate_scan.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_initiate_scan.py new file mode 100644 index 000000000000..9613f6cf944f --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_initiate_scan.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_synapse_scans_initiate_scan.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.begin_initiate_scan( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + ).result() + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SynapseScans_InitiateScan.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_list.py new file mode 100644 index 000000000000..4fdcfaa95fb8 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_list.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_synapse_scans_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SynapseScans_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get.py new file mode 100644 index 000000000000..beda93464b34 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_scans_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.get( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlManagedInstanceScans_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get_scan_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get_scan_operation_result.py new file mode 100644 index 000000000000..c1abf338e490 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get_scan_operation_result.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_scans_get_scan_operation_result.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.get_scan_operation_result( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", + operation_id="11111111-2222-3333-4444-555555555555", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlManagedInstanceScans_GetScanOperationResult.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_initiate_scan.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_initiate_scan.py new file mode 100644 index 000000000000..c381984c008c --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_initiate_scan.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_scans_initiate_scan.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.begin_initiate_scan( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", + ).result() + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlManagedInstanceScans_InitiateScan.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_list.py new file mode 100644 index 000000000000..462daa7d124e --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_list.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_scans_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlManagedInstanceScans_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get.py new file mode 100644 index 000000000000..fb0e23943576 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_scans_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.get( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlServerScans_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get_scan_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get_scan_operation_result.py new file mode 100644 index 000000000000..a37591848394 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get_scan_operation_result.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_scans_get_scan_operation_result.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.get_scan_operation_result( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", + operation_id="11111111-2222-3333-4444-555555555555", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlServerScans_GetScanOperationResult.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_initiate_scan.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_initiate_scan.py new file mode 100644 index 000000000000..97d8fddd77dd --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_initiate_scan.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_scans_initiate_scan.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.begin_initiate_scan( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", + ).result() + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlServerScans_InitiateScan.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_list_by_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_list.py similarity index 76% rename from sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_list_by_resource_group_example.py rename to sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_list.py index 8f9cd96807c9..3fcab9b9bc2d 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_assessment_automations/custom_assessment_automation_list_by_resource_group_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_list.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python custom_assessment_automation_list_by_resource_group_example.py + python sql_server_scans_list.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -28,16 +28,16 @@ def main(): client = SecurityCenter( credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", + subscription_id="SUBSCRIPTION_ID", ) - response = client.custom_assessment_automations.list_by_resource_group( - resource_group_name="TestResourceGroup", + response = client.sql_vulnerability_assessment_scans.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", ) for item in response: print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationListByResourceGroup_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlServerScans_List.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get.py new file mode 100644 index 000000000000..0a3fd8628036 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_scans_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.get( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SynapseScans_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get_scan_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get_scan_operation_result.py new file mode 100644 index 000000000000..a0d678f10be9 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get_scan_operation_result.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_scans_get_scan_operation_result.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.get_scan_operation_result( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/mySqlPool", + operation_id="11111111-2222-3333-4444-555555555555", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SynapseScans_GetScanOperationResult.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_initiate_scan.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_initiate_scan.py new file mode 100644 index 000000000000..622cc22386d0 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_initiate_scan.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_scans_initiate_scan.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.begin_initiate_scan( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", + ).result() + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SynapseScans_InitiateScan.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_list_by_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_list.py similarity index 75% rename from sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_list_by_resource_group_example.py rename to sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_list.py index 1ba042e38f44..0c04e1b42f11 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_entity_store_assignments/custom_entity_store_assignment_list_by_resource_group_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_list.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python custom_entity_store_assignment_list_by_resource_group_example.py + python synapse_scans_list.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -28,16 +28,16 @@ def main(): client = SecurityCenter( credential=DefaultAzureCredential(), - subscription_id="e5d1b86c-3051-44d5-8802-aa65d45a279b", + subscription_id="SUBSCRIPTION_ID", ) - response = client.custom_entity_store_assignments.list_by_resource_group( - resource_group_name="TestResourceGroup", + response = client.sql_vulnerability_assessment_scans.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", ) for item in response: print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentListByResourceGroup_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SynapseScans_List.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_get.py new file mode 100644 index 000000000000..f352cd3ab4be --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_get.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python virtual_machine_scans_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.get( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/VirtualMachineScans_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_list.py new file mode 100644 index 000000000000..9e96e68b2bb5 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_list.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python virtual_machine_scans_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scans.list( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/VirtualMachineScans_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_get.py index 50c7ac1f0d91..969fd6ddae78 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_get.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_get.py @@ -33,13 +33,12 @@ def main(): response = client.sql_vulnerability_assessment_scan_results.get( scan_id="Scheduled-20200623", - scan_result_id="VA2063", - workspace_id="55555555-6666-7777-8888-999999999999", + scan_result_id="VA1234", resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_Get.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_Get.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_list.py index 91e7ec1a3d15..e992fdeda0e4 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_list.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_list.py @@ -33,12 +33,12 @@ def main(): response = client.sql_vulnerability_assessment_scan_results.list( scan_id="Scheduled-20200623", - workspace_id="55555555-6666-7777-8888-999999999999", resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", ) - print(response) + for item in response: + print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_List.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_List.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_list_latest.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_get.py similarity index 78% rename from sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_list_latest.py rename to sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_get.py index b8755dfeb1e6..dc061c49a7dc 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_list_latest.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_get.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python arc_machine_scan_results_list_latest.py + python server_level_sql_managed_instance_scan_results_get.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -31,14 +31,14 @@ def main(): subscription_id="SUBSCRIPTION_ID", ) - response = client.sql_vulnerability_assessment_scan_results.list( - scan_id="latest", - workspace_id="55555555-6666-7777-8888-999999999999", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", + response = client.sql_vulnerability_assessment_scan_results.get( + scan_id="Scheduled-20200623", + scan_result_id="VA1234", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_ListLatest.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ServerLevel_SqlManagedInstanceScanResults_Get.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_list.py new file mode 100644 index 000000000000..2d4fea4b7233 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_list.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_managed_instance_scan_results_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scan_results.list( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ServerLevel_SqlManagedInstanceScanResults_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_get_latest.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_get.py similarity index 77% rename from sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_get_latest.py rename to sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_get.py index 7b447af16a9f..635b544ebd95 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_get_latest.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_get.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python arc_machine_scan_results_get_latest.py + python server_level_sql_server_scan_results_get.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -32,14 +32,13 @@ def main(): ) response = client.sql_vulnerability_assessment_scan_results.get( - scan_id="latest", - scan_result_id="VA2063", - workspace_id="55555555-6666-7777-8888-999999999999", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", + scan_id="Scheduled-20200623", + scan_result_id="VA1234", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_GetLatest.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ServerLevel_SqlServerScanResults_Get.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_list.py new file mode 100644 index 000000000000..8594068e88a5 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_list.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_sql_server_scan_results_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scan_results.list( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ServerLevel_SqlServerScanResults_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_get.py new file mode 100644 index 000000000000..8d6c0ea18424 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_get.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_synapse_scan_results_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scan_results.get( + scan_id="Scheduled-20200623", + scan_result_id="VA1234", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ServerLevel_SynapseScanResults_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_list.py new file mode 100644 index 000000000000..9533e46afb27 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_list.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python server_level_synapse_scan_results_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scan_results.list( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ServerLevel_SynapseScanResults_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_get.py new file mode 100644 index 000000000000..0d2b7934370f --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_get.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_scan_results_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scan_results.get( + scan_id="Scheduled-20200623", + scan_result_id="VA1234", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/SqlManagedInstanceScanResults_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_list.py new file mode 100644 index 000000000000..6db10b30b77c --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_list.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_scan_results_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scan_results.list( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/SqlManagedInstanceScanResults_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_get.py new file mode 100644 index 000000000000..1ab09553c6ed --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_get.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_scan_results_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scan_results.get( + scan_id="Scheduled-20200623", + scan_result_id="VA1234", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/SqlServerScanResults_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_list.py new file mode 100644 index 000000000000..0127b5a98dd0 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_list.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_scan_results_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scan_results.list( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/SqlServerScanResults_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_get.py new file mode 100644 index 000000000000..cd7465983dc8 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_get.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_scan_results_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scan_results.get( + scan_id="Scheduled-20200623", + scan_result_id="VA1234", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/SynapseScanResults_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_list.py new file mode 100644 index 000000000000..ce9eba184ba7 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_list.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_scan_results_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scan_results.list( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/SynapseScanResults_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_get.py new file mode 100644 index 000000000000..6c723a2940d8 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_get.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python virtual_machine_scan_results_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scan_results.get( + scan_id="Scheduled-20200623", + scan_result_id="VA1234", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/VirtualMachineScanResults_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_list.py new file mode 100644 index 000000000000..32c13b47b44c --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_list.py @@ -0,0 +1,44 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python virtual_machine_scan_results_list.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_scan_results.list( + scan_id="Scheduled-20200623", + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", + ) + for item in response: + print(item) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/VirtualMachineScanResults_List.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_delete.py new file mode 100644 index 000000000000..6bfbf5273c3d --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_delete.py @@ -0,0 +1,41 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_settings_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.sql_vulnerability_assessment_settings.delete( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", + ) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SqlManagedInstanceSettings_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_get.py new file mode 100644 index 000000000000..70a5d690ccdf --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_get.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_settings_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_settings.get( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SqlManagedInstanceSettings_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_put.py new file mode 100644 index 000000000000..622c8dfeb7da --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_put.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_managed_instance_settings_put.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_settings.create_or_update( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SqlManagedInstanceSettings_Put.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_delete.py new file mode 100644 index 000000000000..2e5eb2b66804 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_delete.py @@ -0,0 +1,41 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_settings_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.sql_vulnerability_assessment_settings.delete( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + ) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SqlServerSettings_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_get.py new file mode 100644 index 000000000000..d9da549b83b9 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_get.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_settings_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_settings.get( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SqlServerSettings_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_put.py new file mode 100644 index 000000000000..b9b53711011f --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_put.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python sql_server_settings_put.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_settings.create_or_update( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SqlServerSettings_Put.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_delete.py new file mode 100644 index 000000000000..c9a8b0a9d6b1 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_delete.py @@ -0,0 +1,41 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_settings_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.sql_vulnerability_assessment_settings.delete( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + ) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SynapseSettings_Delete.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_get.py new file mode 100644 index 000000000000..531def942f40 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_get.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_settings_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_settings.get( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SynapseSettings_Get.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_put.py new file mode 100644 index 000000000000..ec8bd68ba27a --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_put.py @@ -0,0 +1,42 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python synapse_settings_put.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.sql_vulnerability_assessment_settings.create_or_update( + resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SynapseSettings_Put.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/delete_standard_assignment.py b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/delete_standard_assignment.py index d8079f39e23d..644975b8a1c8 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/delete_standard_assignment.py +++ b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/delete_standard_assignment.py @@ -37,6 +37,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/StandardAssignments/DeleteStandardAssignment.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/StandardAssignments/DeleteStandardAssignment.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/get_standard_assignment.py b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/get_standard_assignment.py index fd661162a018..e15b5005f807 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/get_standard_assignment.py +++ b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/get_standard_assignment.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/StandardAssignments/GetStandardAssignment.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/StandardAssignments/GetStandardAssignment.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/list_standard_assignments.py b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/list_standard_assignments.py index de98ecb64ff6..07c49ee89f58 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/list_standard_assignments.py +++ b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/list_standard_assignments.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/StandardAssignments/ListStandardAssignments.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/StandardAssignments/ListStandardAssignments.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_exemption_standard_assignment.py b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_exemption_standard_assignment.py index ed8486bd4524..dc794a8919ba 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_exemption_standard_assignment.py +++ b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_exemption_standard_assignment.py @@ -53,6 +53,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/StandardAssignments/PutExemptionStandardAssignment.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/StandardAssignments/PutExemptionStandardAssignment.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_standard_assignment.py b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_standard_assignment.py index 0e9c0831b637..bd7bb42b77bd 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_standard_assignment.py +++ b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_standard_assignment.py @@ -49,6 +49,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-08-01/examples/StandardAssignments/PutStandardAssignment.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/StandardAssignments/PutStandardAssignment.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/connectors/delete_connector_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/standards/delete_standard_example.py similarity index 83% rename from sdk/security/azure-mgmt-security/generated_samples/connectors/delete_connector_subscription_example.py rename to sdk/security/azure-mgmt-security/generated_samples/standards/delete_standard_example.py index f773ca4d8d32..9cbf7486c1a4 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/connectors/delete_connector_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/standards/delete_standard_example.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python delete_connector_subscription_example.py + python delete_standard_example.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -31,11 +31,12 @@ def main(): subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", ) - client.connectors.delete( - connector_name="aws_dev1", + client.standards.delete( + resource_group_name="myResourceGroup", + standard_id="8bb8be0a-6010-4789-812f-e4d661c4ed0e", ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/DeleteConnectorSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Standards/DeleteStandard_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standards/get_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/standards/get_standard_example.py new file mode 100644 index 000000000000..8f5da4d0ecd8 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_samples/standards/get_standard_example.py @@ -0,0 +1,43 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.security import SecurityCenter + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-security +# USAGE + python get_standard_example.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = SecurityCenter( + credential=DefaultAzureCredential(), + subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", + ) + + response = client.standards.get( + resource_group_name="myResourceGroup", + standard_id="21300918-b2e3-0346-785f-c77ff57d243b", + ) + print(response) + + +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Standards/GetStandard_example.json +if __name__ == "__main__": + main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/connectors/get_list_connector_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/standards/list_by_subscription_standards_example.py similarity index 86% rename from sdk/security/azure-mgmt-security/generated_samples/connectors/get_list_connector_subscription_example.py rename to sdk/security/azure-mgmt-security/generated_samples/standards/list_by_subscription_standards_example.py index ba7bbfedbbf4..3137c9010124 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/connectors/get_list_connector_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/standards/list_by_subscription_standards_example.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python get_list_connector_subscription_example.py + python list_by_subscription_standards_example.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -31,11 +31,11 @@ def main(): subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", ) - response = client.connectors.list() + response = client.standards.list_by_subscription() for item in response: print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/GetListConnectorSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Standards/ListBySubscriptionStandards_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_contacts/get_security_contacts_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/standards/list_standards_example.py similarity index 85% rename from sdk/security/azure-mgmt-security/generated_samples/security_contacts/get_security_contacts_subscription_example.py rename to sdk/security/azure-mgmt-security/generated_samples/standards/list_standards_example.py index a8030b2d1387..6d06712633fb 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_contacts/get_security_contacts_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/standards/list_standards_example.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python get_security_contacts_subscription_example.py + python list_standards_example.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -31,11 +31,13 @@ def main(): subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", ) - response = client.security_contacts.list() + response = client.standards.list( + resource_group_name="myResourceGroup", + ) for item in response: print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/GetSecurityContactsSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Standards/ListStandards_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_contacts/create_security_contact_example.py b/sdk/security/azure-mgmt-security/generated_samples/standards/put_standard_example.py similarity index 66% rename from sdk/security/azure-mgmt-security/generated_samples/security_contacts/create_security_contact_example.py rename to sdk/security/azure-mgmt-security/generated_samples/standards/put_standard_example.py index 13179a7e18d6..e0df0cff3139 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/security_contacts/create_security_contact_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/standards/put_standard_example.py @@ -16,7 +16,7 @@ pip install azure-identity pip install azure-mgmt-security # USAGE - python create_security_contact_example.py + python put_standard_example.py Before run the sample, please set the values of the client ID, tenant ID and client secret of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, @@ -31,24 +31,25 @@ def main(): subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", ) - response = client.security_contacts.create( - security_contact_name="default", - security_contact={ + response = client.standards.create_or_update( + resource_group_name="myResourceGroup", + standard_id="8bb8be0a-6010-4789-812f-e4d661c4ed0e", + standard={ "properties": { - "emails": "john@contoso.com;jane@contoso.com", - "isEnabled": True, - "notificationsByRole": {"roles": ["Owner"], "state": "On"}, - "notificationsSources": [ - {"minimalRiskLevel": "Critical", "sourceType": "AttackPath"}, - {"minimalSeverity": "Medium", "sourceType": "Alert"}, + "category": "SecurityCenter", + "components": [ + {"key": "1195afff-c881-495e-9bc5-1486211ae03f"}, + {"key": "dbd0cb49-b563-45e7-9724-889e799fa648"}, ], - "phone": "(214)275-4038", + "description": "description of Azure Test Security Standard 1", + "displayName": "Azure Test Security Standard 1", + "supportedClouds": ["GCP"], } }, ) print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/CreateSecurityContact_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Standards/PutStandard_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/get_sub_assessment_example.py b/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/get_sub_assessment_example.py index 1d8214301d38..630a567f7dfd 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/get_sub_assessment_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/get_sub_assessment_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/GetSubAssessment_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/SubAssessments/GetSubAssessment_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_sub_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_sub_assessments_example.py index f29cdb4c6a25..688b2b0acda2 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_sub_assessments_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_sub_assessments_example.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubAssessments_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubAssessments_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_subscription_sub_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_subscription_sub_assessments_example.py index b9a134ee7f27..381e35042d08 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_subscription_sub_assessments_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_subscription_sub_assessments_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubscriptionSubAssessments_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubscriptionSubAssessments_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_resource_group_location_example.py index ac4e1d3a98f2..33368e813e16 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_resource_group_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_resource_group_location_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTaskResourceGroupLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/GetTaskResourceGroupLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_subscription_location_example.py index 321027b79721..96bc73b2f6f3 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_subscription_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_subscription_location_example.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTaskSubscriptionLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/GetTaskSubscriptionLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_resource_group_location_example.py index de9627d6d855..82ed389acf10 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_resource_group_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_resource_group_location_example.py @@ -39,6 +39,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksResourceGroupLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/GetTasksResourceGroupLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_example.py index 5053a811163c..d417915276bb 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_location_example.py index 2cde4fb644f2..33a67164a953 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_location_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscriptionLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscriptionLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_resource_group_location_example.py index 8e3832b6558a..210d2e5ed381 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_resource_group_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_resource_group_location_example.py @@ -39,6 +39,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskResourceGroupLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskResourceGroupLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_subscription_location_example.py index eaae0f41b8f1..1d4629bb9505 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_subscription_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_subscription_location_example.py @@ -38,6 +38,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskSubscriptionLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskSubscriptionLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_example.py b/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_example.py index 9296a841fe8b..d89c8c0d770f 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_example.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/Topology/GetTopology_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_example.py index 8528dc4a3b56..3d70a5f09f6c 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_location_example.py index 0851dcb13f06..235a34ba9737 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_location_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_location_example.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/create_workspace_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/create_workspace_setting_example.py index bd23eb305eb1..eea52892e6f1 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/create_workspace_setting_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/create_workspace_setting_example.py @@ -46,6 +46,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/CreateWorkspaceSetting_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/WorkspaceSettings/CreateWorkspaceSetting_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/delete_workspace_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/delete_workspace_setting_example.py index 3d7399f83461..a08d9310db8a 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/delete_workspace_setting_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/delete_workspace_setting_example.py @@ -36,6 +36,6 @@ def main(): ) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/DeleteWorkspaceSetting_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/WorkspaceSettings/DeleteWorkspaceSetting_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_setting_example.py index b34ff3adf05f..6f79c20a8e44 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_setting_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_setting_example.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSetting_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSetting_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_settings_example.py index 14e4ee89da17..fbea8b9a489f 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_settings_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_settings_example.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSettings_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSettings_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/update_workspace_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/update_workspace_setting_example.py index c9da3f9c3cbf..8e5873d78f25 100644 --- a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/update_workspace_setting_example.py +++ b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/update_workspace_setting_example.py @@ -45,6 +45,6 @@ def main(): print(response) -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/UpdateWorkspaceSetting_example.json +# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/WorkspaceSettings/UpdateWorkspaceSetting_example.json if __name__ == "__main__": main() diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations.py index 3b63a91c96f4..331d3ce20c38 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations.py @@ -22,7 +22,7 @@ def setup_method(self, method): @recorded_by_proxy def test_assessments_metadata_list(self, resource_group): response = self.client.assessments_metadata.list( - api_version="2025-05-04-preview", + api_version="2025-05-04", ) result = [r for r in response] # please add some check logic here by yourself @@ -33,7 +33,7 @@ def test_assessments_metadata_list(self, resource_group): def test_assessments_metadata_get(self, resource_group): response = self.client.assessments_metadata.get( assessment_metadata_name="str", - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself @@ -43,7 +43,7 @@ def test_assessments_metadata_get(self, resource_group): @recorded_by_proxy def test_assessments_metadata_list_by_subscription(self, resource_group): response = self.client.assessments_metadata.list_by_subscription( - api_version="2025-05-04-preview", + api_version="2025-05-04", ) result = [r for r in response] # please add some check logic here by yourself @@ -54,7 +54,7 @@ def test_assessments_metadata_list_by_subscription(self, resource_group): def test_assessments_metadata_get_in_subscription(self, resource_group): response = self.client.assessments_metadata.get_in_subscription( assessment_metadata_name="str", - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself @@ -86,7 +86,7 @@ def test_assessments_metadata_create_in_subscription(self, resource_group): "type": "str", "userImpact": "str", }, - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself @@ -97,7 +97,7 @@ def test_assessments_metadata_create_in_subscription(self, resource_group): def test_assessments_metadata_delete_in_subscription(self, resource_group): response = self.client.assessments_metadata.delete_in_subscription( assessment_metadata_name="str", - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations_async.py index 46c7fc1de5de..8c08d149e43d 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations_async.py @@ -23,7 +23,7 @@ def setup_method(self, method): @recorded_by_proxy_async async def test_assessments_metadata_list(self, resource_group): response = self.client.assessments_metadata.list( - api_version="2025-05-04-preview", + api_version="2025-05-04", ) result = [r async for r in response] # please add some check logic here by yourself @@ -34,7 +34,7 @@ async def test_assessments_metadata_list(self, resource_group): async def test_assessments_metadata_get(self, resource_group): response = await self.client.assessments_metadata.get( assessment_metadata_name="str", - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself @@ -44,7 +44,7 @@ async def test_assessments_metadata_get(self, resource_group): @recorded_by_proxy_async async def test_assessments_metadata_list_by_subscription(self, resource_group): response = self.client.assessments_metadata.list_by_subscription( - api_version="2025-05-04-preview", + api_version="2025-05-04", ) result = [r async for r in response] # please add some check logic here by yourself @@ -55,7 +55,7 @@ async def test_assessments_metadata_list_by_subscription(self, resource_group): async def test_assessments_metadata_get_in_subscription(self, resource_group): response = await self.client.assessments_metadata.get_in_subscription( assessment_metadata_name="str", - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself @@ -87,7 +87,7 @@ async def test_assessments_metadata_create_in_subscription(self, resource_group) "type": "str", "userImpact": "str", }, - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself @@ -98,7 +98,7 @@ async def test_assessments_metadata_create_in_subscription(self, resource_group) async def test_assessments_metadata_delete_in_subscription(self, resource_group): response = await self.client.assessments_metadata.delete_in_subscription( assessment_metadata_name="str", - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations.py index 1985fb63a10b..d6db46c56011 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations.py @@ -23,7 +23,7 @@ def setup_method(self, method): def test_assessments_list(self, resource_group): response = self.client.assessments.list( scope="str", - api_version="2025-05-04-preview", + api_version="2025-05-04", ) result = [r for r in response] # please add some check logic here by yourself @@ -35,7 +35,7 @@ def test_assessments_get(self, resource_group): response = self.client.assessments.get( resource_id="str", assessment_name="str", - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself @@ -85,7 +85,7 @@ def test_assessments_create_or_update(self, resource_group): "status": {"code": "str", "cause": "str", "description": "str"}, "type": "str", }, - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself @@ -97,7 +97,7 @@ def test_assessments_delete(self, resource_group): response = self.client.assessments.delete( resource_id="str", assessment_name="str", - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations_async.py index 1ff1179f8114..9a8bd2a36580 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations_async.py @@ -24,7 +24,7 @@ def setup_method(self, method): async def test_assessments_list(self, resource_group): response = self.client.assessments.list( scope="str", - api_version="2025-05-04-preview", + api_version="2025-05-04", ) result = [r async for r in response] # please add some check logic here by yourself @@ -36,7 +36,7 @@ async def test_assessments_get(self, resource_group): response = await self.client.assessments.get( resource_id="str", assessment_name="str", - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself @@ -86,7 +86,7 @@ async def test_assessments_create_or_update(self, resource_group): "status": {"code": "str", "cause": "str", "description": "str"}, "type": "str", }, - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself @@ -98,7 +98,7 @@ async def test_assessments_delete(self, resource_group): response = await self.client.assessments.delete( resource_id="str", assessment_name="str", - api_version="2025-05-04-preview", + api_version="2025-05-04", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations.py new file mode 100644 index 000000000000..43b9d22785f9 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations.py @@ -0,0 +1,102 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.security import SecurityCenter + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestSecurityCenterAssignmentsOperations(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(SecurityCenter) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_assignments_list_by_subscription(self, resource_group): + response = self.client.assignments.list_by_subscription( + api_version="2021-08-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_assignments_list(self, resource_group): + response = self.client.assignments.list( + resource_group_name=resource_group.name, + api_version="2021-08-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_assignments_get(self, resource_group): + response = self.client.assignments.get( + resource_group_name=resource_group.name, + assignment_id="str", + api_version="2021-08-01-preview", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_assignments_create_or_update(self, resource_group): + response = self.client.assignments.create_or_update( + resource_group_name=resource_group.name, + assignment_id="str", + assignment={ + "additionalData": {"exemptionCategory": "str"}, + "assignedComponent": {"key": "str"}, + "assignedStandard": {"id": "str"}, + "description": "str", + "displayName": "str", + "effect": "str", + "etag": "str", + "expiresOn": "2020-02-20 00:00:00", + "id": "str", + "kind": "str", + "location": "str", + "metadata": {}, + "name": "str", + "scope": "str", + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "tags": {"str": "str"}, + "type": "str", + }, + api_version="2021-08-01-preview", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_assignments_delete(self, resource_group): + response = self.client.assignments.delete( + resource_group_name=resource_group.name, + assignment_id="str", + api_version="2021-08-01-preview", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations_async.py new file mode 100644 index 000000000000..eede30a0b6da --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations_async.py @@ -0,0 +1,103 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.security.aio import SecurityCenter + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer +from devtools_testutils.aio import recorded_by_proxy_async + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestSecurityCenterAssignmentsOperationsAsync(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_assignments_list_by_subscription(self, resource_group): + response = self.client.assignments.list_by_subscription( + api_version="2021-08-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_assignments_list(self, resource_group): + response = self.client.assignments.list( + resource_group_name=resource_group.name, + api_version="2021-08-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_assignments_get(self, resource_group): + response = await self.client.assignments.get( + resource_group_name=resource_group.name, + assignment_id="str", + api_version="2021-08-01-preview", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_assignments_create_or_update(self, resource_group): + response = await self.client.assignments.create_or_update( + resource_group_name=resource_group.name, + assignment_id="str", + assignment={ + "additionalData": {"exemptionCategory": "str"}, + "assignedComponent": {"key": "str"}, + "assignedStandard": {"id": "str"}, + "description": "str", + "displayName": "str", + "effect": "str", + "etag": "str", + "expiresOn": "2020-02-20 00:00:00", + "id": "str", + "kind": "str", + "location": "str", + "metadata": {}, + "name": "str", + "scope": "str", + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "tags": {"str": "str"}, + "type": "str", + }, + api_version="2021-08-01-preview", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_assignments_delete(self, resource_group): + response = await self.client.assignments.delete( + resource_group_name=resource_group.name, + assignment_id="str", + api_version="2021-08-01-preview", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations.py index 242f29a874fd..639a3aa02f43 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations.py @@ -24,7 +24,7 @@ def test_azure_dev_ops_orgs_list_available(self, resource_group): response = self.client.azure_dev_ops_orgs.list_available( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -36,7 +36,7 @@ def test_azure_dev_ops_orgs_list(self, resource_group): response = self.client.azure_dev_ops_orgs.list( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r for r in response] # please add some check logic here by yourself @@ -49,7 +49,7 @@ def test_azure_dev_ops_orgs_get(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", org_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -87,7 +87,7 @@ def test_azure_dev_ops_orgs_begin_create_or_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself @@ -125,7 +125,7 @@ def test_azure_dev_ops_orgs_begin_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations_async.py index e44b7fdc7664..09678f7ed6e2 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations_async.py @@ -25,7 +25,7 @@ async def test_azure_dev_ops_orgs_list_available(self, resource_group): response = await self.client.azure_dev_ops_orgs.list_available( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -37,7 +37,7 @@ async def test_azure_dev_ops_orgs_list(self, resource_group): response = self.client.azure_dev_ops_orgs.list( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r async for r in response] # please add some check logic here by yourself @@ -50,7 +50,7 @@ async def test_azure_dev_ops_orgs_get(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", org_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -89,7 +89,7 @@ async def test_azure_dev_ops_orgs_begin_create_or_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ) ).result() # call '.result()' to poll until service return final result @@ -129,7 +129,7 @@ async def test_azure_dev_ops_orgs_begin_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ) ).result() # call '.result()' to poll until service return final result diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations.py index 99fdc6aa1546..ca35693a241f 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations.py @@ -25,7 +25,7 @@ def test_azure_dev_ops_projects_list(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", org_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r for r in response] # please add some check logic here by yourself @@ -39,7 +39,7 @@ def test_azure_dev_ops_projects_get(self, resource_group): security_connector_name="str", org_name="str", project_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -80,7 +80,7 @@ def test_azure_dev_ops_projects_begin_create_or_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself @@ -121,7 +121,7 @@ def test_azure_dev_ops_projects_begin_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations_async.py index 35e9318095c5..e03dd6032cf9 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations_async.py @@ -26,7 +26,7 @@ async def test_azure_dev_ops_projects_list(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", org_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r async for r in response] # please add some check logic here by yourself @@ -40,7 +40,7 @@ async def test_azure_dev_ops_projects_get(self, resource_group): security_connector_name="str", org_name="str", project_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -82,7 +82,7 @@ async def test_azure_dev_ops_projects_begin_create_or_update(self, resource_grou }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ) ).result() # call '.result()' to poll until service return final result @@ -125,7 +125,7 @@ async def test_azure_dev_ops_projects_begin_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ) ).result() # call '.result()' to poll until service return final result diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations.py index a4f796384dc6..7d2f316f1309 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations.py @@ -26,7 +26,7 @@ def test_azure_dev_ops_repos_list(self, resource_group): security_connector_name="str", org_name="str", project_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r for r in response] # please add some check logic here by yourself @@ -41,7 +41,7 @@ def test_azure_dev_ops_repos_get(self, resource_group): org_name="str", project_name="str", repo_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -86,7 +86,7 @@ def test_azure_dev_ops_repos_begin_create_or_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself @@ -131,7 +131,7 @@ def test_azure_dev_ops_repos_begin_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations_async.py index 6da2585e8ba5..93c64d52ac16 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations_async.py @@ -27,7 +27,7 @@ async def test_azure_dev_ops_repos_list(self, resource_group): security_connector_name="str", org_name="str", project_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r async for r in response] # please add some check logic here by yourself @@ -42,7 +42,7 @@ async def test_azure_dev_ops_repos_get(self, resource_group): org_name="str", project_name="str", repo_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -88,7 +88,7 @@ async def test_azure_dev_ops_repos_begin_create_or_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ) ).result() # call '.result()' to poll until service return final result @@ -135,7 +135,7 @@ async def test_azure_dev_ops_repos_begin_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ) ).result() # call '.result()' to poll until service return final result diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations.py index 30c2ec37f785..213351fa1a44 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations.py @@ -18,13 +18,24 @@ class TestSecurityCenterDefenderForStorageOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): self.client = self.create_mgmt_client(SecurityCenter) + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_defender_for_storage_list(self, resource_group): + response = self.client.defender_for_storage.list( + resource_id="str", + api_version="2025-09-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy def test_defender_for_storage_get(self, resource_group): response = self.client.defender_for_storage.get( resource_id="str", setting_name="str", - api_version="2025-02-01-preview", + api_version="2025-09-01-preview", ) # please add some check logic here by yourself @@ -42,7 +53,8 @@ def test_defender_for_storage_create(self, resource_group): "properties": { "isEnabled": bool, "malwareScanning": { - "blobScanResultsOptions": "str", + "automatedResponse": "None", + "blobScanResultsOptions": "BlobIndexTags", "onUpload": { "capGBPerMonth": 0, "filters": { @@ -60,7 +72,7 @@ def test_defender_for_storage_create(self, resource_group): }, "type": "str", }, - api_version="2025-02-01-preview", + api_version="2025-09-01-preview", ) # please add some check logic here by yourself @@ -72,7 +84,7 @@ def test_defender_for_storage_start_malware_scan(self, resource_group): response = self.client.defender_for_storage.start_malware_scan( resource_id="str", setting_name="str", - api_version="2025-02-01-preview", + api_version="2025-09-01-preview", ) # please add some check logic here by yourself @@ -85,7 +97,7 @@ def test_defender_for_storage_cancel_malware_scan(self, resource_group): resource_id="str", setting_name="str", scan_id="str", - api_version="2025-02-01-preview", + api_version="2025-09-01-preview", ) # please add some check logic here by yourself @@ -98,7 +110,7 @@ def test_defender_for_storage_get_malware_scan(self, resource_group): resource_id="str", setting_name="str", scan_id="str", - api_version="2025-02-01-preview", + api_version="2025-09-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations_async.py index f621d08f0d2b..587745c70fea 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations_async.py @@ -19,13 +19,24 @@ class TestSecurityCenterDefenderForStorageOperationsAsync(AzureMgmtRecordedTestC def setup_method(self, method): self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_defender_for_storage_list(self, resource_group): + response = self.client.defender_for_storage.list( + resource_id="str", + api_version="2025-09-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async async def test_defender_for_storage_get(self, resource_group): response = await self.client.defender_for_storage.get( resource_id="str", setting_name="str", - api_version="2025-02-01-preview", + api_version="2025-09-01-preview", ) # please add some check logic here by yourself @@ -43,7 +54,8 @@ async def test_defender_for_storage_create(self, resource_group): "properties": { "isEnabled": bool, "malwareScanning": { - "blobScanResultsOptions": "str", + "automatedResponse": "None", + "blobScanResultsOptions": "BlobIndexTags", "onUpload": { "capGBPerMonth": 0, "filters": { @@ -61,7 +73,7 @@ async def test_defender_for_storage_create(self, resource_group): }, "type": "str", }, - api_version="2025-02-01-preview", + api_version="2025-09-01-preview", ) # please add some check logic here by yourself @@ -73,7 +85,7 @@ async def test_defender_for_storage_start_malware_scan(self, resource_group): response = await self.client.defender_for_storage.start_malware_scan( resource_id="str", setting_name="str", - api_version="2025-02-01-preview", + api_version="2025-09-01-preview", ) # please add some check logic here by yourself @@ -86,7 +98,7 @@ async def test_defender_for_storage_cancel_malware_scan(self, resource_group): resource_id="str", setting_name="str", scan_id="str", - api_version="2025-02-01-preview", + api_version="2025-09-01-preview", ) # please add some check logic here by yourself @@ -99,7 +111,7 @@ async def test_defender_for_storage_get_malware_scan(self, resource_group): resource_id="str", setting_name="str", scan_id="str", - api_version="2025-02-01-preview", + api_version="2025-09-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations.py index e1b590100f96..b46bc28ce0a1 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations.py @@ -24,7 +24,7 @@ def test_dev_ops_configurations_list(self, resource_group): response = self.client.dev_ops_configurations.list( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r for r in response] # please add some check logic here by yourself @@ -36,7 +36,7 @@ def test_dev_ops_configurations_get(self, resource_group): response = self.client.dev_ops_configurations.get( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -77,7 +77,7 @@ def test_dev_ops_configurations_begin_create_or_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself @@ -118,7 +118,7 @@ def test_dev_ops_configurations_begin_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself @@ -130,7 +130,7 @@ def test_dev_ops_configurations_begin_delete(self, resource_group): response = self.client.dev_ops_configurations.begin_delete( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations_async.py index 6b7f833be113..a396aecc3abe 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations_async.py @@ -25,7 +25,7 @@ async def test_dev_ops_configurations_list(self, resource_group): response = self.client.dev_ops_configurations.list( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r async for r in response] # please add some check logic here by yourself @@ -37,7 +37,7 @@ async def test_dev_ops_configurations_get(self, resource_group): response = await self.client.dev_ops_configurations.get( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -79,7 +79,7 @@ async def test_dev_ops_configurations_begin_create_or_update(self, resource_grou }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ) ).result() # call '.result()' to poll until service return final result @@ -122,7 +122,7 @@ async def test_dev_ops_configurations_begin_update(self, resource_group): }, "type": "str", }, - api_version="2025-03-01", + api_version="2025-11-01-preview", ) ).result() # call '.result()' to poll until service return final result @@ -136,7 +136,7 @@ async def test_dev_ops_configurations_begin_delete(self, resource_group): await self.client.dev_ops_configurations.begin_delete( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) ).result() # call '.result()' to poll until service return final result diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations.py index ac4724a71c0d..67161b7c1a98 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations.py @@ -25,7 +25,7 @@ def test_dev_ops_operation_results_get(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", operation_result_id="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations_async.py index b03580a67e1e..e770a518cb3d 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations_async.py @@ -26,7 +26,7 @@ async def test_dev_ops_operation_results_get(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", operation_result_id="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations.py new file mode 100644 index 000000000000..3b244fec9253 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.security import SecurityCenter + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestSecurityCenterGitHubIssuesOperations(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(SecurityCenter) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_git_hub_issues_begin_create(self, resource_group): + response = self.client.git_hub_issues.begin_create( + resource_group_name=resource_group.name, + security_connector_name="str", + owner_name="str", + repo_name="str", + api_version="2025-11-01-preview", + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations_async.py new file mode 100644 index 000000000000..75f39a80a28e --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations_async.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.security.aio import SecurityCenter + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer +from devtools_testutils.aio import recorded_by_proxy_async + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestSecurityCenterGitHubIssuesOperationsAsync(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_git_hub_issues_begin_create(self, resource_group): + response = await ( + await self.client.git_hub_issues.begin_create( + resource_group_name=resource_group.name, + security_connector_name="str", + owner_name="str", + repo_name="str", + api_version="2025-11-01-preview", + ) + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations.py index a9a218bced77..29475caaaef8 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations.py @@ -24,7 +24,7 @@ def test_git_hub_owners_list_available(self, resource_group): response = self.client.git_hub_owners.list_available( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -36,7 +36,7 @@ def test_git_hub_owners_list(self, resource_group): response = self.client.git_hub_owners.list( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r for r in response] # please add some check logic here by yourself @@ -49,7 +49,7 @@ def test_git_hub_owners_get(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", owner_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations_async.py index 68fb05af7942..1ff92b85b896 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations_async.py @@ -25,7 +25,7 @@ async def test_git_hub_owners_list_available(self, resource_group): response = await self.client.git_hub_owners.list_available( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -37,7 +37,7 @@ async def test_git_hub_owners_list(self, resource_group): response = self.client.git_hub_owners.list( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r async for r in response] # please add some check logic here by yourself @@ -50,7 +50,7 @@ async def test_git_hub_owners_get(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", owner_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations.py index 71a6c9847dad..7e586e70c5c5 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations.py @@ -25,7 +25,7 @@ def test_git_hub_repos_list(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", owner_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r for r in response] # please add some check logic here by yourself @@ -39,7 +39,7 @@ def test_git_hub_repos_get(self, resource_group): security_connector_name="str", owner_name="str", repo_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations_async.py index b3e4b9022f22..c80a265d523b 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations_async.py @@ -26,7 +26,7 @@ async def test_git_hub_repos_list(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", owner_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r async for r in response] # please add some check logic here by yourself @@ -40,7 +40,7 @@ async def test_git_hub_repos_get(self, resource_group): security_connector_name="str", owner_name="str", repo_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations.py index 07bde8d40e31..77d80288e670 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations.py @@ -24,7 +24,7 @@ def test_git_lab_groups_list_available(self, resource_group): response = self.client.git_lab_groups.list_available( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -36,7 +36,7 @@ def test_git_lab_groups_list(self, resource_group): response = self.client.git_lab_groups.list( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r for r in response] # please add some check logic here by yourself @@ -49,7 +49,7 @@ def test_git_lab_groups_get(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", group_fq_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations_async.py index e99e754d2a53..60c4b4783d75 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations_async.py @@ -25,7 +25,7 @@ async def test_git_lab_groups_list_available(self, resource_group): response = await self.client.git_lab_groups.list_available( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself @@ -37,7 +37,7 @@ async def test_git_lab_groups_list(self, resource_group): response = self.client.git_lab_groups.list( resource_group_name=resource_group.name, security_connector_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r async for r in response] # please add some check logic here by yourself @@ -50,7 +50,7 @@ async def test_git_lab_groups_get(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", group_fq_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations.py index 0a90e0171bc4..5fc642384e70 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations.py @@ -25,7 +25,7 @@ def test_git_lab_projects_list(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", group_fq_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r for r in response] # please add some check logic here by yourself @@ -39,7 +39,7 @@ def test_git_lab_projects_get(self, resource_group): security_connector_name="str", group_fq_name="str", project_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations_async.py index 95451bc6309e..0d85ce266889 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations_async.py @@ -26,7 +26,7 @@ async def test_git_lab_projects_list(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", group_fq_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) result = [r async for r in response] # please add some check logic here by yourself @@ -40,7 +40,7 @@ async def test_git_lab_projects_get(self, resource_group): security_connector_name="str", group_fq_name="str", project_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations.py index d2c96d831a1e..6ba428b7c89a 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations.py @@ -25,7 +25,7 @@ def test_git_lab_subgroups_list(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", group_fq_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations_async.py index 2380cc2f72c4..53760c651a4c 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations_async.py @@ -26,7 +26,7 @@ async def test_git_lab_subgroups_list(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", group_fq_name="str", - api_version="2025-03-01", + api_version="2025-11-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations.py new file mode 100644 index 000000000000..747788c3f136 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations.py @@ -0,0 +1,31 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.security import SecurityCenter + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestSecurityCenterOperationResultsOperations(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(SecurityCenter) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_operation_results_get(self, resource_group): + response = self.client.operation_results.get( + location="str", + operation_id="str", + api_version="2025-10-01-preview", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations_async.py new file mode 100644 index 000000000000..cb3d60e4c637 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations_async.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.security.aio import SecurityCenter + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer +from devtools_testutils.aio import recorded_by_proxy_async + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestSecurityCenterOperationResultsOperationsAsync(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_operation_results_get(self, resource_group): + response = await self.client.operation_results.get( + location="str", + operation_id="str", + api_version="2025-10-01-preview", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations.py new file mode 100644 index 000000000000..71f4f4abf108 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations.py @@ -0,0 +1,31 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.security import SecurityCenter + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestSecurityCenterOperationStatusesOperations(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(SecurityCenter) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_operation_statuses_get(self, resource_group): + response = self.client.operation_statuses.get( + location="str", + operation_id="str", + api_version="2025-10-01-preview", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations_async.py new file mode 100644 index 000000000000..65d8711a1426 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations_async.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.security.aio import SecurityCenter + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer +from devtools_testutils.aio import recorded_by_proxy_async + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestSecurityCenterOperationStatusesOperationsAsync(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_operation_statuses_get(self, resource_group): + response = await self.client.operation_statuses.get( + location="str", + operation_id="str", + api_version="2025-10-01-preview", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations.py index 9492fcb8849c..bc28a4be1eb6 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations.py @@ -22,7 +22,7 @@ def setup_method(self, method): @recorded_by_proxy def test_operations_list(self, resource_group): response = self.client.operations.list( - api_version="2025-05-04-preview", + api_version="2025-10-01-preview", ) result = [r for r in response] # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations_async.py index 2cca94f8864e..17ebdc1a5ca1 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations_async.py @@ -23,7 +23,7 @@ def setup_method(self, method): @recorded_by_proxy_async async def test_operations_list(self, resource_group): response = self.client.operations.list( - api_version="2025-05-04-preview", + api_version="2025-10-01-preview", ) result = [r async for r in response] # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations.py index c236d2e4e7e6..46861b7aeeb2 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations.py @@ -24,7 +24,7 @@ def test_private_endpoint_connections_list(self, resource_group): response = self.client.private_endpoint_connections.list( resource_group_name=resource_group.name, private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) result = [r for r in response] # please add some check logic here by yourself @@ -37,7 +37,7 @@ def test_private_endpoint_connections_get(self, resource_group): resource_group_name=resource_group.name, private_endpoint_connection_name="str", private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) # please add some check logic here by yourself @@ -67,7 +67,7 @@ def test_private_endpoint_connections_begin_create_or_update(self, resource_grou }, "type": "str", }, - api_version="2025-09-01-preview", + api_version="2026-01-01", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself @@ -80,7 +80,7 @@ def test_private_endpoint_connections_begin_delete(self, resource_group): resource_group_name=resource_group.name, private_endpoint_connection_name="str", private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations_async.py index 4e4c827bd22d..7bc604b65ab1 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations_async.py @@ -25,7 +25,7 @@ async def test_private_endpoint_connections_list(self, resource_group): response = self.client.private_endpoint_connections.list( resource_group_name=resource_group.name, private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) result = [r async for r in response] # please add some check logic here by yourself @@ -38,7 +38,7 @@ async def test_private_endpoint_connections_get(self, resource_group): resource_group_name=resource_group.name, private_endpoint_connection_name="str", private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) # please add some check logic here by yourself @@ -73,7 +73,7 @@ async def test_private_endpoint_connections_begin_create_or_update(self, resourc }, "type": "str", }, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) ).result() # call '.result()' to poll until service return final result @@ -88,7 +88,7 @@ async def test_private_endpoint_connections_begin_delete(self, resource_group): resource_group_name=resource_group.name, private_endpoint_connection_name="str", private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) ).result() # call '.result()' to poll until service return final result diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations.py index 8f9568a963d4..63d2be392076 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations.py @@ -24,7 +24,7 @@ def test_private_link_resources_list(self, resource_group): response = self.client.private_link_resources.list( resource_group_name=resource_group.name, private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) result = [r for r in response] # please add some check logic here by yourself @@ -37,7 +37,7 @@ def test_private_link_resources_get(self, resource_group): resource_group_name=resource_group.name, group_id="str", private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations_async.py index 9f4ceb96aba0..a712a1b49f03 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations_async.py @@ -25,7 +25,7 @@ async def test_private_link_resources_list(self, resource_group): response = self.client.private_link_resources.list( resource_group_name=resource_group.name, private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) result = [r async for r in response] # please add some check logic here by yourself @@ -38,7 +38,7 @@ async def test_private_link_resources_get(self, resource_group): resource_group_name=resource_group.name, group_id="str", private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations.py index 8391279e1980..61b69d40d9e9 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations.py @@ -22,7 +22,7 @@ def setup_method(self, method): @recorded_by_proxy def test_private_links_list_by_subscription(self, resource_group): response = self.client.private_links.list_by_subscription( - api_version="2025-09-01-preview", + api_version="2026-01-01", ) result = [r for r in response] # please add some check logic here by yourself @@ -33,7 +33,7 @@ def test_private_links_list_by_subscription(self, resource_group): def test_private_links_list(self, resource_group): response = self.client.private_links.list( resource_group_name=resource_group.name, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) result = [r for r in response] # please add some check logic here by yourself @@ -45,7 +45,7 @@ def test_private_links_get(self, resource_group): response = self.client.private_links.get( resource_group_name=resource_group.name, private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) # please add some check logic here by yourself @@ -57,7 +57,7 @@ def test_private_links_head(self, resource_group): response = self.client.private_links.head( resource_group_name=resource_group.name, private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) # please add some check logic here by yourself @@ -115,6 +115,7 @@ def test_private_links_begin_create(self, resource_group): } ], "provisioningState": "str", + "publicNetworkAccess": "Disabled", "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -126,7 +127,7 @@ def test_private_links_begin_create(self, resource_group): "tags": {"str": "str"}, "type": "str", }, - api_version="2025-09-01-preview", + api_version="2026-01-01", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself @@ -139,7 +140,7 @@ def test_private_links_update(self, resource_group): resource_group_name=resource_group.name, private_link_parameters={"privateLinkName": "str"}, private_link={"tags": {"str": "str"}}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) # please add some check logic here by yourself @@ -151,7 +152,7 @@ def test_private_links_begin_delete(self, resource_group): response = self.client.private_links.begin_delete( resource_group_name=resource_group.name, private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations_async.py index c8f8949276c3..295cf7ed598d 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations_async.py @@ -23,7 +23,7 @@ def setup_method(self, method): @recorded_by_proxy_async async def test_private_links_list_by_subscription(self, resource_group): response = self.client.private_links.list_by_subscription( - api_version="2025-09-01-preview", + api_version="2026-01-01", ) result = [r async for r in response] # please add some check logic here by yourself @@ -34,7 +34,7 @@ async def test_private_links_list_by_subscription(self, resource_group): async def test_private_links_list(self, resource_group): response = self.client.private_links.list( resource_group_name=resource_group.name, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) result = [r async for r in response] # please add some check logic here by yourself @@ -46,7 +46,7 @@ async def test_private_links_get(self, resource_group): response = await self.client.private_links.get( resource_group_name=resource_group.name, private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) # please add some check logic here by yourself @@ -58,7 +58,7 @@ async def test_private_links_head(self, resource_group): response = await self.client.private_links.head( resource_group_name=resource_group.name, private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) # please add some check logic here by yourself @@ -117,6 +117,7 @@ async def test_private_links_begin_create(self, resource_group): } ], "provisioningState": "str", + "publicNetworkAccess": "Disabled", "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -128,7 +129,7 @@ async def test_private_links_begin_create(self, resource_group): "tags": {"str": "str"}, "type": "str", }, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) ).result() # call '.result()' to poll until service return final result @@ -142,7 +143,7 @@ async def test_private_links_update(self, resource_group): resource_group_name=resource_group.name, private_link_parameters={"privateLinkName": "str"}, private_link={"tags": {"str": "str"}}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) # please add some check logic here by yourself @@ -155,7 +156,7 @@ async def test_private_links_begin_delete(self, resource_group): await self.client.private_links.begin_delete( resource_group_name=resource_group.name, private_link_parameters={"privateLinkName": "str"}, - api_version="2025-09-01-preview", + api_version="2026-01-01", ) ).result() # call '.result()' to poll until service return final result diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations.py index 6b14dd56679d..68f078c69410 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations.py @@ -22,10 +22,9 @@ def setup_method(self, method): @recorded_by_proxy def test_sql_vulnerability_assessment_baseline_rules_create_or_update(self, resource_group): response = self.client.sql_vulnerability_assessment_baseline_rules.create_or_update( - rule_id="str", - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + rule_id="str", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself @@ -35,10 +34,9 @@ def test_sql_vulnerability_assessment_baseline_rules_create_or_update(self, reso @recorded_by_proxy def test_sql_vulnerability_assessment_baseline_rules_get(self, resource_group): response = self.client.sql_vulnerability_assessment_baseline_rules.get( - rule_id="str", - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + rule_id="str", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself @@ -48,10 +46,9 @@ def test_sql_vulnerability_assessment_baseline_rules_get(self, resource_group): @recorded_by_proxy def test_sql_vulnerability_assessment_baseline_rules_delete(self, resource_group): response = self.client.sql_vulnerability_assessment_baseline_rules.delete( - rule_id="str", - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + rule_id="str", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself @@ -61,11 +58,10 @@ def test_sql_vulnerability_assessment_baseline_rules_delete(self, resource_group @recorded_by_proxy def test_sql_vulnerability_assessment_baseline_rules_list(self, resource_group): response = self.client.sql_vulnerability_assessment_baseline_rules.list( - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + api_version="2026-04-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... @@ -73,9 +69,8 @@ def test_sql_vulnerability_assessment_baseline_rules_list(self, resource_group): @recorded_by_proxy def test_sql_vulnerability_assessment_baseline_rules_add(self, resource_group): response = self.client.sql_vulnerability_assessment_baseline_rules.add( - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations_async.py index 3ae7827f1874..ccdaa6a31603 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations_async.py @@ -23,10 +23,9 @@ def setup_method(self, method): @recorded_by_proxy_async async def test_sql_vulnerability_assessment_baseline_rules_create_or_update(self, resource_group): response = await self.client.sql_vulnerability_assessment_baseline_rules.create_or_update( - rule_id="str", - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + rule_id="str", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself @@ -36,10 +35,9 @@ async def test_sql_vulnerability_assessment_baseline_rules_create_or_update(self @recorded_by_proxy_async async def test_sql_vulnerability_assessment_baseline_rules_get(self, resource_group): response = await self.client.sql_vulnerability_assessment_baseline_rules.get( - rule_id="str", - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + rule_id="str", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself @@ -49,10 +47,9 @@ async def test_sql_vulnerability_assessment_baseline_rules_get(self, resource_gr @recorded_by_proxy_async async def test_sql_vulnerability_assessment_baseline_rules_delete(self, resource_group): response = await self.client.sql_vulnerability_assessment_baseline_rules.delete( - rule_id="str", - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + rule_id="str", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself @@ -61,12 +58,11 @@ async def test_sql_vulnerability_assessment_baseline_rules_delete(self, resource @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async async def test_sql_vulnerability_assessment_baseline_rules_list(self, resource_group): - response = await self.client.sql_vulnerability_assessment_baseline_rules.list( - workspace_id="str", + response = self.client.sql_vulnerability_assessment_baseline_rules.list( resource_id="str", - api_version="2023-02-01-preview", + api_version="2026-04-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... @@ -74,9 +70,8 @@ async def test_sql_vulnerability_assessment_baseline_rules_list(self, resource_g @recorded_by_proxy_async async def test_sql_vulnerability_assessment_baseline_rules_add(self, resource_group): response = await self.client.sql_vulnerability_assessment_baseline_rules.add( - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations.py index 521ad787fe31..6134c3af8e17 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations.py @@ -24,9 +24,8 @@ def test_sql_vulnerability_assessment_scan_results_get(self, resource_group): response = self.client.sql_vulnerability_assessment_scan_results.get( scan_id="str", scan_result_id="str", - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself @@ -37,10 +36,9 @@ def test_sql_vulnerability_assessment_scan_results_get(self, resource_group): def test_sql_vulnerability_assessment_scan_results_list(self, resource_group): response = self.client.sql_vulnerability_assessment_scan_results.list( scan_id="str", - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + api_version="2026-04-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations_async.py index da0ab7da05d2..6ffd1d4f8e87 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations_async.py @@ -25,9 +25,8 @@ async def test_sql_vulnerability_assessment_scan_results_get(self, resource_grou response = await self.client.sql_vulnerability_assessment_scan_results.get( scan_id="str", scan_result_id="str", - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself @@ -36,12 +35,11 @@ async def test_sql_vulnerability_assessment_scan_results_get(self, resource_grou @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async async def test_sql_vulnerability_assessment_scan_results_list(self, resource_group): - response = await self.client.sql_vulnerability_assessment_scan_results.list( + response = self.client.sql_vulnerability_assessment_scan_results.list( scan_id="str", - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + api_version="2026-04-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations.py index 1354aa186b2d..edabe2e064ab 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations.py @@ -23,9 +23,8 @@ def setup_method(self, method): def test_sql_vulnerability_assessment_scans_get(self, resource_group): response = self.client.sql_vulnerability_assessment_scans.get( scan_id="str", - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself @@ -35,9 +34,31 @@ def test_sql_vulnerability_assessment_scans_get(self, resource_group): @recorded_by_proxy def test_sql_vulnerability_assessment_scans_list(self, resource_group): response = self.client.sql_vulnerability_assessment_scans.list( - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + api_version="2026-04-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_sql_vulnerability_assessment_scans_begin_initiate_scan(self, resource_group): + response = self.client.sql_vulnerability_assessment_scans.begin_initiate_scan( + resource_id="str", + api_version="2026-04-01-preview", + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_sql_vulnerability_assessment_scans_get_scan_operation_result(self, resource_group): + response = self.client.sql_vulnerability_assessment_scans.get_scan_operation_result( + resource_id="str", + operation_id="str", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations_async.py index d2502faf0335..82da57b6e533 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations_async.py @@ -24,9 +24,8 @@ def setup_method(self, method): async def test_sql_vulnerability_assessment_scans_get(self, resource_group): response = await self.client.sql_vulnerability_assessment_scans.get( scan_id="str", - workspace_id="str", resource_id="str", - api_version="2023-02-01-preview", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself @@ -35,10 +34,34 @@ async def test_sql_vulnerability_assessment_scans_get(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async async def test_sql_vulnerability_assessment_scans_list(self, resource_group): - response = await self.client.sql_vulnerability_assessment_scans.list( - workspace_id="str", + response = self.client.sql_vulnerability_assessment_scans.list( resource_id="str", - api_version="2023-02-01-preview", + api_version="2026-04-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_sql_vulnerability_assessment_scans_begin_initiate_scan(self, resource_group): + response = await ( + await self.client.sql_vulnerability_assessment_scans.begin_initiate_scan( + resource_id="str", + api_version="2026-04-01-preview", + ) + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_sql_vulnerability_assessment_scans_get_scan_operation_result(self, resource_group): + response = await self.client.sql_vulnerability_assessment_scans.get_scan_operation_result( + resource_id="str", + operation_id="str", + api_version="2026-04-01-preview", ) # please add some check logic here by yourself diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations.py new file mode 100644 index 000000000000..34cafb1f73bb --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.security import SecurityCenter + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestSecurityCenterSqlVulnerabilityAssessmentSettingsOperations(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(SecurityCenter) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_sql_vulnerability_assessment_settings_get(self, resource_group): + response = self.client.sql_vulnerability_assessment_settings.get( + resource_id="str", + api_version="2026-04-01-preview", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_sql_vulnerability_assessment_settings_create_or_update(self, resource_group): + response = self.client.sql_vulnerability_assessment_settings.create_or_update( + resource_id="str", + api_version="2026-04-01-preview", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_sql_vulnerability_assessment_settings_delete(self, resource_group): + response = self.client.sql_vulnerability_assessment_settings.delete( + resource_id="str", + api_version="2026-04-01-preview", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations_async.py new file mode 100644 index 000000000000..5b49bf8f65cd --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations_async.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.security.aio import SecurityCenter + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer +from devtools_testutils.aio import recorded_by_proxy_async + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestSecurityCenterSqlVulnerabilityAssessmentSettingsOperationsAsync(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_sql_vulnerability_assessment_settings_get(self, resource_group): + response = await self.client.sql_vulnerability_assessment_settings.get( + resource_id="str", + api_version="2026-04-01-preview", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_sql_vulnerability_assessment_settings_create_or_update(self, resource_group): + response = await self.client.sql_vulnerability_assessment_settings.create_or_update( + resource_id="str", + api_version="2026-04-01-preview", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_sql_vulnerability_assessment_settings_delete(self, resource_group): + response = await self.client.sql_vulnerability_assessment_settings.delete( + resource_id="str", + api_version="2026-04-01-preview", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations.py new file mode 100644 index 000000000000..4c17cfae2091 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations.py @@ -0,0 +1,99 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.security import SecurityCenter + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestSecurityCenterStandardsOperations(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(SecurityCenter) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_standards_list_by_subscription(self, resource_group): + response = self.client.standards.list_by_subscription( + api_version="2021-08-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_standards_list(self, resource_group): + response = self.client.standards.list( + resource_group_name=resource_group.name, + api_version="2021-08-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_standards_get(self, resource_group): + response = self.client.standards.get( + resource_group_name=resource_group.name, + standard_id="str", + api_version="2021-08-01-preview", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_standards_create_or_update(self, resource_group): + response = self.client.standards.create_or_update( + resource_group_name=resource_group.name, + standard_id="str", + standard={ + "category": "str", + "components": [{"key": "str"}], + "description": "str", + "displayName": "str", + "etag": "str", + "id": "str", + "kind": "str", + "location": "str", + "name": "str", + "standardType": "str", + "supportedClouds": ["str"], + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "tags": {"str": "str"}, + "type": "str", + }, + api_version="2021-08-01-preview", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_standards_delete(self, resource_group): + response = self.client.standards.delete( + resource_group_name=resource_group.name, + standard_id="str", + api_version="2021-08-01-preview", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations_async.py new file mode 100644 index 000000000000..6586fcea63a9 --- /dev/null +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations_async.py @@ -0,0 +1,100 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.security.aio import SecurityCenter + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer +from devtools_testutils.aio import recorded_by_proxy_async + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestSecurityCenterStandardsOperationsAsync(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_standards_list_by_subscription(self, resource_group): + response = self.client.standards.list_by_subscription( + api_version="2021-08-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_standards_list(self, resource_group): + response = self.client.standards.list( + resource_group_name=resource_group.name, + api_version="2021-08-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_standards_get(self, resource_group): + response = await self.client.standards.get( + resource_group_name=resource_group.name, + standard_id="str", + api_version="2021-08-01-preview", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_standards_create_or_update(self, resource_group): + response = await self.client.standards.create_or_update( + resource_group_name=resource_group.name, + standard_id="str", + standard={ + "category": "str", + "components": [{"key": "str"}], + "description": "str", + "displayName": "str", + "etag": "str", + "id": "str", + "kind": "str", + "location": "str", + "name": "str", + "standardType": "str", + "supportedClouds": ["str"], + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "tags": {"str": "str"}, + "type": "str", + }, + api_version="2021-08-01-preview", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_standards_delete(self, resource_group): + response = await self.client.standards.delete( + resource_group_name=resource_group.name, + standard_id="str", + api_version="2021-08-01-preview", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/pyproject.toml b/sdk/security/azure-mgmt-security/pyproject.toml index a3006bd168dd..a301a26b53ce 100644 --- a/sdk/security/azure-mgmt-security/pyproject.toml +++ b/sdk/security/azure-mgmt-security/pyproject.toml @@ -1,3 +1,72 @@ +[build-system] +requires = [ + "setuptools>=77.0.3", + "wheel", +] +build-backend = "setuptools.build_meta" + +[project] +name = "azure-mgmt-security" +authors = [ + { name = "Microsoft Corporation", email = "azpysdkhelp@microsoft.com" }, +] +description = "Microsoft Azure Security Management Client Library for Python" +license = "MIT" +classifiers = [ + "Development Status :: 4 - Beta", + "Programming Language :: Python", + "Programming Language :: Python :: 3 :: Only", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", +] +requires-python = ">=3.9" +keywords = [ + "azure", + "azure sdk", +] +dependencies = [ + "isodate>=0.6.1", + "azure-mgmt-core>=1.6.0", + "typing-extensions>=4.6.0", +] +dynamic = [ + "version", + "readme", +] + +[project.urls] +repository = "https://github.com/Azure/azure-sdk-for-python" + +[tool.setuptools.dynamic.version] +attr = "azure.mgmt.security._version.VERSION" + +[tool.setuptools.dynamic.readme] +file = [ + "README.md", + "CHANGELOG.md", +] +content-type = "text/markdown" + +[tool.setuptools.packages.find] +exclude = [ + "tests*", + "generated_tests*", + "samples*", + "generated_samples*", + "doc*", + "azure", + "azure.mgmt", +] + +[tool.setuptools.package-data] +pytyped = [ + "py.typed", +] + [tool.azure-sdk-build] breaking = false mypy = false @@ -13,3 +82,7 @@ package_doc_id = "" is_stable = false is_arm = true title = "SecurityCenter" +need_msrestazure = false +need_azuremgmtcore = true +sample_link = "" +exclude_folders = "" diff --git a/sdk/security/azure-mgmt-security/setup.py b/sdk/security/azure-mgmt-security/setup.py deleted file mode 100644 index c5ee608bdd56..000000000000 --- a/sdk/security/azure-mgmt-security/setup.py +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/env python - -# ------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -------------------------------------------------------------------------- - -import re -import os.path -from io import open -from setuptools import find_packages, setup - -# Change the PACKAGE_NAME only to change folder and different name -PACKAGE_NAME = "azure-mgmt-security" -PACKAGE_PPRINT_NAME = "Security Center Management" - -# a-b-c => a/b/c -package_folder_path = PACKAGE_NAME.replace("-", "/") -# a-b-c => a.b.c -namespace_name = PACKAGE_NAME.replace("-", ".") - -# Version extraction inspired from 'requests' -with open( - os.path.join(package_folder_path, "version.py") - if os.path.exists(os.path.join(package_folder_path, "version.py")) - else os.path.join(package_folder_path, "_version.py"), - "r", -) as fd: - version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', fd.read(), re.MULTILINE).group(1) - -if not version: - raise RuntimeError("Cannot find version information") - -with open("README.md", encoding="utf-8") as f: - readme = f.read() -with open("CHANGELOG.md", encoding="utf-8") as f: - changelog = f.read() - -setup( - name=PACKAGE_NAME, - version=version, - description="Microsoft Azure {} Client Library for Python".format(PACKAGE_PPRINT_NAME), - long_description=readme + "\n\n" + changelog, - long_description_content_type="text/markdown", - license="MIT License", - author="Microsoft Corporation", - author_email="azpysdkhelp@microsoft.com", - url="https://github.com/Azure/azure-sdk-for-python", - keywords="azure, azure sdk", # update with search keywords relevant to the azure service / product - classifiers=[ - "Development Status :: 4 - Beta", - "Programming Language :: Python", - "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", - "Programming Language :: Python :: 3.12", - "Programming Language :: Python :: 3.13", - "License :: OSI Approved :: MIT License", - ], - zip_safe=False, - packages=find_packages( - exclude=[ - "tests", - # Exclude packages that will be covered by PEP420 or nspkg - "azure", - "azure.mgmt", - ] - ), - include_package_data=True, - package_data={ - "pytyped": ["py.typed"], - }, - install_requires=[ - "isodate>=0.6.1", - "typing-extensions>=4.6.0", - "azure-common>=1.1", - "azure-mgmt-core>=1.6.0", - ], - python_requires=">=3.9", -) From 7dcf9b84ffb09bc0bf5d843c465214bd2be54de3 Mon Sep 17 00:00:00 2001 From: ChenxiJiang333 Date: Fri, 24 Apr 2026 11:13:06 +0800 Subject: [PATCH 2/3] generated from typespec:2d517395f8a6a763c17ef6ed0594585a0f8be8c0 --- sdk/security/azure-mgmt-security/CHANGELOG.md | 2 +- .../azure-mgmt-security/_metadata.json | 45 +- .../apiview-properties.json | 2196 +- .../azure/mgmt/security/__init__.py | 6 +- .../{_security_center.py => _client.py} | 430 +- .../azure/mgmt/security/_configuration.py | 14 +- .../azure/mgmt/security/_patch.py | 4 +- .../azure/mgmt/security/_utils/__init__.py | 2 +- .../azure/mgmt/security/_utils/model_base.py | 1441 + .../mgmt/security/_utils/serialization.py | 2 +- .../azure/mgmt/security/_version.py | 5 +- .../azure/mgmt/security/aio/__init__.py | 6 +- .../aio/{_security_center.py => _client.py} | 442 +- .../azure/mgmt/security/aio/_configuration.py | 14 +- .../azure/mgmt/security/aio/_patch.py | 4 +- .../mgmt/security/aio/operations/__init__.py | 251 +- .../_advanced_threat_protection_operations.py | 234 - .../aio/operations/_alerts_operations.py | 1142 - .../_alerts_suppression_rules_operations.py | 360 - .../_allowed_connections_operations.py | 274 - .../operations/_api_collections_operations.py | 556 - .../aio/operations/_application_operations.py | 278 - .../operations/_applications_operations.py | 121 - .../_assessments_metadata_operations.py | 491 - .../aio/operations/_assessments_operations.py | 388 - .../aio/operations/_assignments_operations.py | 452 - .../_auto_provisioning_settings_operations.py | 297 - .../aio/operations/_automations_operations.py | 726 - .../_azure_dev_ops_orgs_operations.py | 709 - .../_azure_dev_ops_projects_operations.py | 673 - .../_azure_dev_ops_repos_operations.py | 711 - .../_compliance_results_operations.py | 183 - .../aio/operations/_compliances_operations.py | 185 - .../_custom_recommendations_operations.py | 397 - .../_defender_for_storage_operations.py | 508 - .../_dev_ops_configurations_operations.py | 729 - .../_dev_ops_operation_results_operations.py | 119 - .../_device_security_groups_operations.py | 381 - ...iscovered_security_solutions_operations.py | 268 - ..._external_security_solutions_operations.py | 268 - .../operations/_git_hub_issues_operations.py | 287 - .../operations/_git_hub_owners_operations.py | 262 - .../operations/_git_hub_repos_operations.py | 205 - .../operations/_git_lab_groups_operations.py | 262 - .../_git_lab_projects_operations.py | 214 - .../_git_lab_subgroups_operations.py | 119 - .../_governance_assignments_operations.py | 413 - .../_governance_rules_operations.py | 741 - .../operations/_health_reports_operations.py | 185 - ...ormation_protection_policies_operations.py | 342 - ..._security_solution_analytics_operations.py | 175 - .../_iot_security_solution_operations.py | 607 - ...s_analytics_aggregated_alert_operations.py | 265 - ...ons_analytics_recommendation_operations.py | 206 - ..._jit_network_access_policies_operations.py | 796 - .../aio/operations/_locations_operations.py | 172 - .../operations/_mde_onboardings_operations.py | 157 - .../_operation_results_operations.py | 112 - .../_operation_statuses_operations.py | 111 - .../security/aio/operations/_operations.py | 28453 +++- .../mgmt/security/aio/operations/_patch.py | 4 +- .../aio/operations/_pricings_operations.py | 384 - ...private_endpoint_connections_operations.py | 582 - .../_private_link_resources_operations.py | 208 - .../operations/_private_links_operations.py | 822 - ...atory_compliance_assessments_operations.py | 211 - ...gulatory_compliance_controls_operations.py | 195 - ...ulatory_compliance_standards_operations.py | 187 - ...re_score_control_definitions_operations.py | 195 - .../_secure_score_controls_operations.py | 206 - .../operations/_secure_scores_operations.py | 180 - ...curity_connector_application_operations.py | 327 - ...urity_connector_applications_operations.py | 130 - .../_security_connectors_operations.py | 592 - .../_security_operators_operations.py | 285 - .../_security_solutions_operations.py | 187 - ...ity_solutions_reference_data_operations.py | 164 - .../_security_standards_operations.py | 391 - .../_sensitivity_settings_operations.py | 265 - ...ver_vulnerability_assessment_operations.py | 391 - ...ability_assessments_settings_operations.py | 384 - .../aio/operations/_settings_operations.py | 299 - ...ty_assessment_baseline_rules_operations.py | 577 - ...lity_assessment_scan_results_operations.py | 209 - ...lnerability_assessment_scans_operations.py | 406 - ...rability_assessment_settings_operations.py | 296 - .../_standard_assignments_operations.py | 399 - .../aio/operations/_standards_operations.py | 447 - .../operations/_sub_assessments_operations.py | 269 - .../aio/operations/_tasks_operations.py | 522 - .../aio/operations/_topology_operations.py | 258 - .../_workspace_settings_operations.py | 474 - .../azure/mgmt/security/models/__init__.py | 486 +- .../{_security_center_enums.py => _enums.py} | 731 +- .../azure/mgmt/security/models/_models.py | 19019 +++ .../azure/mgmt/security/models/_models_py3.py | 23005 --- .../azure/mgmt/security/models/_patch.py | 4 +- .../mgmt/security/operations/__init__.py | 251 +- .../_advanced_threat_protection_operations.py | 295 - .../security/operations/_alerts_operations.py | 1628 - .../_alerts_suppression_rules_operations.py | 487 - .../_allowed_connections_operations.py | 364 - .../operations/_api_collections_operations.py | 778 - .../operations/_application_operations.py | 360 - .../operations/_applications_operations.py | 149 - .../_assessments_metadata_operations.py | 655 - .../operations/_assessments_operations.py | 491 - .../operations/_assignments_operations.py | 608 - .../_auto_provisioning_settings_operations.py | 384 - .../operations/_automations_operations.py | 964 - .../_azure_dev_ops_orgs_operations.py | 887 - .../_azure_dev_ops_projects_operations.py | 836 - .../_azure_dev_ops_repos_operations.py | 885 - .../_compliance_results_operations.py | 235 - .../operations/_compliances_operations.py | 235 - .../_custom_recommendations_operations.py | 517 - .../_defender_for_storage_operations.py | 689 - .../_dev_ops_configurations_operations.py | 897 - .../_dev_ops_operation_results_operations.py | 162 - .../_device_security_groups_operations.py | 484 - ...iscovered_security_solutions_operations.py | 362 - ..._external_security_solutions_operations.py | 362 - .../operations/_git_hub_issues_operations.py | 334 - .../operations/_git_hub_owners_operations.py | 370 - .../operations/_git_hub_repos_operations.py | 285 - .../operations/_git_lab_groups_operations.py | 370 - .../_git_lab_projects_operations.py | 294 - .../_git_lab_subgroups_operations.py | 158 - .../_governance_assignments_operations.py | 519 - .../_governance_rules_operations.py | 887 - .../operations/_health_reports_operations.py | 240 - ...ormation_protection_policies_operations.py | 429 - ..._security_solution_analytics_operations.py | 246 - .../_iot_security_solution_operations.py | 812 - ...s_analytics_aggregated_alert_operations.py | 371 - ...ons_analytics_recommendation_operations.py | 284 - ..._jit_network_access_policies_operations.py | 1090 - .../operations/_locations_operations.py | 228 - .../operations/_mde_onboardings_operations.py | 213 - .../_operation_results_operations.py | 148 - .../_operation_statuses_operations.py | 145 - .../mgmt/security/operations/_operations.py | 35503 ++++- .../azure/mgmt/security/operations/_patch.py | 4 +- .../operations/_pricings_operations.py | 487 - ...private_endpoint_connections_operations.py | 765 - .../_private_link_resources_operations.py | 295 - .../operations/_private_links_operations.py | 1086 - ...atory_compliance_assessments_operations.py | 301 - ...gulatory_compliance_controls_operations.py | 272 - ...ulatory_compliance_standards_operations.py | 246 - ...re_score_control_definitions_operations.py | 241 - .../_secure_score_controls_operations.py | 277 - .../operations/_secure_scores_operations.py | 236 - ...curity_connector_application_operations.py | 431 - ...urity_connector_applications_operations.py | 168 - .../_security_connectors_operations.py | 789 - .../_security_operators_operations.py | 443 - .../_security_solutions_operations.py | 251 - ...ity_solutions_reference_data_operations.py | 222 - .../_security_standards_operations.py | 497 - .../_sensitivity_settings_operations.py | 323 - ...ver_vulnerability_assessment_operations.py | 569 - ...ability_assessments_settings_operations.py | 509 - .../operations/_settings_operations.py | 391 - ...ty_assessment_baseline_rules_operations.py | 732 - ...lity_assessment_scan_results_operations.py | 276 - ...lnerability_assessment_scans_operations.py | 519 - ...rability_assessment_settings_operations.py | 369 - .../_standard_assignments_operations.py | 520 - .../operations/_standards_operations.py | 609 - .../operations/_sub_assessments_operations.py | 348 - .../security/operations/_tasks_operations.py | 761 - .../operations/_topology_operations.py | 352 - .../_workspace_settings_operations.py | 623 - .../code_report_typespec.json | 120818 +++++++++++++++ ...nced_threat_protection_settings_example.py | 42 - ...nced_threat_protection_settings_example.py | 48 - ...t_alert_resource_group_location_example.py | 44 - ...get_alert_subscription_location_example.py | 43 - .../get_alerts_resource_group_example.py | 43 - ..._alerts_resource_group_location_example.py | 44 - .../alerts/get_alerts_subscription_example.py | 41 - ...t_alerts_subscriptions_location_example.py | 43 - .../alerts/simulate_alerts_example.py | 57 - ...esource_group_location_activate_example.py | 43 - ...resource_group_location_dismiss_example.py | 43 - ...urce_group_location_in_progress_example.py | 43 - ...resource_group_location_resolve_example.py | 43 - ..._subscription_location_activate_example.py | 42 - ...t_subscription_location_dismiss_example.py | 42 - ...bscription_location_in_progress_example.py | 42 - ...t_subscription_location_resolve_example.py | 42 - .../delete_alerts_suppression_rule_example.py | 41 - .../get_alerts_suppression_rule_example.py | 42 - .../get_alerts_suppression_rules_example.py | 41 - ...ppression_rules_with_alert_type_example.py | 41 - .../put_alerts_suppression_rule_example.py | 57 - .../get_allowed_connections_example.py | 44 - ...llowed_connections_subscription_example.py | 41 - ...nnections_subscription_location_example.py | 43 - ...by_azure_api_management_service_example.py | 44 - ...by_azure_api_management_service_example.py | 44 - ...lections_list_by_resource_group_example.py | 43 - ...ollections_list_by_subscription_example.py | 41 - ...fboard_azure_api_management_api_example.py | 43 - ...nboard_azure_api_management_api_example.py | 44 - .../delete_application_example.py | 41 - ..._security_connector_application_example.py | 43 - .../applications/get_application_example.py | 42 - ..._security_connector_application_example.py | 44 - ...security_connector_applications_example.py | 44 - ...st_by_subscription_applications_example.py | 41 - .../applications/put_application_example.py | 50 - ..._security_connector_application_example.py | 52 - .../assessments/delete_assessment_example.py | 42 - .../assessments/get_assessment_example.py | 43 - .../get_assessment_with_expand_example.py | 43 - .../assessments/list_assessments_example.py | 43 - .../assessments/put_assessment_example.py | 44 - ...sessments_metadata_subscription_example.py | 53 - ...sessments_metadata_subscription_example.py | 41 - .../get_assessments_metadata_example.py | 42 - ...sessments_metadata_subscription_example.py | 42 - .../list_assessments_metadata_example.py | 41 - ...sessments_metadata_subscription_example.py | 41 - .../assignments/delete_assignment_example.py | 42 - .../assignments/get_assignment_example.py | 43 - .../assignments/list_assignments_example.py | 43 - ...ist_by_subscription_assignments_example.py | 41 - .../assignments/put_assignment_example.py | 58 - .../put_default_assignment_example.py | 54 - ...visioning_settings_subscription_example.py | 48 - ...ovisioning_setting_subscription_example.py | 42 - ...visioning_settings_subscription_example.py | 41 - .../automations/delete_automation_example.py | 42 - .../get_automation_resource_group_example.py | 43 - .../get_automations_resource_group_example.py | 43 - .../get_automations_subscription_example.py | 41 - .../automations/patch_automation_example.py | 67 - .../put_automation_all_assessments_example.py | 73 - ...ation_high_severity_assessments_example.py | 73 - .../put_disable_automation_example.py | 73 - .../validate_automation_example.py | 73 - .../get_compliance_results_example.py | 43 - .../list_compliance_results_example.py | 43 - .../compliances/get_compliance_example.py | 43 - .../compliances/get_compliances_example.py | 43 - ...ent_group_custom_recommendation_example.py | 42 - ...connector_custom_recommendation_example.py | 42 - ...scription_custom_recommendation_example.py | 42 - ...ent_group_custom_recommendation_example.py | 43 - ...connector_custom_recommendation_example.py | 43 - ...scription_custom_recommendation_example.py | 43 - ...nt_group_custom_recommendations_example.py | 43 - ...onnector_custom_recommendations_example.py | 43 - ...cription_custom_recommendations_example.py | 43 - ...ent_group_custom_recommendation_example.py | 54 - ...connector_custom_recommendation_example.py | 54 - ...scription_custom_recommendation_example.py | 54 - .../cancel_malware_scan_example.py | 44 - ...t_defender_for_storage_settings_example.py | 43 - .../get_malware_scan_example.py | 44 - ...t_defender_for_storage_settings_example.py | 43 - ...t_defender_for_storage_settings_example.py | 64 - .../start_malware_scan_example.py | 43 - .../delete_device_security_groups_example.py | 42 - .../get_device_security_groups_example.py | 43 - .../list_device_security_groups_example.py | 43 - .../put_device_security_groups_example.py | 56 - ...olution_resource_group_location_example.py | 44 - ...security_solutions_subscription_example.py | 41 - ...solutions_subscription_location_example.py | 43 - .../get_external_security_solution_example.py | 44 - ...security_solutions_subscription_example.py | 41 - ...solutions_subscription_location_example.py | 43 - .../delete_governance_assignment_example.py | 43 - .../get_governance_assignment_example.py | 44 - .../list_governance_assignments_example.py | 44 - .../put_governance_assignment_example.py | 57 - .../delete_governance_rule_example.py | 42 - ...anagement_group_governance_rule_example.py | 42 - ...urity_connector_governance_rule_example.py | 42 - .../get_governance_rule_example.py | 43 - ..._governance_rule_execute_status_example.py | 44 - ...anagement_group_governance_rule_example.py | 43 - ..._governance_rule_execute_status_example.py | 44 - ...urity_connector_governance_rule_example.py | 43 - ..._governance_rule_execute_status_example.py | 44 - ...nagement_group_governance_rules_example.py | 43 - ...rity_connector_governance_rules_example.py | 43 - ...y_subscription_governance_rules_example.py | 43 - .../post_governance_rule_example.py | 42 - ...anagement_group_governance_rule_example.py | 42 - ...urity_connector_governance_rule_example.py | 42 - .../put_governance_rule_example.py | 71 - ...anagement_group_governance_rule_example.py | 72 - ...urity_connector_governance_rule_example.py | 71 - .../get_health_reports_example.py | 43 - .../list_health_reports_example.py | 43 - ...e_information_protection_policy_example.py | 74 - ...m_information_protection_policy_example.py | 43 - ...e_information_protection_policy_example.py | 43 - ...information_protection_policies_example.py | 43 - .../create_io_tsecurity_solution.py | 66 - .../delete_io_tsecurity_solution.py | 42 - .../get_io_tsecurity_solution.py | 43 - .../get_io_tsecurity_solutions_list.py | 41 - ..._io_tsecurity_solutions_list_by_iot_hub.py | 41 - ...curity_solutions_list_by_iot_hub_and_rg.py | 43 - .../get_io_tsecurity_solutions_list_by_rg.py | 43 - .../update_io_tsecurity_solution.py | 56 - ...ity_solutions_security_aggregated_alert.py | 44 - ...olutions_security_aggregated_alert_list.py | 44 - ..._tsecurity_solutions_security_analytics.py | 43 - ...urity_solutions_security_analytics_list.py | 43 - ...urity_solutions_security_recommendation.py | 44 - ..._solutions_security_recommendation_list.py | 44 - ...tions_security_aggregated_alert_dismiss.py | 43 - ...reate_jit_network_access_policy_example.py | 93 - ...elete_jit_network_access_policy_example.py | 43 - ..._access_policies_resource_group_example.py | 43 - ...olicies_resource_group_location_example.py | 44 - ...rk_access_policies_subscription_example.py | 41 - ..._policies_subscription_location_example.py | 43 - .../get_jit_network_access_policy_example.py | 44 - ...tiate_jit_network_access_policy_example.py | 53 - .../locations/get_location_example.py | 42 - .../locations/get_locations_example.py | 41 - .../get_mde_onboardings_example.py | 40 - .../list_mde_onboardings_example.py | 40 - .../operation_results/get_operation_result.py | 42 - .../get_operation_status.py | 43 - .../operations/list_operations_example.py | 41 - ...urce_pricing_by_name_containers_example.py | 42 - .../delete_resource_pricing_example.py | 42 - ...t_pricing_by_name_cloud_posture_example.py | 43 - .../get_pricing_by_name_containers_example.py | 43 - .../get_pricing_by_name_dns_example.py | 43 - ...ricing_by_name_storage_accounts_example.py | 43 - ...ricing_by_name_virtual_machines_example.py | 43 - ...urce_pricing_by_name_containers_example.py | 43 - ...ricing_by_name_virtual_machines_example.py | 43 - .../pricings/list_pricings_example.py | 42 - .../list_pricings_with_plan_filter_example.py | 42 - .../list_resource_pricings_example.py | 42 - .../pricings/put_pricing_by_name_example.py | 44 - ...pricing_by_name_partial_success_example.py | 44 - .../put_pricing_vms_by_name_example.py | 44 - ..._pricing_by_name_containers_acr_example.py | 52 - ...urce_pricing_by_name_containers_example.py | 59 - ...ricing_by_name_virtual_machines_example.py | 44 - ...e_endpoint_connections_create_or_update.py | 53 - .../private_endpoint_connections_delete.py | 43 - .../private_endpoint_connections_get.py | 44 - .../private_endpoint_connections_list.py | 44 - .../private_link_resources_get.py | 44 - ...ate_link_resources_list_by_private_link.py | 44 - .../private_links/private_links_create.py | 48 - .../private_links/private_links_delete.py | 42 - .../private_links/private_links_get.py | 43 - .../private_links/private_links_head.py | 43 - .../private_links/private_links_list.py | 43 - .../private_links_list_by_subscription.py | 41 - .../private_links/private_links_update.py | 46 - ...egulatory_compliance_assessment_example.py | 44 - ...tory_compliance_assessment_list_example.py | 44 - ...t_regulatory_compliance_control_example.py | 43 - ...ulatory_compliance_control_list_example.py | 43 - ..._regulatory_compliance_standard_example.py | 42 - ...latory_compliance_standard_list_example.py | 41 - ...ecure_score_control_definitions_example.py | 41 - ...ontrol_definitions_subscription_example.py | 41 - .../get_secure_scores_single_example.py | 42 - .../list_secure_score_controls_example.py | 41 - ...score_controls_for_name_builtin_example.py | 43 - ...ls_for_name_with_expand_builtin_example.py | 43 - .../list_secure_scores_example.py | 41 - .../delete_security_connector_example.py | 42 - ...urity_connector_single_resource_example.py | 43 - ...urity_connectors_resource_group_example.py | 43 - ...ecurity_connectors_subscription_example.py | 41 - .../patch_security_connector_example.py | 59 - .../put_security_connector_example.py | 59 - .../create_git_hub_issues_example.py | 44 - ...te_or_update_azure_dev_ops_orgs_example.py | 47 - ...r_update_azure_dev_ops_projects_example.py | 48 - ...e_or_update_azure_dev_ops_repos_example.py | 49 - ...ions_onboard_current_and_future_example.py | 46 - ...igurations_onboard_current_only_example.py | 46 - ...configurations_onboard_selected_example.py | 50 - ...s_with_agentless_configurations_example.py | 56 - .../delete_dev_ops_configurations_example.py | 42 - .../get_azure_dev_ops_orgs_example.py | 44 - .../get_azure_dev_ops_projects_example.py | 45 - .../get_azure_dev_ops_repos_example.py | 46 - .../get_dev_ops_configurations_example.py | 43 - ...s_with_agentless_configurations_example.py | 43 - ...onfigurations_with_capabilities_example.py | 43 - ...ev_ops_operation_results_failed_example.py | 44 - ...ops_operation_results_succeeded_example.py | 44 - .../get_git_hub_owners_example.py | 44 - .../get_git_hub_repos_example.py | 45 - .../get_git_lab_groups_example.py | 44 - .../get_git_lab_projects_example.py | 45 - ...st_available_azure_dev_ops_orgs_example.py | 43 - .../list_available_git_hub_owners_example.py | 43 - .../list_available_git_lab_groups_example.py | 43 - .../list_azure_dev_ops_orgs_example.py | 44 - .../list_azure_dev_ops_projects_example.py | 45 - .../list_azure_dev_ops_repos_example.py | 46 - .../list_dev_ops_configurations_example.py | 44 - .../list_git_hub_owners_example.py | 44 - .../list_git_hub_repos_example.py | 45 - .../list_git_lab_groups_example.py | 44 - .../list_git_lab_projects_example.py | 45 - .../list_git_lab_subgroups_example.py | 44 - .../update_azure_dev_ops_orgs_example.py | 47 - .../update_azure_dev_ops_projects_example.py | 48 - .../update_azure_dev_ops_repos_example.py | 49 - .../update_dev_ops_configurations_example.py | 55 - ...elete_security_operator_by_name_example.py | 42 - .../get_security_operator_by_name_example.py | 43 - .../list_security_operators_example.py | 42 - .../put_security_operator_by_name_example.py | 43 - ...lutions_resource_group_location_example.py | 44 - ...security_solutions_subscription_example.py | 41 - ...ons_reference_data_subscription_example.py | 40 - ...ence_data_subscription_location_example.py | 42 - ...agement_group_security_standard_example.py | 42 - ...ity_connector_security_standard_example.py | 42 - ..._subscription_security_standard_example.py | 42 - ...agement_group_security_standard_example.py | 43 - ...ity_connector_security_standard_example.py | 43 - ..._subscription_security_standard_example.py | 43 - ...gement_group_security_standards_example.py | 43 - ...ty_connector_security_standards_example.py | 43 - ...subscription_security_standards_example.py | 43 - ...agement_group_security_standard_example.py | 55 - ...ity_connector_security_standard_example.py | 54 - ..._subscription_security_standard_example.py | 55 - .../get_sensitivity_settings_example.py | 40 - .../get_sensitivity_settings_list_example.py | 40 - .../put_sensitivity_settings_example.py | 50 - ...erver_vulnerability_assessments_example.py | 45 - ...erver_vulnerability_assessments_example.py | 44 - ...erver_vulnerability_assessments_example.py | 45 - ...erver_vulnerability_assessments_example.py | 45 - ...lnerability_assessments_setting_example.py | 41 - ...lnerability_assessments_setting_example.py | 42 - ...nerability_assessments_settings_example.py | 41 - ...lnerability_assessments_setting_example.py | 46 - .../settings/get_setting_example.py | 42 - .../settings/get_settings_example.py | 41 - .../settings/update_setting_example.py | 43 - .../arc_machine_baseline_rules_add.py | 42 - .../arc_machine_baseline_rules_delete.py | 42 - .../arc_machine_baseline_rules_get.py | 43 - .../arc_machine_baseline_rules_list.py | 43 - .../arc_machine_baseline_rules_put.py | 43 - ...sql_managed_instance_baseline_rules_add.py | 42 - ..._managed_instance_baseline_rules_delete.py | 42 - ...sql_managed_instance_baseline_rules_get.py | 43 - ...ql_managed_instance_baseline_rules_list.py | 43 - ...sql_managed_instance_baseline_rules_put.py | 43 - ...ver_level_sql_server_baseline_rules_add.py | 42 - ..._level_sql_server_baseline_rules_delete.py | 42 - ...ver_level_sql_server_baseline_rules_get.py | 43 - ...er_level_sql_server_baseline_rules_list.py | 43 - ...ver_level_sql_server_baseline_rules_put.py | 43 - ...server_level_synapse_baseline_rules_add.py | 42 - ...ver_level_synapse_baseline_rules_delete.py | 42 - ...server_level_synapse_baseline_rules_get.py | 43 - ...erver_level_synapse_baseline_rules_list.py | 43 - ...server_level_synapse_baseline_rules_put.py | 43 - ...sql_managed_instance_baseline_rules_add.py | 42 - ..._managed_instance_baseline_rules_delete.py | 42 - ...sql_managed_instance_baseline_rules_get.py | 43 - ...ql_managed_instance_baseline_rules_list.py | 43 - ...sql_managed_instance_baseline_rules_put.py | 43 - .../sql_server_baseline_rules_add.py | 42 - .../sql_server_baseline_rules_delete.py | 42 - .../sql_server_baseline_rules_get.py | 43 - .../sql_server_baseline_rules_list.py | 43 - .../sql_server_baseline_rules_put.py | 43 - .../synapse_baseline_rules_add.py | 42 - .../synapse_baseline_rules_delete.py | 42 - .../synapse_baseline_rules_get.py | 43 - .../synapse_baseline_rules_list.py | 43 - .../synapse_baseline_rules_put.py | 43 - .../virtual_machine_baseline_rules_add.py | 42 - .../virtual_machine_baseline_rules_delete.py | 42 - .../virtual_machine_baseline_rules_get.py | 43 - .../virtual_machine_baseline_rules_list.py | 43 - .../virtual_machine_baseline_rules_put.py | 43 - .../arc_machine_scans_get.py | 43 - .../arc_machine_scans_list.py | 43 - ...er_level_sql_managed_instance_scans_get.py | 43 - ...nstance_scans_get_scan_operation_result.py | 43 - ...ql_managed_instance_scans_initiate_scan.py | 42 - ...r_level_sql_managed_instance_scans_list.py | 43 - .../server_level_sql_server_scans_get.py | 43 - ..._server_scans_get_scan_operation_result.py | 43 - ...er_level_sql_server_scans_initiate_scan.py | 42 - .../server_level_sql_server_scans_list.py | 43 - .../server_level_synapse_scans_get.py | 43 - ...synapse_scans_get_scan_operation_result.py | 43 - ...erver_level_synapse_scans_initiate_scan.py | 42 - .../server_level_synapse_scans_list.py | 43 - .../sql_managed_instance_scans_get.py | 43 - ...nstance_scans_get_scan_operation_result.py | 43 - ...ql_managed_instance_scans_initiate_scan.py | 42 - .../sql_managed_instance_scans_list.py | 43 - .../sql_server_scans_get.py | 43 - ..._server_scans_get_scan_operation_result.py | 43 - .../sql_server_scans_initiate_scan.py | 42 - .../sql_server_scans_list.py | 43 - .../synapse_scans_get.py | 43 - ...synapse_scans_get_scan_operation_result.py | 43 - .../synapse_scans_initiate_scan.py | 42 - .../synapse_scans_list.py | 43 - .../virtual_machine_scans_get.py | 43 - .../virtual_machine_scans_list.py | 43 - .../arc_machine_scan_results_get.py | 44 - .../arc_machine_scan_results_list.py | 44 - ...l_sql_managed_instance_scan_results_get.py | 44 - ..._sql_managed_instance_scan_results_list.py | 44 - ...erver_level_sql_server_scan_results_get.py | 44 - ...rver_level_sql_server_scan_results_list.py | 44 - .../server_level_synapse_scan_results_get.py | 44 - .../server_level_synapse_scan_results_list.py | 44 - .../sql_managed_instance_scan_results_get.py | 44 - .../sql_managed_instance_scan_results_list.py | 44 - .../sql_server_scan_results_get.py | 44 - .../sql_server_scan_results_list.py | 44 - .../synapse_scan_results_get.py | 44 - .../synapse_scan_results_list.py | 44 - .../virtual_machine_scan_results_get.py | 44 - .../virtual_machine_scan_results_list.py | 44 - .../sql_managed_instance_settings_delete.py | 41 - .../sql_managed_instance_settings_get.py | 42 - .../sql_managed_instance_settings_put.py | 42 - .../sql_server_settings_delete.py | 41 - .../sql_server_settings_get.py | 42 - .../sql_server_settings_put.py | 42 - .../synapse_settings_delete.py | 41 - .../synapse_settings_get.py | 42 - .../synapse_settings_put.py | 42 - .../delete_standard_assignment.py | 42 - .../get_standard_assignment.py | 43 - .../list_standard_assignments.py | 43 - .../put_exemption_standard_assignment.py | 58 - .../put_standard_assignment.py | 54 - .../standards/delete_standard_example.py | 42 - .../standards/get_standard_example.py | 43 - .../list_by_subscription_standards_example.py | 41 - .../standards/list_standards_example.py | 43 - .../standards/put_standard_example.py | 55 - .../get_sub_assessment_example.py | 44 - .../list_sub_assessments_example.py | 44 - ...st_subscription_sub_assessments_example.py | 43 - ...et_task_resource_group_location_example.py | 44 - .../get_task_subscription_location_example.py | 43 - ...t_tasks_resource_group_location_example.py | 44 - .../tasks/get_tasks_subscription_example.py | 41 - ...get_tasks_subscription_location_example.py | 43 - ...te_task_resource_group_location_example.py | 44 - ...date_task_subscription_location_example.py | 43 - .../topology/get_topology_example.py | 44 - .../get_topology_subscription_example.py | 41 - ..._topology_subscription_location_example.py | 43 - .../create_workspace_setting_example.py | 51 - .../delete_workspace_setting_example.py | 41 - .../get_workspace_setting_example.py | 42 - .../get_workspace_settings_example.py | 41 - .../update_workspace_setting_example.py | 50 - .../generated_tests/conftest.py | 18 +- ...t_security_center_connectors_operations.py | 76 - ...rity_center_connectors_operations_async.py | 77 - ...ustom_assessment_automations_operations.py | 87 - ...assessment_automations_operations_async.py | 88 - ...tom_entity_store_assignments_operations.py | 77 - ...tity_store_assignments_operations_async.py | 78 - ..._center_software_inventories_operations.py | 58 - ...r_software_inventories_operations_async.py | 59 - ..._advanced_threat_protection_operations.py} | 23 +- ...ced_threat_protection_operations_async.py} | 23 +- ..._security_management_alerts_operations.py} | 88 +- ...ity_management_alerts_operations_async.py} | 88 +- ...nt_alerts_suppression_rules_operations.py} | 52 +- ...rts_suppression_rules_operations_async.py} | 52 +- ...agement_allowed_connections_operations.py} | 26 +- ...t_allowed_connections_operations_async.py} | 26 +- ..._management_api_collections_operations.py} | 60 +- ...ement_api_collections_operations_async.py} | 70 +- ...rity_management_application_operations.py} | 26 +- ...anagement_application_operations_async.py} | 26 +- ...ity_management_applications_operations.py} | 8 +- ...nagement_applications_operations_async.py} | 8 +- ...gement_assessments_metadata_operations.py} | 96 +- ..._assessments_metadata_operations_async.py} | 96 +- ...rity_management_assessments_operations.py} | 102 +- ...anagement_assessments_operations_async.py} | 102 +- ...rity_management_assignments_operations.py} | 70 +- ...anagement_assignments_operations_async.py} | 70 +- ..._auto_provisioning_settings_operations.py} | 41 +- ...provisioning_settings_operations_async.py} | 41 +- ...rity_management_automations_operations.py} | 198 +- ...anagement_automations_operations_async.py} | 198 +- ...nagement_azure_dev_ops_orgs_operations.py} | 56 +- ...nt_azure_dev_ops_orgs_operations_async.py} | 56 +- ...ment_azure_dev_ops_projects_operations.py} | 34 +- ...zure_dev_ops_projects_operations_async.py} | 34 +- ...agement_azure_dev_ops_repos_operations.py} | 36 +- ...t_azure_dev_ops_repos_operations_async.py} | 36 +- ...nagement_compliance_results_operations.py} | 26 +- ...nt_compliance_results_operations_async.py} | 26 +- ...rity_management_compliances_operations.py} | 22 +- ...anagement_compliances_operations_async.py} | 22 +- ...ment_custom_recommendations_operations.py} | 48 +- ...ustom_recommendations_operations_async.py} | 48 +- ...gement_defender_for_storage_operations.py} | 42 +- ..._defender_for_storage_operations_async.py} | 42 +- ...ment_dev_ops_configurations_operations.py} | 32 +- ...ev_ops_configurations_operations_async.py} | 32 +- ...t_dev_ops_operation_results_operations.py} | 8 +- ...ops_operation_results_operations_async.py} | 8 +- ...ment_device_security_groups_operations.py} | 94 +- ...evice_security_groups_operations_async.py} | 94 +- ...scovered_security_solutions_operations.py} | 26 +- ...ed_security_solutions_operations_async.py} | 26 +- ...external_security_solutions_operations.py} | 26 +- ...al_security_solutions_operations_async.py} | 26 +- ...y_management_git_hub_issues_operations.py} | 8 +- ...gement_git_hub_issues_operations_async.py} | 8 +- ...y_management_git_hub_owners_operations.py} | 18 +- ...gement_git_hub_owners_operations_async.py} | 18 +- ...ty_management_git_hub_repos_operations.py} | 22 +- ...agement_git_hub_repos_operations_async.py} | 22 +- ...y_management_git_lab_groups_operations.py} | 18 +- ...gement_git_lab_groups_operations_async.py} | 18 +- ...management_git_lab_projects_operations.py} | 22 +- ...ment_git_lab_projects_operations_async.py} | 22 +- ...anagement_git_lab_subgroups_operations.py} | 8 +- ...ent_git_lab_subgroups_operations_async.py} | 8 +- ...ment_governance_assignments_operations.py} | 60 +- ...overnance_assignments_operations_async.py} | 60 +- ...management_governance_rules_operations.py} | 84 +- ...ment_governance_rules_operations_async.py} | 84 +- ...y_management_health_reports_operations.py} | 26 +- ...gement_health_reports_operations_async.py} | 26 +- ...rmation_protection_policies_operations.py} | 48 +- ...n_protection_policies_operations_async.py} | 48 +- ...security_solution_analytics_operations.py} | 16 +- ...ty_solution_analytics_operations_async.py} | 16 +- ...ement_iot_security_solution_operations.py} | 80 +- ...iot_security_solution_operations_async.py} | 80 +- ..._analytics_aggregated_alert_operations.py} | 22 +- ...tics_aggregated_alert_operations_async.py} | 22 +- ...ns_analytics_recommendation_operations.py} | 8 +- ...lytics_recommendation_operations_async.py} | 8 +- ...jit_network_access_policies_operations.py} | 170 +- ...twork_access_policies_operations_async.py} | 170 +- ...curity_management_locations_operations.py} | 22 +- ..._management_locations_operations_async.py} | 22 +- ..._management_mde_onboardings_operations.py} | 18 +- ...ement_mde_onboardings_operations_async.py} | 18 +- ...anagement_operation_results_operations.py} | 8 +- ...ent_operation_results_operations_async.py} | 8 +- ...nagement_operation_statuses_operations.py} | 8 +- ...nt_operation_statuses_operations_async.py} | 8 +- ...=> test_security_management_operations.py} | 8 +- ...t_security_management_operations_async.py} | 8 +- ...ecurity_management_pricings_operations.py} | 56 +- ...y_management_pricings_operations_async.py} | 58 +- ...rivate_endpoint_connections_operations.py} | 50 +- ..._endpoint_connections_operations_async.py} | 52 +- ...ment_private_link_resources_operations.py} | 26 +- ...rivate_link_resources_operations_async.py} | 26 +- ...ty_management_private_links_operations.py} | 147 +- ...agement_private_links_operations_async.py} | 151 +- ...tory_compliance_assessments_operations.py} | 22 +- ...ompliance_assessments_operations_async.py} | 22 +- ...ulatory_compliance_controls_operations.py} | 22 +- ...y_compliance_controls_operations_async.py} | 22 +- ...latory_compliance_standards_operations.py} | 22 +- ..._compliance_standards_operations_async.py} | 22 +- ...e_score_control_definitions_operations.py} | 8 +- ...e_control_definitions_operations_async.py} | 8 +- ...ement_secure_score_controls_operations.py} | 8 +- ...secure_score_controls_operations_async.py} | 8 +- ...ty_management_secure_scores_operations.py} | 22 +- ...agement_secure_scores_operations_async.py} | 22 +- ...urity_connector_application_operations.py} | 26 +- ...connector_application_operations_async.py} | 26 +- ...rity_connector_applications_operations.py} | 8 +- ...onnector_applications_operations_async.py} | 8 +- ...agement_security_connectors_operations.py} | 74 +- ...t_security_connectors_operations_async.py} | 74 +- ...anagement_security_contacts_operations.py} | 48 +- ...ent_security_contacts_operations_async.py} | 48 +- ...nagement_security_operators_operations.py} | 28 +- ...nt_security_operators_operations_async.py} | 28 +- ...nagement_security_solutions_operations.py} | 26 +- ...nt_security_solutions_operations_async.py} | 26 +- ...ty_solutions_reference_data_operations.py} | 8 +- ...utions_reference_data_operations_async.py} | 8 +- ...nagement_security_standards_operations.py} | 62 +- ...nt_security_standards_operations_async.py} | 62 +- ...gement_sensitivity_settings_operations.py} | 28 +- ..._sensitivity_settings_operations_async.py} | 30 +- ...er_vulnerability_assessment_operations.py} | 36 +- ...nerability_assessment_operations_async.py} | 42 +- ...bility_assessments_settings_operations.py} | 30 +- ..._assessments_settings_operations_async.py} | 30 +- ...ecurity_management_settings_operations.py} | 42 +- ...y_management_settings_operations_async.py} | 42 +- ...y_assessment_baseline_rules_operations.py} | 16 +- ...ssment_baseline_rules_operations_async.py} | 16 +- ...ity_assessment_scan_results_operations.py} | 10 +- ...sessment_scan_results_operations_async.py} | 10 +- ...nerability_assessment_scans_operations.py} | 37 +- ...lity_assessment_scans_operations_async.py} | 49 +- ...ability_assessment_settings_operations.py} | 8 +- ...y_assessment_settings_operations_async.py} | 8 +- ...gement_standard_assignments_operations.py} | 54 +- ..._standard_assignments_operations_async.py} | 54 +- ...curity_management_standards_operations.py} | 64 +- ..._management_standards_operations_async.py} | 64 +- ..._management_sub_assessments_operations.py} | 24 +- ...ement_sub_assessments_operations_async.py} | 24 +- ...t_security_management_tasks_operations.py} | 54 +- ...rity_management_tasks_operations_async.py} | 54 +- ...ecurity_management_topology_operations.py} | 26 +- ...y_management_topology_operations_async.py} | 26 +- ...nagement_workspace_settings_operations.py} | 58 +- ...nt_workspace_settings_operations_async.py} | 58 +- .../azure-mgmt-security/tsp-location.yaml | 4 + 737 files changed, 211118 insertions(+), 108271 deletions(-) rename sdk/security/azure-mgmt-security/azure/mgmt/security/{_security_center.py => _client.py} (95%) create mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/model_base.py rename sdk/security/azure-mgmt-security/azure/mgmt/security/aio/{_security_center.py => _client.py} (95%) delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_advanced_threat_protection_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_suppression_rules_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_allowed_connections_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_api_collections_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_application_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_applications_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_metadata_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assignments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_auto_provisioning_settings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_automations_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_orgs_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_projects_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_repos_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliance_results_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliances_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_recommendations_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_defender_for_storage_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_configurations_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_operation_results_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_device_security_groups_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_discovered_security_solutions_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_external_security_solutions_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_issues_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_owners_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_repos_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_groups_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_projects_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_subgroups_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_assignments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_rules_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_health_reports_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_information_protection_policies_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_analytics_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_recommendation_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_jit_network_access_policies_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_locations_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_mde_onboardings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_results_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_statuses_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_pricings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_link_resources_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_links_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_assessments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_controls_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_standards_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_control_definitions_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_controls_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_scores_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_application_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_applications_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connectors_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_operators_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_reference_data_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_standards_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sensitivity_settings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessment_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessments_settings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_settings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_baseline_rules_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scan_results_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scans_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_settings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standard_assignments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standards_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sub_assessments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_tasks_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_topology_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_workspace_settings_operations.py rename sdk/security/azure-mgmt-security/azure/mgmt/security/models/{_security_center_enums.py => _enums.py} (71%) create mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/models/_models.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/models/_models_py3.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_advanced_threat_protection_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_suppression_rules_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_allowed_connections_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_api_collections_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_application_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_applications_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_metadata_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assignments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_auto_provisioning_settings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_automations_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_orgs_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_projects_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_repos_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliance_results_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliances_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_recommendations_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_defender_for_storage_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_configurations_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_operation_results_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_device_security_groups_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_discovered_security_solutions_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_external_security_solutions_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_issues_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_owners_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_repos_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_groups_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_projects_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_subgroups_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_assignments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_rules_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_health_reports_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_information_protection_policies_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_analytics_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_recommendation_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_jit_network_access_policies_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_locations_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_mde_onboardings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_results_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_statuses_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_pricings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_link_resources_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_links_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_assessments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_controls_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_standards_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_control_definitions_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_controls_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_scores_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_application_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_applications_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connectors_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_operators_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_reference_data_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_standards_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sensitivity_settings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessment_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessments_settings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_settings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_baseline_rules_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scan_results_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scans_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_settings_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standard_assignments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standards_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sub_assessments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_tasks_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_topology_operations.py delete mode 100644 sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_workspace_settings_operations.py create mode 100644 sdk/security/azure-mgmt-security/code_report_typespec.json delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/get_advanced_threat_protection_settings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/put_advanced_threat_protection_settings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_resource_group_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_subscription_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscriptions_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/simulate_alerts_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_activate_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_dismiss_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_in_progress_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_resolve_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_activate_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_dismiss_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_in_progress_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_resolve_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/delete_alerts_suppression_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_with_alert_type_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/put_alerts_suppression_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_get_by_azure_api_management_service_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_azure_api_management_service_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_resource_group_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_offboard_azure_api_management_api_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_onboard_azure_api_management_api_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/applications/delete_application_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/applications/delete_security_connector_application_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/applications/get_application_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/applications/get_security_connector_application_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/applications/list_by_security_connector_applications_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/applications/list_by_subscription_applications_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/applications/put_application_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/applications/put_security_connector_application_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assessments/delete_assessment_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_with_expand_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assessments/list_assessments_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assessments/put_assessment_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/create_assessments_metadata_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/delete_assessments_metadata_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assignments/delete_assignment_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assignments/get_assignment_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assignments/list_assignments_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assignments/list_by_subscription_assignments_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assignments/put_assignment_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/assignments/put_default_assignment_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/create_auto_provisioning_settings_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_setting_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_settings_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/delete_automation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/get_automation_resource_group_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_resource_group_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/patch_automation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_all_assessments_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_high_severity_assessments_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/put_disable_automation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/automations/validate_automation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/compliance_results/get_compliance_results_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/compliance_results/list_compliance_results_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliance_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliances_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_management_group_custom_recommendation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_security_connector_custom_recommendation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_subscription_custom_recommendation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_management_group_custom_recommendation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_security_connector_custom_recommendation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_subscription_custom_recommendation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_management_group_custom_recommendations_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_security_connector_custom_recommendations_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_subscription_custom_recommendations_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_management_group_custom_recommendation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_security_connector_custom_recommendation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_subscription_custom_recommendation_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/cancel_malware_scan_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_defender_for_storage_settings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_malware_scan_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/list_defender_for_storage_settings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/put_defender_for_storage_settings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/start_malware_scan_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/device_security_groups/delete_device_security_groups_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/device_security_groups/get_device_security_groups_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/device_security_groups/list_device_security_groups_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/device_security_groups/put_device_security_groups_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solution_resource_group_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solution_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_assignments/delete_governance_assignment_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_assignments/get_governance_assignment_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_assignments/list_governance_assignments_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_assignments/put_governance_assignment_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_governance_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_management_group_governance_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_security_connector_governance_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_execute_status_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_execute_status_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_execute_status_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_management_group_governance_rules_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_security_connector_governance_rules_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_subscription_governance_rules_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_governance_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_management_group_governance_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_security_connector_governance_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_governance_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_management_group_governance_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_security_connector_governance_rule_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/health_reports/get_health_reports_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/health_reports/list_health_reports_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/create_or_update_information_protection_policy_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_custom_information_protection_policy_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_effective_information_protection_policy_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/list_information_protection_policies_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/create_io_tsecurity_solution.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/delete_io_tsecurity_solution.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solution.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub_and_rg.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_rg.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/update_io_tsecurity_solution.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/post_io_tsecurity_solutions_security_aggregated_alert_dismiss.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/create_jit_network_access_policy_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/delete_jit_network_access_policy_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policy_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/initiate_jit_network_access_policy_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/locations/get_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/locations/get_locations_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/get_mde_onboardings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/list_mde_onboardings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/operation_results/get_operation_result.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/operation_statuses/get_operation_status.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/operations/list_operations_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_by_name_containers_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_cloud_posture_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_containers_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_dns_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_storage_accounts_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_virtual_machines_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_containers_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_virtual_machines_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_with_plan_filter_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/list_resource_pricings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_partial_success_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_vms_by_name_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_acr_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_virtual_machines_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_create_or_update.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_list_by_private_link.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_create.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_head.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list_by_subscription.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_update.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_list_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_list_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_list_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/secure_scores/get_secure_scores_single_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_builtin_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_with_expand_builtin_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_scores_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors/delete_security_connector_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connector_single_resource_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_resource_group_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors/patch_security_connector_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors/put_security_connector_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_git_hub_issues_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_orgs_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_projects_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_repos_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_and_future_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_only_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_selected_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_with_agentless_configurations_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/delete_dev_ops_configurations_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_orgs_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_projects_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_repos_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_agentless_configurations_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_capabilities_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_failed_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_succeeded_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_owners_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_repos_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_groups_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_projects_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_azure_dev_ops_orgs_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_hub_owners_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_lab_groups_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_orgs_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_projects_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_repos_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_dev_ops_configurations_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_owners_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_repos_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_groups_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_projects_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_subgroups_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_orgs_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_projects_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_repos_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_dev_ops_configurations_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_operators/delete_security_operator_by_name_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_operators/get_security_operator_by_name_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_operators/list_security_operators_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_operators/put_security_operator_by_name_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_resource_group_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_management_group_security_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_security_connector_security_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_subscription_security_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_management_group_security_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_security_connector_security_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_subscription_security_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_management_group_security_standards_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_security_connector_security_standards_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_subscription_security_standards_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_management_group_security_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_security_connector_security_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_subscription_security_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_list_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/put_sensitivity_settings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/create_server_vulnerability_assessments_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/delete_server_vulnerability_assessments_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/get_server_vulnerability_assessments_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/list_by_extended_resource_server_vulnerability_assessments_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/delete_server_vulnerability_assessments_setting_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/get_server_vulnerability_assessments_setting_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/list_server_vulnerability_assessments_settings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/put_server_vulnerability_assessments_setting_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/settings/get_setting_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/settings/get_settings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/settings/update_setting_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_add.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_put.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_add.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_put.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_add.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_put.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_add.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_put.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_add.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_put.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_add.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_put.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_add.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_put.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_add.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_put.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get_scan_operation_result.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_initiate_scan.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get_scan_operation_result.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_initiate_scan.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get_scan_operation_result.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_initiate_scan.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get_scan_operation_result.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_initiate_scan.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get_scan_operation_result.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_initiate_scan.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get_scan_operation_result.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_initiate_scan.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_list.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_put.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_put.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_delete.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_get.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_put.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/standard_assignments/delete_standard_assignment.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/standard_assignments/get_standard_assignment.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/standard_assignments/list_standard_assignments.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_exemption_standard_assignment.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_standard_assignment.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/standards/delete_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/standards/get_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/standards/list_by_subscription_standards_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/standards/list_standards_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/standards/put_standard_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sub_assessments/get_sub_assessment_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_sub_assessments_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_subscription_sub_assessments_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_resource_group_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_subscription_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_resource_group_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_resource_group_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_subscription_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_location_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/workspace_settings/create_workspace_setting_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/workspace_settings/delete_workspace_setting_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_setting_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_settings_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_samples/workspace_settings/update_workspace_setting_example.py delete mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_connectors_operations.py delete mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_connectors_operations_async.py delete mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_assessment_automations_operations.py delete mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_assessment_automations_operations_async.py delete mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_entity_store_assignments_operations.py delete mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_entity_store_assignments_operations_async.py delete mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_software_inventories_operations.py delete mode 100644 sdk/security/azure-mgmt-security/generated_tests/test_security_center_software_inventories_operations_async.py rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_advanced_threat_protection_operations.py => test_security_management_advanced_threat_protection_operations.py} (64%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_advanced_threat_protection_operations_async.py => test_security_management_advanced_threat_protection_operations_async.py} (64%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_alerts_operations.py => test_security_management_alerts_operations.py} (96%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_alerts_operations_async.py => test_security_management_alerts_operations_async.py} (96%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_alerts_suppression_rules_operations.py => test_security_management_alerts_suppression_rules_operations.py} (69%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_alerts_suppression_rules_operations_async.py => test_security_management_alerts_suppression_rules_operations_async.py} (70%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_allowed_connections_operations.py => test_security_management_allowed_connections_operations.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_allowed_connections_operations_async.py => test_security_management_allowed_connections_operations_async.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_api_collections_operations.py => test_security_management_api_collections_operations.py} (92%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_api_collections_operations_async.py => test_security_management_api_collections_operations_async.py} (92%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_application_operations.py => test_security_management_application_operations.py} (69%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_application_operations_async.py => test_security_management_application_operations_async.py} (69%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_applications_operations.py => test_security_management_applications_operations.py} (79%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_applications_operations_async.py => test_security_management_applications_operations_async.py} (79%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_assessments_metadata_operations.py => test_security_management_assessments_metadata_operations.py} (68%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_assessments_metadata_operations_async.py => test_security_management_assessments_metadata_operations_async.py} (69%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_assessments_operations.py => test_security_management_assessments_operations.py} (51%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_assessments_operations_async.py => test_security_management_assessments_operations_async.py} (52%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_assignments_operations.py => test_security_management_assignments_operations.py} (81%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_assignments_operations_async.py => test_security_management_assignments_operations_async.py} (81%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_auto_provisioning_settings_operations.py => test_security_management_auto_provisioning_settings_operations.py} (69%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_auto_provisioning_settings_operations_async.py => test_security_management_auto_provisioning_settings_operations_async.py} (69%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_automations_operations.py => test_security_management_automations_operations.py} (51%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_automations_operations_async.py => test_security_management_automations_operations_async.py} (52%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_azure_dev_ops_orgs_operations.py => test_security_management_azure_dev_ops_orgs_operations.py} (95%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_azure_dev_ops_orgs_operations_async.py => test_security_management_azure_dev_ops_orgs_operations_async.py} (95%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_azure_dev_ops_projects_operations.py => test_security_management_azure_dev_ops_projects_operations.py} (95%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_azure_dev_ops_projects_operations_async.py => test_security_management_azure_dev_ops_projects_operations_async.py} (95%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_azure_dev_ops_repos_operations.py => test_security_management_azure_dev_ops_repos_operations.py} (95%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_azure_dev_ops_repos_operations_async.py => test_security_management_azure_dev_ops_repos_operations_async.py} (95%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_compliance_results_operations.py => test_security_management_compliance_results_operations.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_compliance_results_operations_async.py => test_security_management_compliance_results_operations_async.py} (83%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_compliances_operations.py => test_security_management_compliances_operations.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_compliances_operations_async.py => test_security_management_compliances_operations_async.py} (83%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_custom_recommendations_operations.py => test_security_management_custom_recommendations_operations.py} (80%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_custom_recommendations_operations_async.py => test_security_management_custom_recommendations_operations_async.py} (80%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_defender_for_storage_operations.py => test_security_management_defender_for_storage_operations.py} (85%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_defender_for_storage_operations_async.py => test_security_management_defender_for_storage_operations_async.py} (85%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_dev_ops_configurations_operations.py => test_security_management_dev_ops_configurations_operations.py} (95%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_dev_ops_configurations_operations_async.py => test_security_management_dev_ops_configurations_operations_async.py} (95%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_dev_ops_operation_results_operations.py => test_security_management_dev_ops_operation_results_operations.py} (80%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_dev_ops_operation_results_operations_async.py => test_security_management_dev_ops_operation_results_operations_async.py} (80%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_device_security_groups_operations.py => test_security_management_device_security_groups_operations.py} (50%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_device_security_groups_operations_async.py => test_security_management_device_security_groups_operations_async.py} (51%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_discovered_security_solutions_operations.py => test_security_management_discovered_security_solutions_operations.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_discovered_security_solutions_operations_async.py => test_security_management_discovered_security_solutions_operations_async.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_external_security_solutions_operations.py => test_security_management_external_security_solutions_operations.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_external_security_solutions_operations_async.py => test_security_management_external_security_solutions_operations_async.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_git_hub_issues_operations.py => test_security_management_git_hub_issues_operations.py} (82%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_git_hub_issues_operations_async.py => test_security_management_git_hub_issues_operations_async.py} (82%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_git_hub_owners_operations.py => test_security_management_git_hub_owners_operations.py} (88%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_git_hub_owners_operations_async.py => test_security_management_git_hub_owners_operations_async.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_git_hub_repos_operations.py => test_security_management_git_hub_repos_operations.py} (86%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_git_hub_repos_operations_async.py => test_security_management_git_hub_repos_operations_async.py} (85%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_git_lab_groups_operations.py => test_security_management_git_lab_groups_operations.py} (88%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_git_lab_groups_operations_async.py => test_security_management_git_lab_groups_operations_async.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_git_lab_projects_operations.py => test_security_management_git_lab_projects_operations.py} (86%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_git_lab_projects_operations_async.py => test_security_management_git_lab_projects_operations_async.py} (85%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_git_lab_subgroups_operations.py => test_security_management_git_lab_subgroups_operations.py} (80%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_git_lab_subgroups_operations_async.py => test_security_management_git_lab_subgroups_operations_async.py} (80%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_governance_assignments_operations.py => test_security_management_governance_assignments_operations.py} (68%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_governance_assignments_operations_async.py => test_security_management_governance_assignments_operations_async.py} (68%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_governance_rules_operations.py => test_security_management_governance_rules_operations.py} (67%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_governance_rules_operations_async.py => test_security_management_governance_rules_operations_async.py} (68%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_health_reports_operations.py => test_security_management_health_reports_operations.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_health_reports_operations_async.py => test_security_management_health_reports_operations_async.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_information_protection_policies_operations.py => test_security_management_information_protection_policies_operations.py} (60%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_information_protection_policies_operations_async.py => test_security_management_information_protection_policies_operations_async.py} (60%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_iot_security_solution_analytics_operations.py => test_security_management_iot_security_solution_analytics_operations.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_iot_security_solution_analytics_operations_async.py => test_security_management_iot_security_solution_analytics_operations_async.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_iot_security_solution_operations.py => test_security_management_iot_security_solution_operations.py} (75%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_iot_security_solution_operations_async.py => test_security_management_iot_security_solution_operations_async.py} (75%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_iot_security_solutions_analytics_aggregated_alert_operations.py => test_security_management_iot_security_solutions_analytics_aggregated_alert_operations.py} (88%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_iot_security_solutions_analytics_aggregated_alert_operations_async.py => test_security_management_iot_security_solutions_analytics_aggregated_alert_operations_async.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_iot_security_solutions_analytics_recommendation_operations.py => test_security_management_iot_security_solutions_analytics_recommendation_operations.py} (85%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_iot_security_solutions_analytics_recommendation_operations_async.py => test_security_management_iot_security_solutions_analytics_recommendation_operations_async.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_jit_network_access_policies_operations.py => test_security_management_jit_network_access_policies_operations.py} (66%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_jit_network_access_policies_operations_async.py => test_security_management_jit_network_access_policies_operations_async.py} (67%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_locations_operations.py => test_security_management_locations_operations.py} (83%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_locations_operations_async.py => test_security_management_locations_operations_async.py} (83%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_mde_onboardings_operations.py => test_security_management_mde_onboardings_operations.py} (81%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_mde_onboardings_operations_async.py => test_security_management_mde_onboardings_operations_async.py} (77%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_operation_results_operations.py => test_security_management_operation_results_operations.py} (79%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_operation_results_operations_async.py => test_security_management_operation_results_operations_async.py} (79%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_operation_statuses_operations.py => test_security_management_operation_statuses_operations.py} (79%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_operation_statuses_operations_async.py => test_security_management_operation_statuses_operations_async.py} (79%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_operations.py => test_security_management_operations.py} (80%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_operations_async.py => test_security_management_operations_async.py} (79%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_pricings_operations.py => test_security_management_pricings_operations.py} (59%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_pricings_operations_async.py => test_security_management_pricings_operations_async.py} (58%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_private_endpoint_connections_operations.py => test_security_management_private_endpoint_connections_operations.py} (80%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_private_endpoint_connections_operations_async.py => test_security_management_private_endpoint_connections_operations_async.py} (79%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_private_link_resources_operations.py => test_security_management_private_link_resources_operations.py} (79%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_private_link_resources_operations_async.py => test_security_management_private_link_resources_operations_async.py} (79%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_private_links_operations.py => test_security_management_private_links_operations.py} (61%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_private_links_operations_async.py => test_security_management_private_links_operations_async.py} (59%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_regulatory_compliance_assessments_operations.py => test_security_management_regulatory_compliance_assessments_operations.py} (85%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_regulatory_compliance_assessments_operations_async.py => test_security_management_regulatory_compliance_assessments_operations_async.py} (85%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_regulatory_compliance_controls_operations.py => test_security_management_regulatory_compliance_controls_operations.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_regulatory_compliance_controls_operations_async.py => test_security_management_regulatory_compliance_controls_operations_async.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_regulatory_compliance_standards_operations.py => test_security_management_regulatory_compliance_standards_operations.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_regulatory_compliance_standards_operations_async.py => test_security_management_regulatory_compliance_standards_operations_async.py} (83%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_secure_score_control_definitions_operations.py => test_security_management_secure_score_control_definitions_operations.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_secure_score_control_definitions_operations_async.py => test_security_management_secure_score_control_definitions_operations_async.py} (83%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_secure_score_controls_operations.py => test_security_management_secure_score_controls_operations.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_secure_score_controls_operations_async.py => test_security_management_secure_score_controls_operations_async.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_secure_scores_operations.py => test_security_management_secure_scores_operations.py} (83%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_secure_scores_operations_async.py => test_security_management_secure_scores_operations_async.py} (83%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_connector_application_operations.py => test_security_management_security_connector_application_operations.py} (72%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_connector_application_operations_async.py => test_security_management_security_connector_application_operations_async.py} (73%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_connector_applications_operations.py => test_security_management_security_connector_applications_operations.py} (80%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_connector_applications_operations_async.py => test_security_management_security_connector_applications_operations_async.py} (80%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_connectors_operations.py => test_security_management_security_connectors_operations.py} (82%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_connectors_operations_async.py => test_security_management_security_connectors_operations_async.py} (82%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_contacts_operations.py => test_security_management_security_contacts_operations.py} (71%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_contacts_operations_async.py => test_security_management_security_contacts_operations_async.py} (71%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_operators_operations.py => test_security_management_security_operators_operations.py} (88%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_operators_operations_async.py => test_security_management_security_operators_operations_async.py} (85%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_solutions_operations.py => test_security_management_security_solutions_operations.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_solutions_operations_async.py => test_security_management_security_solutions_operations_async.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_solutions_reference_data_operations.py => test_security_management_security_solutions_reference_data_operations.py} (83%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_solutions_reference_data_operations_async.py => test_security_management_security_solutions_reference_data_operations_async.py} (83%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_standards_operations.py => test_security_management_security_standards_operations.py} (67%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_security_standards_operations_async.py => test_security_management_security_standards_operations_async.py} (67%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_sensitivity_settings_operations.py => test_security_management_sensitivity_settings_operations.py} (85%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_sensitivity_settings_operations_async.py => test_security_management_sensitivity_settings_operations_async.py} (82%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_server_vulnerability_assessment_operations.py => test_security_management_server_vulnerability_assessment_operations.py} (90%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_server_vulnerability_assessment_operations_async.py => test_security_management_server_vulnerability_assessment_operations_async.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_server_vulnerability_assessments_settings_operations.py => test_security_management_server_vulnerability_assessments_settings_operations.py} (89%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_server_vulnerability_assessments_settings_operations_async.py => test_security_management_server_vulnerability_assessments_settings_operations_async.py} (88%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_settings_operations.py => test_security_management_settings_operations.py} (67%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_settings_operations_async.py => test_security_management_settings_operations_async.py} (67%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_sql_vulnerability_assessment_baseline_rules_operations.py => test_security_management_sql_vulnerability_assessment_baseline_rules_operations.py} (90%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_sql_vulnerability_assessment_baseline_rules_operations_async.py => test_security_management_sql_vulnerability_assessment_baseline_rules_operations_async.py} (90%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_sql_vulnerability_assessment_scan_results_operations.py => test_security_management_sql_vulnerability_assessment_scan_results_operations.py} (81%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_sql_vulnerability_assessment_scan_results_operations_async.py => test_security_management_sql_vulnerability_assessment_scan_results_operations_async.py} (81%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_sql_vulnerability_assessment_scans_operations.py => test_security_management_sql_vulnerability_assessment_scans_operations.py} (88%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_sql_vulnerability_assessment_scans_operations_async.py => test_security_management_sql_vulnerability_assessment_scans_operations_async.py} (88%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_sql_vulnerability_assessment_settings_operations.py => test_security_management_sql_vulnerability_assessment_settings_operations.py} (86%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_sql_vulnerability_assessment_settings_operations_async.py => test_security_management_sql_vulnerability_assessment_settings_operations_async.py} (86%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_standard_assignments_operations.py => test_security_management_standard_assignments_operations.py} (61%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_standard_assignments_operations_async.py => test_security_management_standard_assignments_operations_async.py} (61%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_standards_operations.py => test_security_management_standards_operations.py} (85%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_standards_operations_async.py => test_security_management_standards_operations_async.py} (84%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_sub_assessments_operations.py => test_security_management_sub_assessments_operations.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_sub_assessments_operations_async.py => test_security_management_sub_assessments_operations_async.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_tasks_operations.py => test_security_management_tasks_operations.py} (93%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_tasks_operations_async.py => test_security_management_tasks_operations_async.py} (93%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_topology_operations.py => test_security_management_topology_operations.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_topology_operations_async.py => test_security_management_topology_operations_async.py} (87%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_workspace_settings_operations.py => test_security_management_workspace_settings_operations.py} (64%) rename sdk/security/azure-mgmt-security/generated_tests/{test_security_center_workspace_settings_operations_async.py => test_security_management_workspace_settings_operations_async.py} (65%) create mode 100644 sdk/security/azure-mgmt-security/tsp-location.yaml diff --git a/sdk/security/azure-mgmt-security/CHANGELOG.md b/sdk/security/azure-mgmt-security/CHANGELOG.md index 644c6ce02076..f90ecf1ebd69 100644 --- a/sdk/security/azure-mgmt-security/CHANGELOG.md +++ b/sdk/security/azure-mgmt-security/CHANGELOG.md @@ -1,6 +1,6 @@ # Release History -## 8.0.0b2 (2026-04-23) +## 8.0.0b2 (2026-04-24) skip changelog generation diff --git a/sdk/security/azure-mgmt-security/_metadata.json b/sdk/security/azure-mgmt-security/_metadata.json index d2791a03252a..42f84ec0643e 100644 --- a/sdk/security/azure-mgmt-security/_metadata.json +++ b/sdk/security/azure-mgmt-security/_metadata.json @@ -1,11 +1,40 @@ { - "commit": "f25aaa2c654cc4c873be6004a83d09aecab082ad", + "apiVersions": { + "ATPSettingsAPI": "2019-01-01", + "AlertsAPI": "2022-01-01", + "AlertsSuppressionRulesAPI": "2019-01-01-preview", + "ApiCollectionsAPI": "2023-11-15", + "ApplicationsAPI": "2022-07-01-preview", + "AssessmentAPI": "2025-05-04", + "AutomationsAPI": "2023-12-01-preview", + "ComplianceResultsAPI": "2017-08-01", + "DefenderForStorageAPI": "2025-09-01-preview", + "GovernanceAPI": "2022-01-01-preview", + "HealthReportsAPI": "2023-05-01-preview", + "IoTSecurityAPI": "2019-08-01", + "LegacySettingsAPI": "2017-08-01-preview", + "LocationsAPI": "2015-06-01-preview", + "MdeOnboardingAPI": "2021-10-01-preview", + "OperationsAPI": "2025-10-01-preview", + "PricingsAPI": "2024-01-01", + "PrivateLinksAPI": "2026-01-01", + "RegulatoryComplianceAPI": "2019-01-01-preview", + "SecureScoreAPI": "2020-01-01", + "SecurityConnectorsAPI": "2024-08-01-preview", + "SecurityConnectorsDevOpsAPI": "2025-11-01-preview", + "SecurityOperatorsAPI": "2023-01-01-preview", + "SecuritySolutionsAPI": "2020-01-01", + "SecurityStandardsAPI": "2024-08-01", + "SensitivitySettingsAPI": "2023-02-15-preview", + "ServerVulnerabilityAssessmentsSettingsAPI": "2023-05-01", + "SettingsAPI": "2022-05-01", + "SqlVulnerabilityAssessmentsAPI": "2026-04-01-preview", + "StandardsAPI": "2021-08-01-preview", + "SubAssessmentsAPI": "2019-01-01-preview", + "TasksAPI": "2015-06-01-preview" + }, + "commit": "2d517395f8a6a763c17ef6ed0594585a0f8be8c0", "repository_url": "https://github.com/Azure/azure-rest-api-specs", - "autorest": "3.10.2", - "use": [ - "@autorest/python@6.50.0", - "@autorest/modelerfour@4.27.0" - ], - "autorest_command": "autorest specification/security/resource-manager/Microsoft.Security/Security/readme.md --generate-sample=True --generate-test=True --include-x-ms-examples-original-file=True --package-mode=azure-mgmt --python --python-sdks-folder=/home/v-chenjiang/spec/worktrees/sdk-azure-mgmt-security/sdk --use=@autorest/python@6.50.0 --use=@autorest/modelerfour@4.27.0 --version=3.10.2 --version-tolerant=False", - "readme": "specification/security/resource-manager/Microsoft.Security/Security/readme.md" + "typespec_src": "specification/security/resource-manager/Microsoft.Security/Security", + "emitterVersion": "0.61.3" } \ No newline at end of file diff --git a/sdk/security/azure-mgmt-security/apiview-properties.json b/sdk/security/azure-mgmt-security/apiview-properties.json index 120fa2ba2641..d3f70bd38a7e 100644 --- a/sdk/security/azure-mgmt-security/apiview-properties.json +++ b/sdk/security/azure-mgmt-security/apiview-properties.json @@ -1,1143 +1,1061 @@ { - "CrossLanguagePackageId": null, + "CrossLanguagePackageId": "AlertsAPI", "CrossLanguageDefinitionId": { - "azure.mgmt.security.models.AadConnectivityState": null, - "azure.mgmt.security.models.Location": null, - "azure.mgmt.security.models.ExternalSecuritySolutionKind": null, - "azure.mgmt.security.models.Resource": null, - "azure.mgmt.security.models.ExternalSecuritySolution": null, - "azure.mgmt.security.models.AadExternalSecuritySolution": null, - "azure.mgmt.security.models.ExternalSecuritySolutionProperties": null, - "azure.mgmt.security.models.AadSolutionProperties": null, - "azure.mgmt.security.models.Authentication": null, - "azure.mgmt.security.models.AccessTokenAuthentication": null, - "azure.mgmt.security.models.ActionableRemediation": null, - "azure.mgmt.security.models.CustomAlertRule": null, - "azure.mgmt.security.models.ThresholdCustomAlertRule": null, - "azure.mgmt.security.models.TimeWindowCustomAlertRule": null, - "azure.mgmt.security.models.ActiveConnectionsNotInAllowedRange": null, - "azure.mgmt.security.models.AdditionalData": null, - "azure.mgmt.security.models.AdditionalWorkspacesProperties": null, - "azure.mgmt.security.models.AdvancedThreatProtectionSetting": null, - "azure.mgmt.security.models.AgentlessConfiguration": null, - "azure.mgmt.security.models.Alert": null, - "azure.mgmt.security.models.AlertEntity": null, - "azure.mgmt.security.models.AlertList": null, - "azure.mgmt.security.models.AlertPropertiesSupportingEvidence": null, - "azure.mgmt.security.models.AlertSimulatorRequestProperties": null, - "azure.mgmt.security.models.AlertSimulatorBundlesRequestProperties": null, - "azure.mgmt.security.models.AlertSimulatorRequestBody": null, - "azure.mgmt.security.models.AlertsSuppressionRule": null, - "azure.mgmt.security.models.AlertsSuppressionRulesList": null, - "azure.mgmt.security.models.Setting": null, - "azure.mgmt.security.models.AlertSyncSettings": null, - "azure.mgmt.security.models.AllowedConnectionsList": null, - "azure.mgmt.security.models.AllowedConnectionsResource": null, - "azure.mgmt.security.models.ListCustomAlertRule": null, - "azure.mgmt.security.models.AllowlistCustomAlertRule": null, - "azure.mgmt.security.models.AmqpC2DMessagesNotInAllowedRange": null, - "azure.mgmt.security.models.AmqpC2DRejectedMessagesNotInAllowedRange": null, - "azure.mgmt.security.models.AmqpD2CMessagesNotInAllowedRange": null, - "azure.mgmt.security.models.ApiCollection": null, - "azure.mgmt.security.models.ApiCollectionList": null, - "azure.mgmt.security.models.Application": null, - "azure.mgmt.security.models.ApplicationCondition": null, - "azure.mgmt.security.models.ApplicationsList": null, - "azure.mgmt.security.models.ArcAutoProvisioning": null, - "azure.mgmt.security.models.ArcAutoProvisioningAws": null, - "azure.mgmt.security.models.ArcAutoProvisioningConfiguration": null, - "azure.mgmt.security.models.ArcAutoProvisioningGcp": null, - "azure.mgmt.security.models.AscLocation": null, - "azure.mgmt.security.models.AscLocationList": null, - "azure.mgmt.security.models.AssessmentLinks": null, - "azure.mgmt.security.models.AssessmentStatus": null, - "azure.mgmt.security.models.AssessmentStatusResponse": null, - "azure.mgmt.security.models.AssignedAssessmentItem": null, - "azure.mgmt.security.models.AssignedComponentItem": null, - "azure.mgmt.security.models.AssignedStandardItem": null, - "azure.mgmt.security.models.AssignedStandardItemAutoGenerated": null, - "azure.mgmt.security.models.Tags": null, - "azure.mgmt.security.models.ETag": null, - "azure.mgmt.security.models.Kind": null, - "azure.mgmt.security.models.AzureTrackedResourceLocation": null, - "azure.mgmt.security.models.TrackedResource": null, - "azure.mgmt.security.models.Assignment": null, - "azure.mgmt.security.models.AssignmentList": null, - "azure.mgmt.security.models.AssignmentPropertiesAdditionalData": null, - "azure.mgmt.security.models.AtaExternalSecuritySolution": null, - "azure.mgmt.security.models.AtaSolutionProperties": null, - "azure.mgmt.security.models.AttestationEvidence": null, - "azure.mgmt.security.models.Authorization": null, - "azure.mgmt.security.models.Automation": null, - "azure.mgmt.security.models.AutomationAction": null, - "azure.mgmt.security.models.AutomationActionEventHub": null, - "azure.mgmt.security.models.AutomationActionLogicApp": null, - "azure.mgmt.security.models.AutomationActionWorkspace": null, - "azure.mgmt.security.models.AutomationList": null, - "azure.mgmt.security.models.AutomationRuleSet": null, - "azure.mgmt.security.models.AutomationScope": null, - "azure.mgmt.security.models.AutomationSource": null, - "azure.mgmt.security.models.AutomationTriggeringRule": null, - "azure.mgmt.security.models.AutomationUpdateModel": null, - "azure.mgmt.security.models.AutomationValidationStatus": null, - "azure.mgmt.security.models.AutoProvisioningSetting": null, - "azure.mgmt.security.models.AutoProvisioningSettingList": null, - "azure.mgmt.security.models.EnvironmentData": null, - "azure.mgmt.security.models.AwsEnvironmentData": null, - "azure.mgmt.security.models.AwsOrganizationalData": null, - "azure.mgmt.security.models.AwsOrganizationalDataMaster": null, - "azure.mgmt.security.models.AwsOrganizationalDataMember": null, - "azure.mgmt.security.models.ResourceAutoGenerated": null, - "azure.mgmt.security.models.ProxyResource": null, - "azure.mgmt.security.models.AzureDevOpsOrg": null, - "azure.mgmt.security.models.AzureDevOpsOrganizationConfiguration": null, - "azure.mgmt.security.models.AzureDevOpsOrgListResponse": null, - "azure.mgmt.security.models.AzureDevOpsOrgProperties": null, - "azure.mgmt.security.models.AzureDevOpsProject": null, - "azure.mgmt.security.models.AzureDevOpsProjectConfiguration": null, - "azure.mgmt.security.models.AzureDevOpsProjectListResponse": null, - "azure.mgmt.security.models.AzureDevOpsProjectProperties": null, - "azure.mgmt.security.models.AzureDevOpsRepository": null, - "azure.mgmt.security.models.AzureDevOpsRepositoryListResponse": null, - "azure.mgmt.security.models.AzureDevOpsRepositoryProperties": null, - "azure.mgmt.security.models.AzureDevOpsScopeEnvironmentData": null, - "azure.mgmt.security.models.ResourceDetails": null, - "azure.mgmt.security.models.AzureResourceDetails": null, - "azure.mgmt.security.models.ResourceIdentifier": null, - "azure.mgmt.security.models.AzureResourceIdentifier": null, - "azure.mgmt.security.models.AzureResourceLink": null, - "azure.mgmt.security.models.ResourceAutoGenerated2": null, - "azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting": null, - "azure.mgmt.security.models.AzureServersSetting": null, - "azure.mgmt.security.models.Baseline": null, - "azure.mgmt.security.models.BaselineAdjustedResult": null, - "azure.mgmt.security.models.BaseResourceConfiguration": null, - "azure.mgmt.security.models.BenchmarkReference": null, - "azure.mgmt.security.models.BlobsScanSummary": null, - "azure.mgmt.security.models.BuiltInInfoType": null, - "azure.mgmt.security.models.CategoryConfiguration": null, - "azure.mgmt.security.models.CefExternalSecuritySolution": null, - "azure.mgmt.security.models.CefSolutionProperties": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated10": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated11": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated12": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated13": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated14": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated15": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated16": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated17": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated18": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated19": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated2": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated20": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated3": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated4": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated5": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated6": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated7": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated8": null, - "azure.mgmt.security.models.CloudErrorAutoGenerated9": null, - "azure.mgmt.security.models.CloudErrorBody": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated10": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated11": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated12": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated13": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated14": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated15": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated16": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated17": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated18": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated19": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated2": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated20": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated3": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated4": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated5": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated6": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated7": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated8": null, - "azure.mgmt.security.models.CloudErrorBodyAutoGenerated9": null, - "azure.mgmt.security.models.CloudOffering": null, - "azure.mgmt.security.models.Compliance": null, - "azure.mgmt.security.models.ComplianceList": null, - "azure.mgmt.security.models.ComplianceResult": null, - "azure.mgmt.security.models.ComplianceResultList": null, - "azure.mgmt.security.models.ComplianceSegment": null, - "azure.mgmt.security.models.Components1Uu4J47SchemasSecurityassessmentpropertiesbasePropertiesRiskPropertiesPathsItemsPropertiesEdgesItems": null, - "azure.mgmt.security.models.Condition": null, - "azure.mgmt.security.models.ConnectableResource": null, - "azure.mgmt.security.models.ConnectedResource": null, - "azure.mgmt.security.models.ConnectedWorkspace": null, - "azure.mgmt.security.models.ConnectionFromIpNotAllowed": null, - "azure.mgmt.security.models.ConnectionToIpNotAllowed": null, - "azure.mgmt.security.models.ContainerRegistryVulnerabilityProperties": null, - "azure.mgmt.security.models.CspmMonitorAwsOffering": null, - "azure.mgmt.security.models.CspmMonitorAwsOfferingNativeCloudConnection": null, - "azure.mgmt.security.models.CspmMonitorAzureDevOpsOffering": null, - "azure.mgmt.security.models.CspmMonitorDockerHubOffering": null, - "azure.mgmt.security.models.CspmMonitorGcpOffering": null, - "azure.mgmt.security.models.CspmMonitorGcpOfferingNativeCloudConnection": null, - "azure.mgmt.security.models.CspmMonitorGithubOffering": null, - "azure.mgmt.security.models.CspmMonitorGitLabOffering": null, - "azure.mgmt.security.models.CspmMonitorJFrogOffering": null, - "azure.mgmt.security.models.CustomRecommendation": null, - "azure.mgmt.security.models.CustomRecommendationsList": null, - "azure.mgmt.security.models.CVE": null, - "azure.mgmt.security.models.CVSS": null, - "azure.mgmt.security.models.DataExportSettings": null, - "azure.mgmt.security.models.DefenderCspmAwsOffering": null, - "azure.mgmt.security.models.DefenderCspmAwsOfferingCiem": null, - "azure.mgmt.security.models.DefenderCspmAwsOfferingCiemDiscovery": null, - "azure.mgmt.security.models.DefenderCspmAwsOfferingCiemOidc": null, - "azure.mgmt.security.models.DefenderCspmAwsOfferingDatabasesDspm": null, - "azure.mgmt.security.models.DefenderCspmAwsOfferingDataSensitivityDiscovery": null, - "azure.mgmt.security.models.DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S": null, - "azure.mgmt.security.models.DefenderCspmAwsOfferingMdcContainersImageAssessment": null, - "azure.mgmt.security.models.VmScannersBase": null, - "azure.mgmt.security.models.VmScannersAws": null, - "azure.mgmt.security.models.DefenderCspmAwsOfferingVmScanners": null, - "azure.mgmt.security.models.DefenderCspmDockerHubOffering": null, - "azure.mgmt.security.models.DefenderCspmGcpOffering": null, - "azure.mgmt.security.models.DefenderCspmGcpOfferingCiemDiscovery": null, - "azure.mgmt.security.models.DefenderCspmGcpOfferingDataSensitivityDiscovery": null, - "azure.mgmt.security.models.DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S": null, - "azure.mgmt.security.models.DefenderCspmGcpOfferingMdcContainersImageAssessment": null, - "azure.mgmt.security.models.VmScannersGcp": null, - "azure.mgmt.security.models.DefenderCspmGcpOfferingVmScanners": null, - "azure.mgmt.security.models.DefenderCspmJFrogOffering": null, - "azure.mgmt.security.models.DefenderCspmJFrogOfferingMdcContainersImageAssessment": null, - "azure.mgmt.security.models.DefenderFoDatabasesAwsOffering": null, - "azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingArcAutoProvisioning": null, - "azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingDatabasesDspm": null, - "azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingRds": null, - "azure.mgmt.security.models.DefenderForContainersAwsOffering": null, - "azure.mgmt.security.models.DefenderForContainersAwsOfferingCloudWatchToKinesis": null, - "azure.mgmt.security.models.DefenderForContainersAwsOfferingKinesisToS3": null, - "azure.mgmt.security.models.DefenderForContainersAwsOfferingKubernetesDataCollection": null, - "azure.mgmt.security.models.DefenderForContainersAwsOfferingKubernetesService": null, - "azure.mgmt.security.models.DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S": null, - "azure.mgmt.security.models.DefenderForContainersAwsOfferingMdcContainersImageAssessment": null, - "azure.mgmt.security.models.DefenderForContainersAwsOfferingVmScanners": null, - "azure.mgmt.security.models.DefenderForContainersDockerHubOffering": null, - "azure.mgmt.security.models.DefenderForContainersGcpOffering": null, - "azure.mgmt.security.models.DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection": null, - "azure.mgmt.security.models.DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S": null, - "azure.mgmt.security.models.DefenderForContainersGcpOfferingMdcContainersImageAssessment": null, - "azure.mgmt.security.models.DefenderForContainersGcpOfferingNativeCloudConnection": null, - "azure.mgmt.security.models.DefenderForContainersGcpOfferingVmScanners": null, - "azure.mgmt.security.models.DefenderForContainersJFrogOffering": null, - "azure.mgmt.security.models.DefenderForDatabasesGcpOffering": null, - "azure.mgmt.security.models.DefenderForDatabasesGcpOfferingArcAutoProvisioning": null, - "azure.mgmt.security.models.DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning": null, - "azure.mgmt.security.models.DefenderForServersAwsOffering": null, - "azure.mgmt.security.models.DefenderForServersAwsOfferingArcAutoProvisioning": null, - "azure.mgmt.security.models.DefenderForServersAwsOfferingDefenderForServers": null, - "azure.mgmt.security.models.DefenderForServersAwsOfferingMdeAutoProvisioning": null, - "azure.mgmt.security.models.DefenderForServersAwsOfferingSubPlan": null, - "azure.mgmt.security.models.DefenderForServersAwsOfferingVaAutoProvisioning": null, - "azure.mgmt.security.models.DefenderForServersAwsOfferingVaAutoProvisioningConfiguration": null, - "azure.mgmt.security.models.DefenderForServersAwsOfferingVmScanners": null, - "azure.mgmt.security.models.DefenderForServersGcpOffering": null, - "azure.mgmt.security.models.DefenderForServersGcpOfferingArcAutoProvisioning": null, - "azure.mgmt.security.models.DefenderForServersGcpOfferingDefenderForServers": null, - "azure.mgmt.security.models.DefenderForServersGcpOfferingMdeAutoProvisioning": null, - "azure.mgmt.security.models.DefenderForServersGcpOfferingSubPlan": null, - "azure.mgmt.security.models.DefenderForServersGcpOfferingVaAutoProvisioning": null, - "azure.mgmt.security.models.DefenderForServersGcpOfferingVaAutoProvisioningConfiguration": null, - "azure.mgmt.security.models.DefenderForServersGcpOfferingVmScanners": null, - "azure.mgmt.security.models.DefenderForStorageSetting": null, - "azure.mgmt.security.models.DefenderForStorageSettingList": null, - "azure.mgmt.security.models.DefenderForStorageSettingProperties": null, - "azure.mgmt.security.models.DenylistCustomAlertRule": null, - "azure.mgmt.security.models.DeviceSecurityGroup": null, - "azure.mgmt.security.models.DeviceSecurityGroupList": null, - "azure.mgmt.security.models.DevOpsCapability": null, - "azure.mgmt.security.models.DevOpsConfiguration": null, - "azure.mgmt.security.models.DevOpsConfigurationListResponse": null, - "azure.mgmt.security.models.DevOpsConfigurationProperties": null, - "azure.mgmt.security.models.DirectMethodInvokesNotInAllowedRange": null, - "azure.mgmt.security.models.DiscoveredSecuritySolution": null, - "azure.mgmt.security.models.DiscoveredSecuritySolutionList": null, - "azure.mgmt.security.models.DockerHubEnvironmentData": null, - "azure.mgmt.security.models.EdgeIdentifiers": null, - "azure.mgmt.security.models.EnvironmentDetails": null, - "azure.mgmt.security.models.ErrorAdditionalInfo": null, - "azure.mgmt.security.models.ErrorDetail": null, - "azure.mgmt.security.models.ErrorDetailAutoGenerated": null, - "azure.mgmt.security.models.ErrorDetailAutoGenerated2": null, - "azure.mgmt.security.models.ErrorResponse": null, - "azure.mgmt.security.models.ErrorResponseAutoGenerated": null, - "azure.mgmt.security.models.ErrorResponseAutoGenerated2": null, - "azure.mgmt.security.models.ExecuteGovernanceRuleParams": null, - "azure.mgmt.security.models.Extension": null, - "azure.mgmt.security.models.ExternalSecuritySolutionList": null, - "azure.mgmt.security.models.FailedLocalLoginsNotInAllowedRange": null, - "azure.mgmt.security.models.FilesScanSummary": null, - "azure.mgmt.security.models.FileUploadsNotInAllowedRange": null, - "azure.mgmt.security.models.GcpOrganizationalData": null, - "azure.mgmt.security.models.GcpOrganizationalDataMember": null, - "azure.mgmt.security.models.GcpOrganizationalDataOrganization": null, - "azure.mgmt.security.models.GcpProjectDetails": null, - "azure.mgmt.security.models.GcpProjectEnvironmentData": null, - "azure.mgmt.security.models.GetSensitivitySettingsListResponse": null, - "azure.mgmt.security.models.GetSensitivitySettingsResponse": null, - "azure.mgmt.security.models.GetSensitivitySettingsResponseProperties": null, - "azure.mgmt.security.models.GetSensitivitySettingsResponsePropertiesMipInformation": null, - "azure.mgmt.security.models.GitHubOwner": null, - "azure.mgmt.security.models.GitHubOwnerConfiguration": null, - "azure.mgmt.security.models.GitHubOwnerListResponse": null, - "azure.mgmt.security.models.GitHubOwnerProperties": null, - "azure.mgmt.security.models.GitHubRepository": null, - "azure.mgmt.security.models.GitHubRepositoryListResponse": null, - "azure.mgmt.security.models.GitHubRepositoryProperties": null, - "azure.mgmt.security.models.GithubScopeEnvironmentData": null, - "azure.mgmt.security.models.GitLabGroup": null, - "azure.mgmt.security.models.GitLabGroupConfiguration": null, - "azure.mgmt.security.models.GitLabGroupListResponse": null, - "azure.mgmt.security.models.GitLabGroupProperties": null, - "azure.mgmt.security.models.GitLabProject": null, - "azure.mgmt.security.models.GitLabProjectListResponse": null, - "azure.mgmt.security.models.GitLabProjectProperties": null, - "azure.mgmt.security.models.GitlabScopeEnvironmentData": null, - "azure.mgmt.security.models.GovernanceAssignment": null, - "azure.mgmt.security.models.GovernanceAssignmentAdditionalData": null, - "azure.mgmt.security.models.GovernanceAssignmentsList": null, - "azure.mgmt.security.models.GovernanceEmailNotification": null, - "azure.mgmt.security.models.GovernanceRule": null, - "azure.mgmt.security.models.GovernanceRuleEmailNotification": null, - "azure.mgmt.security.models.GovernanceRuleList": null, - "azure.mgmt.security.models.GovernanceRuleMetadata": null, - "azure.mgmt.security.models.GovernanceRuleOwnerSource": null, - "azure.mgmt.security.models.HealthDataClassification": null, - "azure.mgmt.security.models.HealthReport": null, - "azure.mgmt.security.models.HealthReportsList": null, - "azure.mgmt.security.models.HttpC2DMessagesNotInAllowedRange": null, - "azure.mgmt.security.models.HttpC2DRejectedMessagesNotInAllowedRange": null, - "azure.mgmt.security.models.HttpD2CMessagesNotInAllowedRange": null, - "azure.mgmt.security.models.Identity": null, - "azure.mgmt.security.models.InformationProtectionKeyword": null, - "azure.mgmt.security.models.InformationProtectionPolicy": null, - "azure.mgmt.security.models.InformationProtectionPolicyList": null, - "azure.mgmt.security.models.InformationType": null, - "azure.mgmt.security.models.InfoType": null, - "azure.mgmt.security.models.InventoryList": null, - "azure.mgmt.security.models.TagsResource": null, - "azure.mgmt.security.models.IoTSecurityAggregatedAlert": null, - "azure.mgmt.security.models.IoTSecurityAggregatedAlertList": null, - "azure.mgmt.security.models.IoTSecurityAggregatedAlertPropertiesTopDevicesListItem": null, - "azure.mgmt.security.models.IoTSecurityAggregatedRecommendation": null, - "azure.mgmt.security.models.IoTSecurityAggregatedRecommendationList": null, - "azure.mgmt.security.models.IoTSecurityAlertedDevice": null, - "azure.mgmt.security.models.IoTSecurityDeviceAlert": null, - "azure.mgmt.security.models.IoTSecurityDeviceRecommendation": null, - "azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModel": null, - "azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModelList": null, - "azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem": null, - "azure.mgmt.security.models.IoTSecuritySolutionModel": null, - "azure.mgmt.security.models.IoTSecuritySolutionsList": null, - "azure.mgmt.security.models.IoTSeverityMetrics": null, - "azure.mgmt.security.models.Issue": null, - "azure.mgmt.security.models.IssueCreationRequest": null, - "azure.mgmt.security.models.JFrogEnvironmentData": null, - "azure.mgmt.security.models.JitNetworkAccessPoliciesList": null, - "azure.mgmt.security.models.JitNetworkAccessPolicy": null, - "azure.mgmt.security.models.JitNetworkAccessPolicyInitiatePort": null, - "azure.mgmt.security.models.JitNetworkAccessPolicyInitiateRequest": null, - "azure.mgmt.security.models.JitNetworkAccessPolicyInitiateVirtualMachine": null, - "azure.mgmt.security.models.JitNetworkAccessPolicyVirtualMachine": null, - "azure.mgmt.security.models.JitNetworkAccessPortRule": null, - "azure.mgmt.security.models.JitNetworkAccessRequest": null, - "azure.mgmt.security.models.JitNetworkAccessRequestPort": null, - "azure.mgmt.security.models.JitNetworkAccessRequestVirtualMachine": null, - "azure.mgmt.security.models.Label": null, - "azure.mgmt.security.models.LocalUserNotAllowed": null, - "azure.mgmt.security.models.LogAnalyticsIdentifier": null, - "azure.mgmt.security.models.MalwareScan": null, - "azure.mgmt.security.models.MalwareScanningProperties": null, - "azure.mgmt.security.models.MalwareScanProperties": null, - "azure.mgmt.security.models.MdeOnboardingData": null, - "azure.mgmt.security.models.MdeOnboardingDataList": null, - "azure.mgmt.security.models.MqttC2DMessagesNotInAllowedRange": null, - "azure.mgmt.security.models.MqttC2DRejectedMessagesNotInAllowedRange": null, - "azure.mgmt.security.models.MqttD2CMessagesNotInAllowedRange": null, - "azure.mgmt.security.models.NodeIdentifier": null, - "azure.mgmt.security.models.OnPremiseResourceDetails": null, - "azure.mgmt.security.models.OnPremiseSqlResourceDetails": null, - "azure.mgmt.security.models.OnUploadFilters": null, - "azure.mgmt.security.models.OnUploadProperties": null, - "azure.mgmt.security.models.Operation": null, - "azure.mgmt.security.models.OperationDisplay": null, - "azure.mgmt.security.models.OperationListResult": null, - "azure.mgmt.security.models.OperationResultAutoGenerated": null, - "azure.mgmt.security.models.OperationStatus": null, - "azure.mgmt.security.models.OperationStatusAutoGenerated": null, - "azure.mgmt.security.models.OperationStatusResult": null, - "azure.mgmt.security.models.OperationStatusResultAutoGenerated": null, - "azure.mgmt.security.models.PartialAssessmentProperties": null, - "azure.mgmt.security.models.Path": null, - "azure.mgmt.security.models.Pricing": null, - "azure.mgmt.security.models.PricingList": null, - "azure.mgmt.security.models.PrivateEndpoint": null, - "azure.mgmt.security.models.PrivateEndpointConnection": null, - "azure.mgmt.security.models.PrivateEndpointConnectionListResult": null, - "azure.mgmt.security.models.PrivateLinkParameters": null, - "azure.mgmt.security.models.ResourceAutoGenerated3": null, - "azure.mgmt.security.models.TrackedResourceAutoGenerated": null, - "azure.mgmt.security.models.PrivateLinkResource": null, - "azure.mgmt.security.models.PrivateLinkResourceAutoGenerated": null, - "azure.mgmt.security.models.PrivateLinkResourceListResult": null, - "azure.mgmt.security.models.PrivateLinkServiceConnectionState": null, - "azure.mgmt.security.models.PrivateLinksList": null, - "azure.mgmt.security.models.PrivateLinkUpdate": null, - "azure.mgmt.security.models.ProcessNotAllowed": null, - "azure.mgmt.security.models.QueryCheck": null, - "azure.mgmt.security.models.QueuePurgesNotInAllowedRange": null, - "azure.mgmt.security.models.RecommendationConfigurationProperties": null, - "azure.mgmt.security.models.RegulatoryComplianceAssessment": null, - "azure.mgmt.security.models.RegulatoryComplianceAssessmentList": null, - "azure.mgmt.security.models.RegulatoryComplianceControl": null, - "azure.mgmt.security.models.RegulatoryComplianceControlList": null, - "azure.mgmt.security.models.RegulatoryComplianceStandard": null, - "azure.mgmt.security.models.RegulatoryComplianceStandardList": null, - "azure.mgmt.security.models.Remediation": null, - "azure.mgmt.security.models.RemediationEta": null, - "azure.mgmt.security.models.ResourceDetailsAutoGenerated": null, - "azure.mgmt.security.models.RuleResults": null, - "azure.mgmt.security.models.RuleResultsInput": null, - "azure.mgmt.security.models.RuleResultsProperties": null, - "azure.mgmt.security.models.RulesResults": null, - "azure.mgmt.security.models.RulesResultsInput": null, - "azure.mgmt.security.models.ScanPropertiesV2": null, - "azure.mgmt.security.models.ScanResult": null, - "azure.mgmt.security.models.ScanResultProperties": null, - "azure.mgmt.security.models.ScanResults": null, - "azure.mgmt.security.models.ScanSummary": null, - "azure.mgmt.security.models.ScansV2": null, - "azure.mgmt.security.models.ScanV2": null, - "azure.mgmt.security.models.ScopeElement": null, - "azure.mgmt.security.models.SecureScoreControlDefinitionItem": null, - "azure.mgmt.security.models.SecureScoreControlDefinitionList": null, - "azure.mgmt.security.models.SecureScoreControlDefinitionSource": null, - "azure.mgmt.security.models.SecureScoreControlDetails": null, - "azure.mgmt.security.models.SecureScoreControlList": null, - "azure.mgmt.security.models.SecureScoreControlScore": null, - "azure.mgmt.security.models.SecureScoreItem": null, - "azure.mgmt.security.models.SecureScoresList": null, - "azure.mgmt.security.models.SecurityAssessment": null, - "azure.mgmt.security.models.SecurityAssessmentList": null, - "azure.mgmt.security.models.SecurityAssessmentMetadata": null, - "azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData": null, - "azure.mgmt.security.models.SecurityAssessmentMetadataProperties": null, - "azure.mgmt.security.models.SecurityAssessmentMetadataPropertiesResponse": null, - "azure.mgmt.security.models.SecurityAssessmentMetadataPropertiesResponsePublishDates": null, - "azure.mgmt.security.models.SecurityAssessmentMetadataResponse": null, - "azure.mgmt.security.models.SecurityAssessmentMetadataResponseList": null, - "azure.mgmt.security.models.SecurityAssessmentPartnerData": null, - "azure.mgmt.security.models.SecurityAssessmentPropertiesBase": null, - "azure.mgmt.security.models.SecurityAssessmentProperties": null, - "azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk": null, - "azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRiskPathsItem": null, - "azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem": null, - "azure.mgmt.security.models.SecurityAssessmentPropertiesResponse": null, - "azure.mgmt.security.models.SecurityAssessmentResponse": null, - "azure.mgmt.security.models.SecurityConnector": null, - "azure.mgmt.security.models.SecurityConnectorsList": null, - "azure.mgmt.security.models.SecurityOperator": null, - "azure.mgmt.security.models.SecurityOperatorList": null, - "azure.mgmt.security.models.SecuritySolution": null, - "azure.mgmt.security.models.SecuritySolutionList": null, - "azure.mgmt.security.models.SecuritySolutionsReferenceData": null, - "azure.mgmt.security.models.SecuritySolutionsReferenceDataList": null, - "azure.mgmt.security.models.SecurityStandard": null, - "azure.mgmt.security.models.SecurityStandardList": null, - "azure.mgmt.security.models.SecuritySubAssessment": null, - "azure.mgmt.security.models.SecuritySubAssessmentList": null, - "azure.mgmt.security.models.SecurityTask": null, - "azure.mgmt.security.models.SecurityTaskList": null, - "azure.mgmt.security.models.SecurityTaskParameters": null, - "azure.mgmt.security.models.SensitiveDataDiscoveryProperties": null, - "azure.mgmt.security.models.SensitivityLabel": null, - "azure.mgmt.security.models.ServerVulnerabilityAssessment": null, - "azure.mgmt.security.models.ServerVulnerabilityAssessmentsList": null, - "azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingsList": null, - "azure.mgmt.security.models.ServerVulnerabilityProperties": null, - "azure.mgmt.security.models.SettingsList": null, - "azure.mgmt.security.models.SqlServerVulnerabilityProperties": null, - "azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult": null, - "azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResultProperties": null, - "azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings": null, - "azure.mgmt.security.models.SqlVulnerabilityAssessmentSettingsProperties": null, - "azure.mgmt.security.models.Standard": null, - "azure.mgmt.security.models.StandardAssignment": null, - "azure.mgmt.security.models.StandardAssignmentMetadata": null, - "azure.mgmt.security.models.StandardAssignmentPropertiesAttestationData": null, - "azure.mgmt.security.models.StandardAssignmentPropertiesExemptionData": null, - "azure.mgmt.security.models.StandardAssignmentsList": null, - "azure.mgmt.security.models.StandardComponentProperties": null, - "azure.mgmt.security.models.StandardList": null, - "azure.mgmt.security.models.StandardMetadata": null, - "azure.mgmt.security.models.StatusAutoGenerated": null, - "azure.mgmt.security.models.SubAssessmentStatus": null, - "azure.mgmt.security.models.SuppressionAlertsScope": null, - "azure.mgmt.security.models.SystemData": null, - "azure.mgmt.security.models.TargetBranchConfiguration": null, - "azure.mgmt.security.models.TopologyList": null, - "azure.mgmt.security.models.TopologyResource": null, - "azure.mgmt.security.models.TopologySingleResource": null, - "azure.mgmt.security.models.TopologySingleResourceChild": null, - "azure.mgmt.security.models.TopologySingleResourceParent": null, - "azure.mgmt.security.models.TwinUpdatesNotInAllowedRange": null, - "azure.mgmt.security.models.UnauthorizedOperationsNotInAllowedRange": null, - "azure.mgmt.security.models.UpdateIotSecuritySolutionData": null, - "azure.mgmt.security.models.UpdateSensitivitySettingsRequest": null, - "azure.mgmt.security.models.UserDefinedResourcesProperties": null, - "azure.mgmt.security.models.VaRule": null, - "azure.mgmt.security.models.VendorReference": null, - "azure.mgmt.security.models.VmScannersBaseConfiguration": null, - "azure.mgmt.security.models.WorkspaceSetting": null, - "azure.mgmt.security.models.WorkspaceSettingList": null, - "azure.mgmt.security.models.AutoProvision": null, - "azure.mgmt.security.models.Rank": null, - "azure.mgmt.security.models.RuleState": null, - "azure.mgmt.security.models.State": null, - "azure.mgmt.security.models.SubAssessmentStatusCode": null, - "azure.mgmt.security.models.Severity": null, - "azure.mgmt.security.models.Source": null, - "azure.mgmt.security.models.AssessedResourceType": null, - "azure.mgmt.security.models.GovernanceRuleType": null, - "azure.mgmt.security.models.GovernanceRuleSourceResourceType": null, - "azure.mgmt.security.models.GovernanceRuleOwnerSourceType": null, - "azure.mgmt.security.models.ApplicationSourceResourceType": null, - "azure.mgmt.security.models.ScanTriggerType": null, - "azure.mgmt.security.models.ScanState": null, - "azure.mgmt.security.models.RuleStatus": null, - "azure.mgmt.security.models.RuleSeverity": null, - "azure.mgmt.security.models.RuleType": null, - "azure.mgmt.security.models.MipIntegrationStatus": null, - "azure.mgmt.security.models.StatusName": null, - "azure.mgmt.security.models.PropertyType": null, - "azure.mgmt.security.models.Operator": null, - "azure.mgmt.security.models.EventSource": null, - "azure.mgmt.security.models.ActionType": null, - "azure.mgmt.security.models.OfferingType": null, - "azure.mgmt.security.models.ScanningMode": null, - "azure.mgmt.security.models.Type": null, - "azure.mgmt.security.models.SubPlan": null, - "azure.mgmt.security.models.CreatedByType": null, - "azure.mgmt.security.models.CloudName": null, - "azure.mgmt.security.models.EnvironmentType": null, - "azure.mgmt.security.models.OrganizationMembershipType": null, - "azure.mgmt.security.models.AuthenticationType": null, - "azure.mgmt.security.models.RuleCategory": null, - "azure.mgmt.security.models.DevOpsProvisioningState": null, - "azure.mgmt.security.models.OnboardingState": null, - "azure.mgmt.security.models.ActionableRemediationState": null, - "azure.mgmt.security.models.AnnotateDefaultBranchState": null, - "azure.mgmt.security.models.InheritFromParentState": null, - "azure.mgmt.security.models.InventoryKind": null, - "azure.mgmt.security.models.AutoDiscovery": null, - "azure.mgmt.security.models.AgentlessEnablement": null, - "azure.mgmt.security.models.InventoryListKind": null, - "azure.mgmt.security.models.Origin": null, - "azure.mgmt.security.models.Tactics": null, - "azure.mgmt.security.models.Techniques": null, - "azure.mgmt.security.models.Categories": null, - "azure.mgmt.security.models.Threats": null, - "azure.mgmt.security.models.UserImpact": null, - "azure.mgmt.security.models.ImplementationEffort": null, - "azure.mgmt.security.models.AssessmentType": null, - "azure.mgmt.security.models.RiskLevel": null, - "azure.mgmt.security.models.AssessmentStatusCode": null, - "azure.mgmt.security.models.ResourceStatus": null, - "azure.mgmt.security.models.ValueType": null, - "azure.mgmt.security.models.ReportedSeverity": null, - "azure.mgmt.security.models.ExportData": null, - "azure.mgmt.security.models.DataSource": null, - "azure.mgmt.security.models.RecommendationType": null, - "azure.mgmt.security.models.RecommendationConfigStatus": null, - "azure.mgmt.security.models.AdditionalWorkspaceDataType": null, - "azure.mgmt.security.models.AdditionalWorkspaceType": null, - "azure.mgmt.security.models.SecuritySolutionStatus": null, - "azure.mgmt.security.models.UnmaskedIpLoggingStatus": null, - "azure.mgmt.security.models.SecurityFamily": null, - "azure.mgmt.security.models.ExternalSecuritySolutionKindEnum": null, - "azure.mgmt.security.models.ProtocolEnum": null, - "azure.mgmt.security.models.Status": null, - "azure.mgmt.security.models.StatusReason": null, - "azure.mgmt.security.models.ProvisioningState": null, - "azure.mgmt.security.models.ServerVulnerabilityAssessmentPropertiesProvisioningState": null, - "azure.mgmt.security.models.ResourceIdentifierType": null, - "azure.mgmt.security.models.AlertSeverity": null, - "azure.mgmt.security.models.Intent": null, - "azure.mgmt.security.models.AlertStatus": null, - "azure.mgmt.security.models.SettingKind": null, - "azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKind": null, - "azure.mgmt.security.models.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider": null, - "azure.mgmt.security.models.IsEnabled": null, - "azure.mgmt.security.models.Code": null, - "azure.mgmt.security.models.PricingTier": null, - "azure.mgmt.security.models.Enforce": null, - "azure.mgmt.security.models.Inherited": null, - "azure.mgmt.security.models.ResourcesCoverageStatus": null, - "azure.mgmt.security.models.StandardSupportedCloud": null, - "azure.mgmt.security.models.StandardType": null, - "azure.mgmt.security.models.Effect": null, - "azure.mgmt.security.models.ExemptionCategory": null, - "azure.mgmt.security.models.AttestationComplianceState": null, - "azure.mgmt.security.models.RecommendationSupportedClouds": null, - "azure.mgmt.security.models.SeverityEnum": null, - "azure.mgmt.security.models.SecurityIssue": null, - "azure.mgmt.security.models.StandardSupportedClouds": null, - "azure.mgmt.security.models.BlobScanResultsOptions": null, - "azure.mgmt.security.models.AutomatedResponseType": null, - "azure.mgmt.security.models.PrivateEndpointServiceConnectionStatus": null, - "azure.mgmt.security.models.PrivateEndpointConnectionProvisioningState": null, - "azure.mgmt.security.models.PublicNetworkAccess": null, - "azure.mgmt.security.models.ControlType": null, - "azure.mgmt.security.models.GovernanceRuleConditionOperator": null, - "azure.mgmt.security.models.ApplicationConditionOperator": null, - "azure.mgmt.security.models.BundleType": null, - "azure.mgmt.security.models.TaskUpdateActionType": null, - "azure.mgmt.security.models.InformationProtectionPolicyName": null, - "azure.mgmt.security.models.OperationResult": null, - "azure.mgmt.security.models.ScanOperationStatus": null, - "azure.mgmt.security.models.SqlVulnerabilityAssessmentState": null, - "azure.mgmt.security.models.ExpandEnum": null, - "azure.mgmt.security.models.ConnectionType": null, - "azure.mgmt.security.models.KindEnum": null, - "azure.mgmt.security.models.SettingName": null, - "azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName": null, - "azure.mgmt.security.models.SettingNameAutoGenerated": null, - "azure.mgmt.security.models.ExpandControlsEnum": null, - "azure.mgmt.security.models.DesiredOnboardingState": null, - "azure.mgmt.security.models.AadConnectivityStateEnum": null, - "azure.mgmt.security.operations.LocationsOperations.list": null, - "azure.mgmt.security.aio.operations.LocationsOperations.list": null, - "azure.mgmt.security.operations.LocationsOperations.get": null, - "azure.mgmt.security.aio.operations.LocationsOperations.get": null, - "azure.mgmt.security.operations.TasksOperations.list": null, - "azure.mgmt.security.aio.operations.TasksOperations.list": null, - "azure.mgmt.security.operations.TasksOperations.list_by_home_region": null, - "azure.mgmt.security.aio.operations.TasksOperations.list_by_home_region": null, - "azure.mgmt.security.operations.TasksOperations.get_subscription_level_task": null, - "azure.mgmt.security.aio.operations.TasksOperations.get_subscription_level_task": null, - "azure.mgmt.security.operations.TasksOperations.update_subscription_level_task_state": null, - "azure.mgmt.security.aio.operations.TasksOperations.update_subscription_level_task_state": null, - "azure.mgmt.security.operations.TasksOperations.list_by_resource_group": null, - "azure.mgmt.security.aio.operations.TasksOperations.list_by_resource_group": null, - "azure.mgmt.security.operations.TasksOperations.get_resource_group_level_task": null, - "azure.mgmt.security.aio.operations.TasksOperations.get_resource_group_level_task": null, - "azure.mgmt.security.operations.TasksOperations.update_resource_group_level_task_state": null, - "azure.mgmt.security.aio.operations.TasksOperations.update_resource_group_level_task_state": null, - "azure.mgmt.security.operations.AutoProvisioningSettingsOperations.list": null, - "azure.mgmt.security.aio.operations.AutoProvisioningSettingsOperations.list": null, - "azure.mgmt.security.operations.AutoProvisioningSettingsOperations.get": null, - "azure.mgmt.security.aio.operations.AutoProvisioningSettingsOperations.get": null, - "azure.mgmt.security.operations.AutoProvisioningSettingsOperations.create": null, - "azure.mgmt.security.aio.operations.AutoProvisioningSettingsOperations.create": null, - "azure.mgmt.security.operations.CompliancesOperations.list": null, - "azure.mgmt.security.aio.operations.CompliancesOperations.list": null, - "azure.mgmt.security.operations.CompliancesOperations.get": null, - "azure.mgmt.security.aio.operations.CompliancesOperations.get": null, - "azure.mgmt.security.operations.InformationProtectionPoliciesOperations.get": null, - "azure.mgmt.security.aio.operations.InformationProtectionPoliciesOperations.get": null, - "azure.mgmt.security.operations.InformationProtectionPoliciesOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.InformationProtectionPoliciesOperations.create_or_update": null, - "azure.mgmt.security.operations.InformationProtectionPoliciesOperations.list": null, - "azure.mgmt.security.aio.operations.InformationProtectionPoliciesOperations.list": null, - "azure.mgmt.security.operations.WorkspaceSettingsOperations.list": null, - "azure.mgmt.security.aio.operations.WorkspaceSettingsOperations.list": null, - "azure.mgmt.security.operations.WorkspaceSettingsOperations.get": null, - "azure.mgmt.security.aio.operations.WorkspaceSettingsOperations.get": null, - "azure.mgmt.security.operations.WorkspaceSettingsOperations.create": null, - "azure.mgmt.security.aio.operations.WorkspaceSettingsOperations.create": null, - "azure.mgmt.security.operations.WorkspaceSettingsOperations.update": null, - "azure.mgmt.security.aio.operations.WorkspaceSettingsOperations.update": null, - "azure.mgmt.security.operations.WorkspaceSettingsOperations.delete": null, - "azure.mgmt.security.aio.operations.WorkspaceSettingsOperations.delete": null, - "azure.mgmt.security.operations.AlertsSuppressionRulesOperations.list": null, - "azure.mgmt.security.aio.operations.AlertsSuppressionRulesOperations.list": null, - "azure.mgmt.security.operations.AlertsSuppressionRulesOperations.get": null, - "azure.mgmt.security.aio.operations.AlertsSuppressionRulesOperations.get": null, - "azure.mgmt.security.operations.AlertsSuppressionRulesOperations.update": null, - "azure.mgmt.security.aio.operations.AlertsSuppressionRulesOperations.update": null, - "azure.mgmt.security.operations.AlertsSuppressionRulesOperations.delete": null, - "azure.mgmt.security.aio.operations.AlertsSuppressionRulesOperations.delete": null, - "azure.mgmt.security.operations.RegulatoryComplianceStandardsOperations.list": null, - "azure.mgmt.security.aio.operations.RegulatoryComplianceStandardsOperations.list": null, - "azure.mgmt.security.operations.RegulatoryComplianceStandardsOperations.get": null, - "azure.mgmt.security.aio.operations.RegulatoryComplianceStandardsOperations.get": null, - "azure.mgmt.security.operations.RegulatoryComplianceControlsOperations.list": null, - "azure.mgmt.security.aio.operations.RegulatoryComplianceControlsOperations.list": null, - "azure.mgmt.security.operations.RegulatoryComplianceControlsOperations.get": null, - "azure.mgmt.security.aio.operations.RegulatoryComplianceControlsOperations.get": null, - "azure.mgmt.security.operations.RegulatoryComplianceAssessmentsOperations.list": null, - "azure.mgmt.security.aio.operations.RegulatoryComplianceAssessmentsOperations.list": null, - "azure.mgmt.security.operations.RegulatoryComplianceAssessmentsOperations.get": null, - "azure.mgmt.security.aio.operations.RegulatoryComplianceAssessmentsOperations.get": null, - "azure.mgmt.security.operations.SubAssessmentsOperations.list_all": null, - "azure.mgmt.security.aio.operations.SubAssessmentsOperations.list_all": null, - "azure.mgmt.security.operations.SubAssessmentsOperations.list": null, - "azure.mgmt.security.aio.operations.SubAssessmentsOperations.list": null, - "azure.mgmt.security.operations.SubAssessmentsOperations.get": null, - "azure.mgmt.security.aio.operations.SubAssessmentsOperations.get": null, - "azure.mgmt.security.operations.MdeOnboardingsOperations.list": null, - "azure.mgmt.security.aio.operations.MdeOnboardingsOperations.list": null, - "azure.mgmt.security.operations.MdeOnboardingsOperations.get": null, - "azure.mgmt.security.aio.operations.MdeOnboardingsOperations.get": null, - "azure.mgmt.security.operations.GovernanceAssignmentsOperations.list": null, - "azure.mgmt.security.aio.operations.GovernanceAssignmentsOperations.list": null, - "azure.mgmt.security.operations.GovernanceAssignmentsOperations.get": null, - "azure.mgmt.security.aio.operations.GovernanceAssignmentsOperations.get": null, - "azure.mgmt.security.operations.GovernanceAssignmentsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.GovernanceAssignmentsOperations.create_or_update": null, - "azure.mgmt.security.operations.GovernanceAssignmentsOperations.delete": null, - "azure.mgmt.security.aio.operations.GovernanceAssignmentsOperations.delete": null, - "azure.mgmt.security.operations.GovernanceRulesOperations.list": null, - "azure.mgmt.security.aio.operations.GovernanceRulesOperations.list": null, - "azure.mgmt.security.operations.GovernanceRulesOperations.get": null, - "azure.mgmt.security.aio.operations.GovernanceRulesOperations.get": null, - "azure.mgmt.security.operations.GovernanceRulesOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.GovernanceRulesOperations.create_or_update": null, - "azure.mgmt.security.operations.GovernanceRulesOperations.begin_delete": null, - "azure.mgmt.security.aio.operations.GovernanceRulesOperations.begin_delete": null, - "azure.mgmt.security.operations.GovernanceRulesOperations.begin_execute": null, - "azure.mgmt.security.aio.operations.GovernanceRulesOperations.begin_execute": null, - "azure.mgmt.security.operations.GovernanceRulesOperations.operation_results": null, - "azure.mgmt.security.aio.operations.GovernanceRulesOperations.operation_results": null, - "azure.mgmt.security.operations.ApplicationsOperations.list": null, - "azure.mgmt.security.aio.operations.ApplicationsOperations.list": null, - "azure.mgmt.security.operations.ApplicationOperations.get": null, - "azure.mgmt.security.aio.operations.ApplicationOperations.get": null, - "azure.mgmt.security.operations.ApplicationOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.ApplicationOperations.create_or_update": null, - "azure.mgmt.security.operations.ApplicationOperations.delete": null, - "azure.mgmt.security.aio.operations.ApplicationOperations.delete": null, - "azure.mgmt.security.operations.SecurityConnectorApplicationsOperations.list": null, - "azure.mgmt.security.aio.operations.SecurityConnectorApplicationsOperations.list": null, - "azure.mgmt.security.operations.SecurityConnectorApplicationOperations.get": null, - "azure.mgmt.security.aio.operations.SecurityConnectorApplicationOperations.get": null, - "azure.mgmt.security.operations.SecurityConnectorApplicationOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.SecurityConnectorApplicationOperations.create_or_update": null, - "azure.mgmt.security.operations.SecurityConnectorApplicationOperations.delete": null, - "azure.mgmt.security.aio.operations.SecurityConnectorApplicationOperations.delete": null, - "azure.mgmt.security.operations.SecurityOperatorsOperations.list": null, - "azure.mgmt.security.aio.operations.SecurityOperatorsOperations.list": null, - "azure.mgmt.security.operations.SecurityOperatorsOperations.get": null, - "azure.mgmt.security.aio.operations.SecurityOperatorsOperations.get": null, - "azure.mgmt.security.operations.SecurityOperatorsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.SecurityOperatorsOperations.create_or_update": null, - "azure.mgmt.security.operations.SecurityOperatorsOperations.delete": null, - "azure.mgmt.security.aio.operations.SecurityOperatorsOperations.delete": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.create_or_update": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.get": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.get": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.delete": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.delete": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.list": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.list": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.add": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.add": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations.get": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations.get": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations.list": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations.list": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations.begin_initiate_scan": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations.begin_initiate_scan": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations.get_scan_operation_result": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations.get_scan_operation_result": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScanResultsOperations.get": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScanResultsOperations.get": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScanResultsOperations.list": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScanResultsOperations.list": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentSettingsOperations.get": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentSettingsOperations.get": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentSettingsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentSettingsOperations.create_or_update": null, - "azure.mgmt.security.operations.SqlVulnerabilityAssessmentSettingsOperations.delete": null, - "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentSettingsOperations.delete": null, - "azure.mgmt.security.operations.SensitivitySettingsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.SensitivitySettingsOperations.create_or_update": null, - "azure.mgmt.security.operations.SensitivitySettingsOperations.get": null, - "azure.mgmt.security.aio.operations.SensitivitySettingsOperations.get": null, - "azure.mgmt.security.operations.SensitivitySettingsOperations.list": null, - "azure.mgmt.security.aio.operations.SensitivitySettingsOperations.list": null, - "azure.mgmt.security.operations.HealthReportsOperations.list": null, - "azure.mgmt.security.aio.operations.HealthReportsOperations.list": null, - "azure.mgmt.security.operations.HealthReportsOperations.get": null, - "azure.mgmt.security.aio.operations.HealthReportsOperations.get": null, - "azure.mgmt.security.operations.AutomationsOperations.list": null, - "azure.mgmt.security.aio.operations.AutomationsOperations.list": null, - "azure.mgmt.security.operations.AutomationsOperations.list_by_resource_group": null, - "azure.mgmt.security.aio.operations.AutomationsOperations.list_by_resource_group": null, - "azure.mgmt.security.operations.AutomationsOperations.get": null, - "azure.mgmt.security.aio.operations.AutomationsOperations.get": null, - "azure.mgmt.security.operations.AutomationsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.AutomationsOperations.create_or_update": null, - "azure.mgmt.security.operations.AutomationsOperations.update": null, - "azure.mgmt.security.aio.operations.AutomationsOperations.update": null, - "azure.mgmt.security.operations.AutomationsOperations.delete": null, - "azure.mgmt.security.aio.operations.AutomationsOperations.delete": null, - "azure.mgmt.security.operations.AutomationsOperations.validate": null, - "azure.mgmt.security.aio.operations.AutomationsOperations.validate": null, - "azure.mgmt.security.operations.SecurityConnectorsOperations.list": null, - "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.list": null, - "azure.mgmt.security.operations.SecurityConnectorsOperations.list_by_resource_group": null, - "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.list_by_resource_group": null, - "azure.mgmt.security.operations.SecurityConnectorsOperations.get": null, - "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.get": null, - "azure.mgmt.security.operations.SecurityConnectorsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.create_or_update": null, - "azure.mgmt.security.operations.SecurityConnectorsOperations.update": null, - "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.update": null, - "azure.mgmt.security.operations.SecurityConnectorsOperations.delete": null, - "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.delete": null, - "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.list_available": null, - "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.list_available": null, - "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.list": null, - "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.list": null, - "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.get": null, - "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.get": null, - "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.begin_create_or_update": null, - "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.begin_create_or_update": null, - "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.begin_update": null, - "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.begin_update": null, - "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.list": null, - "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.list": null, - "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.get": null, - "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.get": null, - "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.begin_create_or_update": null, - "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.begin_create_or_update": null, - "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.begin_update": null, - "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.begin_update": null, - "azure.mgmt.security.operations.AzureDevOpsReposOperations.list": null, - "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.list": null, - "azure.mgmt.security.operations.AzureDevOpsReposOperations.get": null, - "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.get": null, - "azure.mgmt.security.operations.AzureDevOpsReposOperations.begin_create_or_update": null, - "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.begin_create_or_update": null, - "azure.mgmt.security.operations.AzureDevOpsReposOperations.begin_update": null, - "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.begin_update": null, - "azure.mgmt.security.operations.DevOpsConfigurationsOperations.list": null, - "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.list": null, - "azure.mgmt.security.operations.DevOpsConfigurationsOperations.get": null, - "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.get": null, - "azure.mgmt.security.operations.DevOpsConfigurationsOperations.begin_create_or_update": null, - "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.begin_create_or_update": null, - "azure.mgmt.security.operations.DevOpsConfigurationsOperations.begin_update": null, - "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.begin_update": null, - "azure.mgmt.security.operations.DevOpsConfigurationsOperations.begin_delete": null, - "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.begin_delete": null, - "azure.mgmt.security.operations.GitHubOwnersOperations.list_available": null, - "azure.mgmt.security.aio.operations.GitHubOwnersOperations.list_available": null, - "azure.mgmt.security.operations.GitHubOwnersOperations.list": null, - "azure.mgmt.security.aio.operations.GitHubOwnersOperations.list": null, - "azure.mgmt.security.operations.GitHubOwnersOperations.get": null, - "azure.mgmt.security.aio.operations.GitHubOwnersOperations.get": null, - "azure.mgmt.security.operations.GitHubReposOperations.list": null, - "azure.mgmt.security.aio.operations.GitHubReposOperations.list": null, - "azure.mgmt.security.operations.GitHubReposOperations.get": null, - "azure.mgmt.security.aio.operations.GitHubReposOperations.get": null, - "azure.mgmt.security.operations.GitHubIssuesOperations.begin_create": null, - "azure.mgmt.security.aio.operations.GitHubIssuesOperations.begin_create": null, - "azure.mgmt.security.operations.GitLabGroupsOperations.list_available": null, - "azure.mgmt.security.aio.operations.GitLabGroupsOperations.list_available": null, - "azure.mgmt.security.operations.GitLabGroupsOperations.list": null, - "azure.mgmt.security.aio.operations.GitLabGroupsOperations.list": null, - "azure.mgmt.security.operations.GitLabGroupsOperations.get": null, - "azure.mgmt.security.aio.operations.GitLabGroupsOperations.get": null, - "azure.mgmt.security.operations.GitLabSubgroupsOperations.list": null, - "azure.mgmt.security.aio.operations.GitLabSubgroupsOperations.list": null, - "azure.mgmt.security.operations.GitLabProjectsOperations.list": null, - "azure.mgmt.security.aio.operations.GitLabProjectsOperations.list": null, - "azure.mgmt.security.operations.GitLabProjectsOperations.get": null, - "azure.mgmt.security.aio.operations.GitLabProjectsOperations.get": null, - "azure.mgmt.security.operations.DevOpsOperationResultsOperations.get": null, - "azure.mgmt.security.aio.operations.DevOpsOperationResultsOperations.get": null, - "azure.mgmt.security.operations.Operations.list": null, - "azure.mgmt.security.aio.operations.Operations.list": null, - "azure.mgmt.security.operations.OperationResultsOperations.get": null, - "azure.mgmt.security.aio.operations.OperationResultsOperations.get": null, - "azure.mgmt.security.operations.OperationStatusesOperations.get": null, - "azure.mgmt.security.aio.operations.OperationStatusesOperations.get": null, - "azure.mgmt.security.operations.AssessmentsMetadataOperations.list": null, - "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.list": null, - "azure.mgmt.security.operations.AssessmentsMetadataOperations.get": null, - "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.get": null, - "azure.mgmt.security.operations.AssessmentsMetadataOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.list_by_subscription": null, - "azure.mgmt.security.operations.AssessmentsMetadataOperations.get_in_subscription": null, - "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.get_in_subscription": null, - "azure.mgmt.security.operations.AssessmentsMetadataOperations.create_in_subscription": null, - "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.create_in_subscription": null, - "azure.mgmt.security.operations.AssessmentsMetadataOperations.delete_in_subscription": null, - "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.delete_in_subscription": null, - "azure.mgmt.security.operations.AssessmentsOperations.list": null, - "azure.mgmt.security.aio.operations.AssessmentsOperations.list": null, - "azure.mgmt.security.operations.AssessmentsOperations.get": null, - "azure.mgmt.security.aio.operations.AssessmentsOperations.get": null, - "azure.mgmt.security.operations.AssessmentsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.AssessmentsOperations.create_or_update": null, - "azure.mgmt.security.operations.AssessmentsOperations.delete": null, - "azure.mgmt.security.aio.operations.AssessmentsOperations.delete": null, - "azure.mgmt.security.operations.ComplianceResultsOperations.list": null, - "azure.mgmt.security.aio.operations.ComplianceResultsOperations.list": null, - "azure.mgmt.security.operations.ComplianceResultsOperations.get": null, - "azure.mgmt.security.aio.operations.ComplianceResultsOperations.get": null, - "azure.mgmt.security.operations.AdvancedThreatProtectionOperations.get": null, - "azure.mgmt.security.aio.operations.AdvancedThreatProtectionOperations.get": null, - "azure.mgmt.security.operations.AdvancedThreatProtectionOperations.create": null, - "azure.mgmt.security.aio.operations.AdvancedThreatProtectionOperations.create": null, - "azure.mgmt.security.operations.DeviceSecurityGroupsOperations.list": null, - "azure.mgmt.security.aio.operations.DeviceSecurityGroupsOperations.list": null, - "azure.mgmt.security.operations.DeviceSecurityGroupsOperations.get": null, - "azure.mgmt.security.aio.operations.DeviceSecurityGroupsOperations.get": null, - "azure.mgmt.security.operations.DeviceSecurityGroupsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.DeviceSecurityGroupsOperations.create_or_update": null, - "azure.mgmt.security.operations.DeviceSecurityGroupsOperations.delete": null, - "azure.mgmt.security.aio.operations.DeviceSecurityGroupsOperations.delete": null, - "azure.mgmt.security.operations.IotSecuritySolutionAnalyticsOperations.list": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionAnalyticsOperations.list": null, - "azure.mgmt.security.operations.IotSecuritySolutionAnalyticsOperations.get": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionAnalyticsOperations.get": null, - "azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations.list": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations.list": null, - "azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations.get": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations.get": null, - "azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations.dismiss": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations.dismiss": null, - "azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsRecommendationOperations.get": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsRecommendationOperations.get": null, - "azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsRecommendationOperations.list": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsRecommendationOperations.list": null, - "azure.mgmt.security.operations.IotSecuritySolutionOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionOperations.list_by_subscription": null, - "azure.mgmt.security.operations.IotSecuritySolutionOperations.list_by_resource_group": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionOperations.list_by_resource_group": null, - "azure.mgmt.security.operations.IotSecuritySolutionOperations.get": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionOperations.get": null, - "azure.mgmt.security.operations.IotSecuritySolutionOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionOperations.create_or_update": null, - "azure.mgmt.security.operations.IotSecuritySolutionOperations.update": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionOperations.update": null, - "azure.mgmt.security.operations.IotSecuritySolutionOperations.delete": null, - "azure.mgmt.security.aio.operations.IotSecuritySolutionOperations.delete": null, - "azure.mgmt.security.operations.AllowedConnectionsOperations.list": null, - "azure.mgmt.security.aio.operations.AllowedConnectionsOperations.list": null, - "azure.mgmt.security.operations.AllowedConnectionsOperations.list_by_home_region": null, - "azure.mgmt.security.aio.operations.AllowedConnectionsOperations.list_by_home_region": null, - "azure.mgmt.security.operations.AllowedConnectionsOperations.get": null, - "azure.mgmt.security.aio.operations.AllowedConnectionsOperations.get": null, - "azure.mgmt.security.operations.DiscoveredSecuritySolutionsOperations.list": null, - "azure.mgmt.security.aio.operations.DiscoveredSecuritySolutionsOperations.list": null, - "azure.mgmt.security.operations.DiscoveredSecuritySolutionsOperations.list_by_home_region": null, - "azure.mgmt.security.aio.operations.DiscoveredSecuritySolutionsOperations.list_by_home_region": null, - "azure.mgmt.security.operations.DiscoveredSecuritySolutionsOperations.get": null, - "azure.mgmt.security.aio.operations.DiscoveredSecuritySolutionsOperations.get": null, - "azure.mgmt.security.operations.ExternalSecuritySolutionsOperations.list": null, - "azure.mgmt.security.aio.operations.ExternalSecuritySolutionsOperations.list": null, - "azure.mgmt.security.operations.ExternalSecuritySolutionsOperations.list_by_home_region": null, - "azure.mgmt.security.aio.operations.ExternalSecuritySolutionsOperations.list_by_home_region": null, - "azure.mgmt.security.operations.ExternalSecuritySolutionsOperations.get": null, - "azure.mgmt.security.aio.operations.ExternalSecuritySolutionsOperations.get": null, - "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.list": null, - "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.list": null, - "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.list_by_region": null, - "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.list_by_region": null, - "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.list_by_resource_group": null, - "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.list_by_resource_group": null, - "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.list_by_resource_group_and_region": null, - "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.list_by_resource_group_and_region": null, - "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.get": null, - "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.get": null, - "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.create_or_update": null, - "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.delete": null, - "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.delete": null, - "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.initiate": null, - "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.initiate": null, - "azure.mgmt.security.operations.SecuritySolutionsOperations.list": null, - "azure.mgmt.security.aio.operations.SecuritySolutionsOperations.list": null, - "azure.mgmt.security.operations.SecuritySolutionsOperations.get": null, - "azure.mgmt.security.aio.operations.SecuritySolutionsOperations.get": null, - "azure.mgmt.security.operations.SecuritySolutionsReferenceDataOperations.list": null, - "azure.mgmt.security.aio.operations.SecuritySolutionsReferenceDataOperations.list": null, - "azure.mgmt.security.operations.SecuritySolutionsReferenceDataOperations.list_by_home_region": null, - "azure.mgmt.security.aio.operations.SecuritySolutionsReferenceDataOperations.list_by_home_region": null, - "azure.mgmt.security.operations.ServerVulnerabilityAssessmentOperations.list_by_extended_resource": null, - "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentOperations.list_by_extended_resource": null, - "azure.mgmt.security.operations.ServerVulnerabilityAssessmentOperations.get": null, - "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentOperations.get": null, - "azure.mgmt.security.operations.ServerVulnerabilityAssessmentOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentOperations.create_or_update": null, - "azure.mgmt.security.operations.ServerVulnerabilityAssessmentOperations.begin_delete": null, - "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentOperations.begin_delete": null, - "azure.mgmt.security.operations.TopologyOperations.list": null, - "azure.mgmt.security.aio.operations.TopologyOperations.list": null, - "azure.mgmt.security.operations.TopologyOperations.list_by_home_region": null, - "azure.mgmt.security.aio.operations.TopologyOperations.list_by_home_region": null, - "azure.mgmt.security.operations.TopologyOperations.get": null, - "azure.mgmt.security.aio.operations.TopologyOperations.get": null, - "azure.mgmt.security.operations.AlertsOperations.list": null, - "azure.mgmt.security.aio.operations.AlertsOperations.list": null, - "azure.mgmt.security.operations.AlertsOperations.list_by_resource_group": null, - "azure.mgmt.security.aio.operations.AlertsOperations.list_by_resource_group": null, - "azure.mgmt.security.operations.AlertsOperations.list_subscription_level_by_region": null, - "azure.mgmt.security.aio.operations.AlertsOperations.list_subscription_level_by_region": null, - "azure.mgmt.security.operations.AlertsOperations.list_resource_group_level_by_region": null, - "azure.mgmt.security.aio.operations.AlertsOperations.list_resource_group_level_by_region": null, - "azure.mgmt.security.operations.AlertsOperations.get_subscription_level": null, - "azure.mgmt.security.aio.operations.AlertsOperations.get_subscription_level": null, - "azure.mgmt.security.operations.AlertsOperations.get_resource_group_level": null, - "azure.mgmt.security.aio.operations.AlertsOperations.get_resource_group_level": null, - "azure.mgmt.security.operations.AlertsOperations.update_subscription_level_state_to_dismiss": null, - "azure.mgmt.security.aio.operations.AlertsOperations.update_subscription_level_state_to_dismiss": null, - "azure.mgmt.security.operations.AlertsOperations.update_subscription_level_state_to_resolve": null, - "azure.mgmt.security.aio.operations.AlertsOperations.update_subscription_level_state_to_resolve": null, - "azure.mgmt.security.operations.AlertsOperations.update_subscription_level_state_to_activate": null, - "azure.mgmt.security.aio.operations.AlertsOperations.update_subscription_level_state_to_activate": null, - "azure.mgmt.security.operations.AlertsOperations.update_subscription_level_state_to_in_progress": null, - "azure.mgmt.security.aio.operations.AlertsOperations.update_subscription_level_state_to_in_progress": null, - "azure.mgmt.security.operations.AlertsOperations.update_resource_group_level_state_to_resolve": null, - "azure.mgmt.security.aio.operations.AlertsOperations.update_resource_group_level_state_to_resolve": null, - "azure.mgmt.security.operations.AlertsOperations.update_resource_group_level_state_to_dismiss": null, - "azure.mgmt.security.aio.operations.AlertsOperations.update_resource_group_level_state_to_dismiss": null, - "azure.mgmt.security.operations.AlertsOperations.update_resource_group_level_state_to_activate": null, - "azure.mgmt.security.aio.operations.AlertsOperations.update_resource_group_level_state_to_activate": null, - "azure.mgmt.security.operations.AlertsOperations.update_resource_group_level_state_to_in_progress": null, - "azure.mgmt.security.aio.operations.AlertsOperations.update_resource_group_level_state_to_in_progress": null, - "azure.mgmt.security.operations.AlertsOperations.begin_simulate": null, - "azure.mgmt.security.aio.operations.AlertsOperations.begin_simulate": null, - "azure.mgmt.security.operations.SettingsOperations.list": null, - "azure.mgmt.security.aio.operations.SettingsOperations.list": null, - "azure.mgmt.security.operations.SettingsOperations.get": null, - "azure.mgmt.security.aio.operations.SettingsOperations.get": null, - "azure.mgmt.security.operations.SettingsOperations.update": null, - "azure.mgmt.security.aio.operations.SettingsOperations.update": null, - "azure.mgmt.security.operations.ServerVulnerabilityAssessmentsSettingsOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentsSettingsOperations.list_by_subscription": null, - "azure.mgmt.security.operations.ServerVulnerabilityAssessmentsSettingsOperations.get": null, - "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentsSettingsOperations.get": null, - "azure.mgmt.security.operations.ServerVulnerabilityAssessmentsSettingsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentsSettingsOperations.create_or_update": null, - "azure.mgmt.security.operations.ServerVulnerabilityAssessmentsSettingsOperations.delete": null, - "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentsSettingsOperations.delete": null, - "azure.mgmt.security.operations.APICollectionsOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.APICollectionsOperations.list_by_subscription": null, - "azure.mgmt.security.operations.APICollectionsOperations.list_by_resource_group": null, - "azure.mgmt.security.aio.operations.APICollectionsOperations.list_by_resource_group": null, - "azure.mgmt.security.operations.APICollectionsOperations.list_by_azure_api_management_service": null, - "azure.mgmt.security.aio.operations.APICollectionsOperations.list_by_azure_api_management_service": null, - "azure.mgmt.security.operations.APICollectionsOperations.get_by_azure_api_management_service": null, - "azure.mgmt.security.aio.operations.APICollectionsOperations.get_by_azure_api_management_service": null, - "azure.mgmt.security.operations.APICollectionsOperations.begin_onboard_azure_api_management_api": null, - "azure.mgmt.security.aio.operations.APICollectionsOperations.begin_onboard_azure_api_management_api": null, - "azure.mgmt.security.operations.APICollectionsOperations.offboard_azure_api_management_api": null, - "azure.mgmt.security.aio.operations.APICollectionsOperations.offboard_azure_api_management_api": null, - "azure.mgmt.security.operations.PricingsOperations.get": null, - "azure.mgmt.security.aio.operations.PricingsOperations.get": null, - "azure.mgmt.security.operations.PricingsOperations.update": null, - "azure.mgmt.security.aio.operations.PricingsOperations.update": null, - "azure.mgmt.security.operations.PricingsOperations.delete": null, - "azure.mgmt.security.aio.operations.PricingsOperations.delete": null, - "azure.mgmt.security.operations.PricingsOperations.list": null, - "azure.mgmt.security.aio.operations.PricingsOperations.list": null, - "azure.mgmt.security.operations.SecurityStandardsOperations.list": null, - "azure.mgmt.security.aio.operations.SecurityStandardsOperations.list": null, - "azure.mgmt.security.operations.SecurityStandardsOperations.get": null, - "azure.mgmt.security.aio.operations.SecurityStandardsOperations.get": null, - "azure.mgmt.security.operations.SecurityStandardsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.SecurityStandardsOperations.create_or_update": null, - "azure.mgmt.security.operations.SecurityStandardsOperations.delete": null, - "azure.mgmt.security.aio.operations.SecurityStandardsOperations.delete": null, - "azure.mgmt.security.operations.StandardAssignmentsOperations.get": null, - "azure.mgmt.security.aio.operations.StandardAssignmentsOperations.get": null, - "azure.mgmt.security.operations.StandardAssignmentsOperations.create": null, - "azure.mgmt.security.aio.operations.StandardAssignmentsOperations.create": null, - "azure.mgmt.security.operations.StandardAssignmentsOperations.delete": null, - "azure.mgmt.security.aio.operations.StandardAssignmentsOperations.delete": null, - "azure.mgmt.security.operations.StandardAssignmentsOperations.list": null, - "azure.mgmt.security.aio.operations.StandardAssignmentsOperations.list": null, - "azure.mgmt.security.operations.CustomRecommendationsOperations.list": null, - "azure.mgmt.security.aio.operations.CustomRecommendationsOperations.list": null, - "azure.mgmt.security.operations.CustomRecommendationsOperations.get": null, - "azure.mgmt.security.aio.operations.CustomRecommendationsOperations.get": null, - "azure.mgmt.security.operations.CustomRecommendationsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.CustomRecommendationsOperations.create_or_update": null, - "azure.mgmt.security.operations.CustomRecommendationsOperations.delete": null, - "azure.mgmt.security.aio.operations.CustomRecommendationsOperations.delete": null, - "azure.mgmt.security.operations.StandardsOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.StandardsOperations.list_by_subscription": null, - "azure.mgmt.security.operations.StandardsOperations.list": null, - "azure.mgmt.security.aio.operations.StandardsOperations.list": null, - "azure.mgmt.security.operations.StandardsOperations.get": null, - "azure.mgmt.security.aio.operations.StandardsOperations.get": null, - "azure.mgmt.security.operations.StandardsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.StandardsOperations.create_or_update": null, - "azure.mgmt.security.operations.StandardsOperations.delete": null, - "azure.mgmt.security.aio.operations.StandardsOperations.delete": null, - "azure.mgmt.security.operations.AssignmentsOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.AssignmentsOperations.list_by_subscription": null, - "azure.mgmt.security.operations.AssignmentsOperations.list": null, - "azure.mgmt.security.aio.operations.AssignmentsOperations.list": null, - "azure.mgmt.security.operations.AssignmentsOperations.get": null, - "azure.mgmt.security.aio.operations.AssignmentsOperations.get": null, - "azure.mgmt.security.operations.AssignmentsOperations.create_or_update": null, - "azure.mgmt.security.aio.operations.AssignmentsOperations.create_or_update": null, - "azure.mgmt.security.operations.AssignmentsOperations.delete": null, - "azure.mgmt.security.aio.operations.AssignmentsOperations.delete": null, - "azure.mgmt.security.operations.DefenderForStorageOperations.list": null, - "azure.mgmt.security.aio.operations.DefenderForStorageOperations.list": null, - "azure.mgmt.security.operations.DefenderForStorageOperations.get": null, - "azure.mgmt.security.aio.operations.DefenderForStorageOperations.get": null, - "azure.mgmt.security.operations.DefenderForStorageOperations.create": null, - "azure.mgmt.security.aio.operations.DefenderForStorageOperations.create": null, - "azure.mgmt.security.operations.DefenderForStorageOperations.start_malware_scan": null, - "azure.mgmt.security.aio.operations.DefenderForStorageOperations.start_malware_scan": null, - "azure.mgmt.security.operations.DefenderForStorageOperations.cancel_malware_scan": null, - "azure.mgmt.security.aio.operations.DefenderForStorageOperations.cancel_malware_scan": null, - "azure.mgmt.security.operations.DefenderForStorageOperations.get_malware_scan": null, - "azure.mgmt.security.aio.operations.DefenderForStorageOperations.get_malware_scan": null, - "azure.mgmt.security.operations.PrivateLinksOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.list_by_subscription": null, - "azure.mgmt.security.operations.PrivateLinksOperations.list": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.list": null, - "azure.mgmt.security.operations.PrivateLinksOperations.get": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.get": null, - "azure.mgmt.security.operations.PrivateLinksOperations.head": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.head": null, - "azure.mgmt.security.operations.PrivateLinksOperations.begin_create": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.begin_create": null, - "azure.mgmt.security.operations.PrivateLinksOperations.update": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.update": null, - "azure.mgmt.security.operations.PrivateLinksOperations.begin_delete": null, - "azure.mgmt.security.aio.operations.PrivateLinksOperations.begin_delete": null, - "azure.mgmt.security.operations.PrivateLinkResourcesOperations.list": null, - "azure.mgmt.security.aio.operations.PrivateLinkResourcesOperations.list": null, - "azure.mgmt.security.operations.PrivateLinkResourcesOperations.get": null, - "azure.mgmt.security.aio.operations.PrivateLinkResourcesOperations.get": null, - "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.list": null, - "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.list": null, - "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.get": null, - "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.get": null, - "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.begin_create_or_update": null, - "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.begin_create_or_update": null, - "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.begin_delete": null, - "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.begin_delete": null, - "azure.mgmt.security.operations.SecureScoresOperations.list": null, - "azure.mgmt.security.aio.operations.SecureScoresOperations.list": null, - "azure.mgmt.security.operations.SecureScoresOperations.get": null, - "azure.mgmt.security.aio.operations.SecureScoresOperations.get": null, - "azure.mgmt.security.operations.SecureScoreControlsOperations.list_by_secure_score": null, - "azure.mgmt.security.aio.operations.SecureScoreControlsOperations.list_by_secure_score": null, - "azure.mgmt.security.operations.SecureScoreControlsOperations.list": null, - "azure.mgmt.security.aio.operations.SecureScoreControlsOperations.list": null, - "azure.mgmt.security.operations.SecureScoreControlDefinitionsOperations.list": null, - "azure.mgmt.security.aio.operations.SecureScoreControlDefinitionsOperations.list": null, - "azure.mgmt.security.operations.SecureScoreControlDefinitionsOperations.list_by_subscription": null, - "azure.mgmt.security.aio.operations.SecureScoreControlDefinitionsOperations.list_by_subscription": null + "azure.mgmt.security.models.Resource": "Azure.ResourceManager.CommonTypes.Resource", + "azure.mgmt.security.models.ProxyResource": "Azure.ResourceManager.CommonTypes.ProxyResource", + "azure.mgmt.security.models.ExternalSecuritySolution": "SecuritySolutionsAPI.ExternalSecuritySolution", + "azure.mgmt.security.models.AadExternalSecuritySolution": "SecuritySolutionsAPI.AadExternalSecuritySolution", + "azure.mgmt.security.models.AadSolutionProperties": "SecuritySolutionsAPI.AadSolutionProperties", + "azure.mgmt.security.models.Authentication": "SecurityConnectorsAPI.Authentication", + "azure.mgmt.security.models.AccessTokenAuthentication": "SecurityConnectorsAPI.AccessTokenAuthentication", + "azure.mgmt.security.models.ActionableRemediation": "SecurityConnectorsDevOpsAPI.ActionableRemediation", + "azure.mgmt.security.models.AdditionalData": "SubAssessmentsAPI.AdditionalData", + "azure.mgmt.security.models.AdditionalWorkspacesProperties": "IoTSecurityAPI.AdditionalWorkspacesProperties", + "azure.mgmt.security.models.AdvancedThreatProtectionProperties": "ATPSettingsAPI.AdvancedThreatProtectionProperties", + "azure.mgmt.security.models.ExtensionResource": "Azure.ResourceManager.CommonTypes.ExtensionResource", + "azure.mgmt.security.models.AdvancedThreatProtectionSetting": "ATPSettingsAPI.AdvancedThreatProtectionSetting", + "azure.mgmt.security.models.AgentlessConfiguration": "SecurityConnectorsDevOpsAPI.AgentlessConfiguration", + "azure.mgmt.security.models.Alert": "AlertsAPI.Alert", + "azure.mgmt.security.models.AlertEntity": "AlertsAPI.AlertEntity", + "azure.mgmt.security.models.AlertProperties": "AlertsAPI.AlertProperties", + "azure.mgmt.security.models.AlertPropertiesSupportingEvidence": "AlertsAPI.AlertPropertiesSupportingEvidence", + "azure.mgmt.security.models.AlertSimulatorRequestProperties": "AlertsAPI.AlertSimulatorRequestProperties", + "azure.mgmt.security.models.AlertSimulatorBundlesRequestProperties": "AlertsAPI.AlertSimulatorBundlesRequestProperties", + "azure.mgmt.security.models.AlertSimulatorRequestBody": "AlertsAPI.AlertSimulatorRequestBody", + "azure.mgmt.security.models.AlertsSuppressionRule": "AlertsSuppressionRulesAPI.AlertsSuppressionRule", + "azure.mgmt.security.models.AlertsSuppressionRuleProperties": "AlertsSuppressionRulesAPI.AlertsSuppressionRuleProperties", + "azure.mgmt.security.models.AlertSyncSettingProperties": "SettingsAPI.AlertSyncSettingProperties", + "azure.mgmt.security.models.Setting": "SettingsAPI.Setting", + "azure.mgmt.security.models.AlertSyncSettings": "SettingsAPI.AlertSyncSettings", + "azure.mgmt.security.models.AllowedConnectionsResource": "SecuritySolutionsAPI.AllowedConnectionsResource", + "azure.mgmt.security.models.AllowedConnectionsResourceProperties": "SecuritySolutionsAPI.AllowedConnectionsResourceProperties", + "azure.mgmt.security.models.CustomAlertRule": "IoTSecurityAPI.CustomAlertRule", + "azure.mgmt.security.models.ListCustomAlertRule": "IoTSecurityAPI.ListCustomAlertRule", + "azure.mgmt.security.models.AllowlistCustomAlertRule": "IoTSecurityAPI.AllowlistCustomAlertRule", + "azure.mgmt.security.models.ApiCollection": "ApiCollectionsAPI.ApiCollection", + "azure.mgmt.security.models.ApiCollectionProperties": "ApiCollectionsAPI.ApiCollectionProperties", + "azure.mgmt.security.models.Application": "ApplicationsAPI.Application", + "azure.mgmt.security.models.ApplicationProperties": "ApplicationsAPI.ApplicationProperties", + "azure.mgmt.security.models.ArcAutoProvisioning": "SecurityConnectorsAPI.arcAutoProvisioning", + "azure.mgmt.security.models.ArcAutoProvisioningAws": "SecurityConnectorsAPI.arcAutoProvisioningAws", + "azure.mgmt.security.models.ArcAutoProvisioningConfiguration": "SecurityConnectorsAPI.ArcAutoProvisioningConfiguration", + "azure.mgmt.security.models.ArcAutoProvisioningGcp": "SecurityConnectorsAPI.arcAutoProvisioningGcp", + "azure.mgmt.security.models.ArmErrorAdditionalInfo": "Azure.ResourceManager.CommonTypes.ErrorAdditionalInfo", + "azure.mgmt.security.models.AscLocation": "LocationsAPI.AscLocation", + "azure.mgmt.security.models.AssessmentLinks": "AssessmentAPI.AssessmentLinks", + "azure.mgmt.security.models.AssessmentStatus": "AssessmentAPI.AssessmentStatus", + "azure.mgmt.security.models.AssessmentStatusResponse": "AssessmentAPI.AssessmentStatusResponse", + "azure.mgmt.security.models.AssignedAssessmentItem": "SecurityStandardsAPI.AssignedAssessmentItem", + "azure.mgmt.security.models.AssignedComponentItem": "StandardsAPI.AssignedComponentItem", + "azure.mgmt.security.models.AssignedStandardItem": "Common.AssignedStandardItem", + "azure.mgmt.security.models.Assignment": "StandardsAPI.Assignment", + "azure.mgmt.security.models.AssignmentProperties": "StandardsAPI.AssignmentProperties", + "azure.mgmt.security.models.AssignmentPropertiesAdditionalData": "StandardsAPI.AssignmentPropertiesAdditionalData", + "azure.mgmt.security.models.AtaExternalSecuritySolution": "SecuritySolutionsAPI.AtaExternalSecuritySolution", + "azure.mgmt.security.models.ExternalSecuritySolutionProperties": "SecuritySolutionsAPI.ExternalSecuritySolutionProperties", + "azure.mgmt.security.models.AtaSolutionProperties": "SecuritySolutionsAPI.AtaSolutionProperties", + "azure.mgmt.security.models.AttestationEvidence": "SecurityStandardsAPI.AttestationEvidence", + "azure.mgmt.security.models.Authorization": "SecurityConnectorsDevOpsAPI.Authorization", + "azure.mgmt.security.models.Automation": "AutomationsAPI.Automation", + "azure.mgmt.security.models.AutomationAction": "AutomationsAPI.AutomationAction", + "azure.mgmt.security.models.AutomationActionEventHub": "AutomationsAPI.AutomationActionEventHub", + "azure.mgmt.security.models.AutomationActionLogicApp": "AutomationsAPI.AutomationActionLogicApp", + "azure.mgmt.security.models.AutomationActionWorkspace": "AutomationsAPI.AutomationActionWorkspace", + "azure.mgmt.security.models.AutomationProperties": "AutomationsAPI.AutomationProperties", + "azure.mgmt.security.models.AutomationRuleSet": "AutomationsAPI.AutomationRuleSet", + "azure.mgmt.security.models.AutomationScope": "AutomationsAPI.AutomationScope", + "azure.mgmt.security.models.AutomationSource": "AutomationsAPI.AutomationSource", + "azure.mgmt.security.models.AutomationTriggeringRule": "AutomationsAPI.AutomationTriggeringRule", + "azure.mgmt.security.models.Tags": "Common.Tags", + "azure.mgmt.security.models.AutomationUpdateModel": "AutomationsAPI.AutomationUpdateModel", + "azure.mgmt.security.models.AutomationValidationStatus": "AutomationsAPI.AutomationValidationStatus", + "azure.mgmt.security.models.AutoProvisioningSetting": "LegacySettingsAPI.AutoProvisioningSetting", + "azure.mgmt.security.models.AutoProvisioningSettingProperties": "LegacySettingsAPI.AutoProvisioningSettingProperties", + "azure.mgmt.security.models.EnvironmentData": "SecurityConnectorsAPI.EnvironmentData", + "azure.mgmt.security.models.AwsEnvironmentData": "SecurityConnectorsAPI.AwsEnvironmentData", + "azure.mgmt.security.models.AwsOrganizationalData": "SecurityConnectorsAPI.AwsOrganizationalData", + "azure.mgmt.security.models.AwsOrganizationalDataMaster": "SecurityConnectorsAPI.AwsOrganizationalDataMaster", + "azure.mgmt.security.models.AwsOrganizationalDataMember": "SecurityConnectorsAPI.AwsOrganizationalDataMember", + "azure.mgmt.security.models.AzureDevOpsOrg": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrg", + "azure.mgmt.security.models.AzureDevOpsOrgListResponse": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgListResponse", + "azure.mgmt.security.models.AzureDevOpsOrgProperties": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgProperties", + "azure.mgmt.security.models.AzureDevOpsProject": "SecurityConnectorsDevOpsAPI.AzureDevOpsProject", + "azure.mgmt.security.models.AzureDevOpsProjectProperties": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjectProperties", + "azure.mgmt.security.models.AzureDevOpsRepository": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepository", + "azure.mgmt.security.models.AzureDevOpsRepositoryProperties": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositoryProperties", + "azure.mgmt.security.models.AzureDevOpsScopeEnvironmentData": "SecurityConnectorsAPI.AzureDevOpsScopeEnvironmentData", + "azure.mgmt.security.models.CommonResourceDetails": "Common.ResourceDetails", + "azure.mgmt.security.models.AzureResourceDetails": "AssessmentAPI.AzureResourceDetails", + "azure.mgmt.security.models.ResourceIdentifier": "AlertsAPI.ResourceIdentifier", + "azure.mgmt.security.models.AzureResourceIdentifier": "AlertsAPI.AzureResourceIdentifier", + "azure.mgmt.security.models.AzureResourceLink": "SecureScoreAPI.AzureResourceLink", + "azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSetting", + "azure.mgmt.security.models.AzureServersSetting": "ServerVulnerabilityAssessmentsSettingsAPI.AzureServersSetting", + "azure.mgmt.security.models.Baseline": "SqlVulnerabilityAssessmentsAPI.Baseline", + "azure.mgmt.security.models.BaselineAdjustedResult": "SqlVulnerabilityAssessmentsAPI.BaselineAdjustedResult", + "azure.mgmt.security.models.BenchmarkReference": "SqlVulnerabilityAssessmentsAPI.BenchmarkReference", + "azure.mgmt.security.models.BlobsScanSummary": "DefenderForStorageAPI.BlobsScanSummary", + "azure.mgmt.security.models.BuiltInInfoType": "SensitivitySettingsAPI.BuiltInInfoType", + "azure.mgmt.security.models.CategoryConfiguration": "SecurityConnectorsDevOpsAPI.CategoryConfiguration", + "azure.mgmt.security.models.CefExternalSecuritySolution": "SecuritySolutionsAPI.CefExternalSecuritySolution", + "azure.mgmt.security.models.CefSolutionProperties": "SecuritySolutionsAPI.CefSolutionProperties", + "azure.mgmt.security.models.CloudError": "Common.CloudError", + "azure.mgmt.security.models.CloudErrorBody": "Common.CloudErrorBody", + "azure.mgmt.security.models.CloudOffering": "SecurityConnectorsAPI.cloudOffering", + "azure.mgmt.security.models.Compliance": "LegacySettingsAPI.Compliance", + "azure.mgmt.security.models.ComplianceProperties": "LegacySettingsAPI.ComplianceProperties", + "azure.mgmt.security.models.ComplianceResult": "ComplianceResultsAPI.ComplianceResult", + "azure.mgmt.security.models.ComplianceResultProperties": "ComplianceResultsAPI.ComplianceResultProperties", + "azure.mgmt.security.models.ComplianceSegment": "LegacySettingsAPI.ComplianceSegment", + "azure.mgmt.security.models.ConnectableResource": "SecuritySolutionsAPI.ConnectableResource", + "azure.mgmt.security.models.ConnectedResource": "SecuritySolutionsAPI.ConnectedResource", + "azure.mgmt.security.models.ConnectedWorkspace": "SecuritySolutionsAPI.ConnectedWorkspace", + "azure.mgmt.security.models.ContainerRegistryVulnerabilityProperties": "SubAssessmentsAPI.ContainerRegistryVulnerabilityProperties", + "azure.mgmt.security.models.CspmMonitorAwsOffering": "SecurityConnectorsAPI.cspmMonitorAwsOffering", + "azure.mgmt.security.models.CspmMonitorAwsOfferingNativeCloudConnection": "SecurityConnectorsAPI.CspmMonitorAwsOfferingNativeCloudConnection", + "azure.mgmt.security.models.CspmMonitorAzureDevOpsOffering": "SecurityConnectorsAPI.cspmMonitorAzureDevOpsOffering", + "azure.mgmt.security.models.CspmMonitorDockerHubOffering": "SecurityConnectorsAPI.cspmMonitorDockerHubOffering", + "azure.mgmt.security.models.CspmMonitorGcpOffering": "SecurityConnectorsAPI.cspmMonitorGcpOffering", + "azure.mgmt.security.models.CspmMonitorGcpOfferingNativeCloudConnection": "SecurityConnectorsAPI.CspmMonitorGcpOfferingNativeCloudConnection", + "azure.mgmt.security.models.CspmMonitorGithubOffering": "SecurityConnectorsAPI.cspmMonitorGithubOffering", + "azure.mgmt.security.models.CspmMonitorGitLabOffering": "SecurityConnectorsAPI.cspmMonitorGitLabOffering", + "azure.mgmt.security.models.CspmMonitorJFrogOffering": "SecurityConnectorsAPI.cspmMonitorJFrogOffering", + "azure.mgmt.security.models.CustomRecommendation": "SecurityStandardsAPI.CustomRecommendation", + "azure.mgmt.security.models.CustomRecommendationProperties": "SecurityStandardsAPI.CustomRecommendationProperties", + "azure.mgmt.security.models.CVE": "SubAssessmentsAPI.CVE", + "azure.mgmt.security.models.CVSS": "SubAssessmentsAPI.CVSS", + "azure.mgmt.security.models.DataExportSettingProperties": "SettingsAPI.DataExportSettingProperties", + "azure.mgmt.security.models.DataExportSettings": "SettingsAPI.DataExportSettings", + "azure.mgmt.security.models.DefenderCspmAwsOffering": "SecurityConnectorsAPI.defenderCspmAwsOffering", + "azure.mgmt.security.models.DefenderCspmAwsOfferingCiem": "SecurityConnectorsAPI.DefenderCspmAwsOfferingCiem", + "azure.mgmt.security.models.DefenderCspmAwsOfferingCiemCiemDiscovery": "SecurityConnectorsAPI.DefenderCspmAwsOfferingCiemCiemDiscovery", + "azure.mgmt.security.models.DefenderCspmAwsOfferingCiemCiemOidc": "SecurityConnectorsAPI.DefenderCspmAwsOfferingCiemCiemOidc", + "azure.mgmt.security.models.DefenderCspmAwsOfferingDatabasesDspm": "SecurityConnectorsAPI.DefenderCspmAwsOfferingDatabasesDspm", + "azure.mgmt.security.models.DefenderCspmAwsOfferingDataSensitivityDiscovery": "SecurityConnectorsAPI.DefenderCspmAwsOfferingDataSensitivityDiscovery", + "azure.mgmt.security.models.DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S": "SecurityConnectorsAPI.DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S", + "azure.mgmt.security.models.DefenderCspmAwsOfferingMdcContainersImageAssessment": "SecurityConnectorsAPI.DefenderCspmAwsOfferingMdcContainersImageAssessment", + "azure.mgmt.security.models.VmScannersBase": "SecurityConnectorsAPI.vmScannersBase", + "azure.mgmt.security.models.VmScannersAws": "SecurityConnectorsAPI.vmScannersAws", + "azure.mgmt.security.models.DefenderCspmAwsOfferingVmScanners": "SecurityConnectorsAPI.defenderCspmAwsOfferingVmScanners", + "azure.mgmt.security.models.DefenderCspmDockerHubOffering": "SecurityConnectorsAPI.defenderCspmDockerHubOffering", + "azure.mgmt.security.models.DefenderCspmGcpOffering": "SecurityConnectorsAPI.defenderCspmGcpOffering", + "azure.mgmt.security.models.DefenderCspmGcpOfferingCiemDiscovery": "SecurityConnectorsAPI.DefenderCspmGcpOfferingCiemDiscovery", + "azure.mgmt.security.models.DefenderCspmGcpOfferingDataSensitivityDiscovery": "SecurityConnectorsAPI.DefenderCspmGcpOfferingDataSensitivityDiscovery", + "azure.mgmt.security.models.DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S": "SecurityConnectorsAPI.DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S", + "azure.mgmt.security.models.DefenderCspmGcpOfferingMdcContainersImageAssessment": "SecurityConnectorsAPI.DefenderCspmGcpOfferingMdcContainersImageAssessment", + "azure.mgmt.security.models.VmScannersGcp": "SecurityConnectorsAPI.vmScannersGcp", + "azure.mgmt.security.models.DefenderCspmGcpOfferingVmScanners": "SecurityConnectorsAPI.defenderCspmGcpOfferingVmScanners", + "azure.mgmt.security.models.DefenderCspmJFrogOffering": "SecurityConnectorsAPI.defenderCspmJFrogOffering", + "azure.mgmt.security.models.DefenderCspmJFrogOfferingMdcContainersImageAssessment": "SecurityConnectorsAPI.DefenderCspmJFrogOfferingMdcContainersImageAssessment", + "azure.mgmt.security.models.DefenderFoDatabasesAwsOffering": "SecurityConnectorsAPI.defenderFoDatabasesAwsOffering", + "azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingArcAutoProvisioning": "SecurityConnectorsAPI.DefenderFoDatabasesAwsOfferingArcAutoProvisioning", + "azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingDatabasesDspm": "SecurityConnectorsAPI.DefenderFoDatabasesAwsOfferingDatabasesDspm", + "azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingRds": "SecurityConnectorsAPI.DefenderFoDatabasesAwsOfferingRds", + "azure.mgmt.security.models.DefenderForContainersAwsOffering": "SecurityConnectorsAPI.defenderForContainersAwsOffering", + "azure.mgmt.security.models.DefenderForContainersAwsOfferingCloudWatchToKinesis": "SecurityConnectorsAPI.DefenderForContainersAwsOfferingCloudWatchToKinesis", + "azure.mgmt.security.models.DefenderForContainersAwsOfferingKinesisToS3": "SecurityConnectorsAPI.DefenderForContainersAwsOfferingKinesisToS3", + "azure.mgmt.security.models.DefenderForContainersAwsOfferingKubernetesDataCollection": "SecurityConnectorsAPI.DefenderForContainersAwsOfferingKubernetesDataCollection", + "azure.mgmt.security.models.DefenderForContainersAwsOfferingKubernetesService": "SecurityConnectorsAPI.DefenderForContainersAwsOfferingKubernetesService", + "azure.mgmt.security.models.DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S": "SecurityConnectorsAPI.DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S", + "azure.mgmt.security.models.DefenderForContainersAwsOfferingMdcContainersImageAssessment": "SecurityConnectorsAPI.DefenderForContainersAwsOfferingMdcContainersImageAssessment", + "azure.mgmt.security.models.DefenderForContainersAwsOfferingVmScanners": "SecurityConnectorsAPI.defenderForContainersAwsOfferingVmScanners", + "azure.mgmt.security.models.DefenderForContainersDockerHubOffering": "SecurityConnectorsAPI.defenderForContainersDockerHubOffering", + "azure.mgmt.security.models.DefenderForContainersGcpOffering": "SecurityConnectorsAPI.defenderForContainersGcpOffering", + "azure.mgmt.security.models.DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection": "SecurityConnectorsAPI.DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection", + "azure.mgmt.security.models.DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S": "SecurityConnectorsAPI.DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S", + "azure.mgmt.security.models.DefenderForContainersGcpOfferingMdcContainersImageAssessment": "SecurityConnectorsAPI.DefenderForContainersGcpOfferingMdcContainersImageAssessment", + "azure.mgmt.security.models.DefenderForContainersGcpOfferingNativeCloudConnection": "SecurityConnectorsAPI.DefenderForContainersGcpOfferingNativeCloudConnection", + "azure.mgmt.security.models.DefenderForContainersGcpOfferingVmScanners": "SecurityConnectorsAPI.defenderForContainersGcpOfferingVmScanners", + "azure.mgmt.security.models.DefenderForContainersJFrogOffering": "SecurityConnectorsAPI.defenderForContainersJFrogOffering", + "azure.mgmt.security.models.DefenderForDatabasesGcpOffering": "SecurityConnectorsAPI.defenderForDatabasesGcpOffering", + "azure.mgmt.security.models.DefenderForDatabasesGcpOfferingArcAutoProvisioning": "SecurityConnectorsAPI.DefenderForDatabasesGcpOfferingArcAutoProvisioning", + "azure.mgmt.security.models.DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning": "SecurityConnectorsAPI.DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning", + "azure.mgmt.security.models.DefenderForServersAwsOffering": "SecurityConnectorsAPI.defenderForServersAwsOffering", + "azure.mgmt.security.models.DefenderForServersAwsOfferingArcAutoProvisioning": "SecurityConnectorsAPI.DefenderForServersAwsOfferingArcAutoProvisioning", + "azure.mgmt.security.models.DefenderForServersAwsOfferingDefenderForServers": "SecurityConnectorsAPI.DefenderForServersAwsOfferingDefenderForServers", + "azure.mgmt.security.models.DefenderForServersAwsOfferingMdeAutoProvisioning": "SecurityConnectorsAPI.DefenderForServersAwsOfferingMdeAutoProvisioning", + "azure.mgmt.security.models.DefenderForServersAwsOfferingSubPlan": "SecurityConnectorsAPI.DefenderForServersAwsOfferingSubPlan", + "azure.mgmt.security.models.DefenderForServersAwsOfferingVaAutoProvisioning": "SecurityConnectorsAPI.DefenderForServersAwsOfferingVaAutoProvisioning", + "azure.mgmt.security.models.DefenderForServersAwsOfferingVaAutoProvisioningConfiguration": "SecurityConnectorsAPI.DefenderForServersAwsOfferingVaAutoProvisioningConfiguration", + "azure.mgmt.security.models.DefenderForServersAwsOfferingVmScanners": "SecurityConnectorsAPI.defenderForServersAwsOfferingVmScanners", + "azure.mgmt.security.models.DefenderForServersGcpOffering": "SecurityConnectorsAPI.defenderForServersGcpOffering", + "azure.mgmt.security.models.DefenderForServersGcpOfferingArcAutoProvisioning": "SecurityConnectorsAPI.DefenderForServersGcpOfferingArcAutoProvisioning", + "azure.mgmt.security.models.DefenderForServersGcpOfferingDefenderForServers": "SecurityConnectorsAPI.DefenderForServersGcpOfferingDefenderForServers", + "azure.mgmt.security.models.DefenderForServersGcpOfferingMdeAutoProvisioning": "SecurityConnectorsAPI.DefenderForServersGcpOfferingMdeAutoProvisioning", + "azure.mgmt.security.models.DefenderForServersGcpOfferingSubPlan": "SecurityConnectorsAPI.DefenderForServersGcpOfferingSubPlan", + "azure.mgmt.security.models.DefenderForServersGcpOfferingVaAutoProvisioning": "SecurityConnectorsAPI.DefenderForServersGcpOfferingVaAutoProvisioning", + "azure.mgmt.security.models.DefenderForServersGcpOfferingVaAutoProvisioningConfiguration": "SecurityConnectorsAPI.DefenderForServersGcpOfferingVaAutoProvisioningConfiguration", + "azure.mgmt.security.models.DefenderForServersGcpOfferingVmScanners": "SecurityConnectorsAPI.defenderForServersGcpOfferingVmScanners", + "azure.mgmt.security.models.DefenderForStorageSetting": "DefenderForStorageAPI.DefenderForStorageSetting", + "azure.mgmt.security.models.DefenderForStorageSettingProperties": "DefenderForStorageAPI.DefenderForStorageSettingProperties", + "azure.mgmt.security.models.DenylistCustomAlertRule": "IoTSecurityAPI.DenylistCustomAlertRule", + "azure.mgmt.security.models.DeviceSecurityGroup": "IoTSecurityAPI.DeviceSecurityGroup", + "azure.mgmt.security.models.DeviceSecurityGroupProperties": "IoTSecurityAPI.DeviceSecurityGroupProperties", + "azure.mgmt.security.models.DevOpsCapability": "SecurityConnectorsDevOpsAPI.DevOpsCapability", + "azure.mgmt.security.models.DevOpsConfiguration": "SecurityConnectorsDevOpsAPI.DevOpsConfiguration", + "azure.mgmt.security.models.DevOpsConfigurationProperties": "SecurityConnectorsDevOpsAPI.DevOpsConfigurationProperties", + "azure.mgmt.security.models.DiscoveredSecuritySolution": "SecuritySolutionsAPI.DiscoveredSecuritySolution", + "azure.mgmt.security.models.DiscoveredSecuritySolutionProperties": "SecuritySolutionsAPI.DiscoveredSecuritySolutionProperties", + "azure.mgmt.security.models.DockerHubEnvironmentData": "SecurityConnectorsAPI.DockerHubEnvironmentData", + "azure.mgmt.security.models.EnvironmentDetails": "HealthReportsAPI.environmentDetails", + "azure.mgmt.security.models.ErrorDetail": "Azure.ResourceManager.CommonTypes.ErrorDetail", + "azure.mgmt.security.models.ErrorResponse": "Azure.ResourceManager.CommonTypes.ErrorResponse", + "azure.mgmt.security.models.ExecuteGovernanceRuleParams": "GovernanceAPI.ExecuteGovernanceRuleParams", + "azure.mgmt.security.models.Extension": "PricingsAPI.Extension", + "azure.mgmt.security.models.FilesScanSummary": "DefenderForStorageAPI.FilesScanSummary", + "azure.mgmt.security.models.GcpOrganizationalData": "SecurityConnectorsAPI.GcpOrganizationalData", + "azure.mgmt.security.models.GcpOrganizationalDataMember": "SecurityConnectorsAPI.GcpOrganizationalDataMember", + "azure.mgmt.security.models.GcpOrganizationalDataOrganization": "SecurityConnectorsAPI.GcpOrganizationalDataOrganization", + "azure.mgmt.security.models.GcpProjectDetails": "SecurityConnectorsAPI.GcpProjectDetails", + "azure.mgmt.security.models.GcpProjectEnvironmentData": "SecurityConnectorsAPI.GcpProjectEnvironmentData", + "azure.mgmt.security.models.GetSensitivitySettingsResponse": "SensitivitySettingsAPI.GetSensitivitySettingsResponse", + "azure.mgmt.security.models.GetSensitivitySettingsResponseProperties": "SensitivitySettingsAPI.GetSensitivitySettingsResponseProperties", + "azure.mgmt.security.models.GetSensitivitySettingsResponsePropertiesMipInformation": "SensitivitySettingsAPI.GetSensitivitySettingsResponsePropertiesMipInformation", + "azure.mgmt.security.models.GitHubOwner": "SecurityConnectorsDevOpsAPI.GitHubOwner", + "azure.mgmt.security.models.GitHubOwnerListResponse": "SecurityConnectorsDevOpsAPI.GitHubOwnerListResponse", + "azure.mgmt.security.models.GitHubOwnerProperties": "SecurityConnectorsDevOpsAPI.GitHubOwnerProperties", + "azure.mgmt.security.models.GitHubRepository": "SecurityConnectorsDevOpsAPI.GitHubRepository", + "azure.mgmt.security.models.GitHubRepositoryProperties": "SecurityConnectorsDevOpsAPI.GitHubRepositoryProperties", + "azure.mgmt.security.models.GithubScopeEnvironmentData": "SecurityConnectorsAPI.GithubScopeEnvironmentData", + "azure.mgmt.security.models.GitLabGroup": "SecurityConnectorsDevOpsAPI.GitLabGroup", + "azure.mgmt.security.models.GitLabGroupListResponse": "SecurityConnectorsDevOpsAPI.GitLabGroupListResponse", + "azure.mgmt.security.models.GitLabGroupProperties": "SecurityConnectorsDevOpsAPI.GitLabGroupProperties", + "azure.mgmt.security.models.GitLabProject": "SecurityConnectorsDevOpsAPI.GitLabProject", + "azure.mgmt.security.models.GitLabProjectProperties": "SecurityConnectorsDevOpsAPI.GitLabProjectProperties", + "azure.mgmt.security.models.GitlabScopeEnvironmentData": "SecurityConnectorsAPI.GitlabScopeEnvironmentData", + "azure.mgmt.security.models.GovernanceAssignment": "GovernanceAPI.GovernanceAssignment", + "azure.mgmt.security.models.GovernanceAssignmentAdditionalData": "GovernanceAPI.GovernanceAssignmentAdditionalData", + "azure.mgmt.security.models.GovernanceAssignmentProperties": "GovernanceAPI.GovernanceAssignmentProperties", + "azure.mgmt.security.models.GovernanceEmailNotification": "GovernanceAPI.GovernanceEmailNotification", + "azure.mgmt.security.models.GovernanceRule": "GovernanceAPI.GovernanceRule", + "azure.mgmt.security.models.GovernanceRuleEmailNotification": "GovernanceAPI.GovernanceRuleEmailNotification", + "azure.mgmt.security.models.GovernanceRuleMetadata": "GovernanceAPI.GovernanceRuleMetadata", + "azure.mgmt.security.models.GovernanceRuleOwnerSource": "GovernanceAPI.GovernanceRuleOwnerSource", + "azure.mgmt.security.models.GovernanceRuleProperties": "GovernanceAPI.GovernanceRuleProperties", + "azure.mgmt.security.models.HealthDataClassification": "HealthReportsAPI.healthDataClassification", + "azure.mgmt.security.models.HealthReport": "HealthReportsAPI.HealthReport", + "azure.mgmt.security.models.HealthReportProperties": "HealthReportsAPI.HealthReportProperties", + "azure.mgmt.security.models.Identity": "Azure.ResourceManager.CommonTypes.Identity", + "azure.mgmt.security.models.InformationProtectionKeyword": "LegacySettingsAPI.InformationProtectionKeyword", + "azure.mgmt.security.models.InformationProtectionPolicy": "LegacySettingsAPI.InformationProtectionPolicy", + "azure.mgmt.security.models.InformationProtectionPolicyProperties": "LegacySettingsAPI.InformationProtectionPolicyProperties", + "azure.mgmt.security.models.InformationType": "LegacySettingsAPI.InformationType", + "azure.mgmt.security.models.InfoType": "SensitivitySettingsAPI.InfoType", + "azure.mgmt.security.models.InventoryList": "SecurityConnectorsDevOpsAPI.InventoryList", + "azure.mgmt.security.models.IoTSecurityAggregatedAlert": "IoTSecurityAPI.IoTSecurityAggregatedAlert", + "azure.mgmt.security.models.IoTSecurityAggregatedAlertProperties": "IoTSecurityAPI.IoTSecurityAggregatedAlertProperties", + "azure.mgmt.security.models.IoTSecurityAggregatedAlertPropertiesTopDevicesListItem": "IoTSecurityAPI.IoTSecurityAggregatedAlertPropertiesTopDevicesListItem", + "azure.mgmt.security.models.IoTSecurityAggregatedRecommendation": "IoTSecurityAPI.IoTSecurityAggregatedRecommendation", + "azure.mgmt.security.models.IoTSecurityAggregatedRecommendationProperties": "IoTSecurityAPI.IoTSecurityAggregatedRecommendationProperties", + "azure.mgmt.security.models.IoTSecurityAlertedDevice": "IoTSecurityAPI.IoTSecurityAlertedDevice", + "azure.mgmt.security.models.IoTSecurityDeviceAlert": "IoTSecurityAPI.IoTSecurityDeviceAlert", + "azure.mgmt.security.models.IoTSecurityDeviceRecommendation": "IoTSecurityAPI.IoTSecurityDeviceRecommendation", + "azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModel": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModel", + "azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModelList": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModelList", + "azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModelProperties": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModelProperties", + "azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem", + "azure.mgmt.security.models.IoTSecuritySolutionModel": "IoTSecurityAPI.IoTSecuritySolutionModel", + "azure.mgmt.security.models.IoTSecuritySolutionProperties": "IoTSecurityAPI.IoTSecuritySolutionProperties", + "azure.mgmt.security.models.IoTSeverityMetrics": "IoTSecurityAPI.IoTSeverityMetrics", + "azure.mgmt.security.models.Issue": "HealthReportsAPI.issue", + "azure.mgmt.security.models.IssueCreationRequest": "SecurityConnectorsDevOpsAPI.IssueCreationRequest", + "azure.mgmt.security.models.JFrogEnvironmentData": "SecurityConnectorsAPI.JFrogEnvironmentData", + "azure.mgmt.security.models.JitNetworkAccessPolicy": "SecuritySolutionsAPI.JitNetworkAccessPolicy", + "azure.mgmt.security.models.JitNetworkAccessPolicyInitiatePort": "SecuritySolutionsAPI.JitNetworkAccessPolicyInitiatePort", + "azure.mgmt.security.models.JitNetworkAccessPolicyInitiateRequest": "SecuritySolutionsAPI.JitNetworkAccessPolicyInitiateRequest", + "azure.mgmt.security.models.JitNetworkAccessPolicyInitiateVirtualMachine": "SecuritySolutionsAPI.JitNetworkAccessPolicyInitiateVirtualMachine", + "azure.mgmt.security.models.JitNetworkAccessPolicyProperties": "SecuritySolutionsAPI.JitNetworkAccessPolicyProperties", + "azure.mgmt.security.models.JitNetworkAccessPolicyVirtualMachine": "SecuritySolutionsAPI.JitNetworkAccessPolicyVirtualMachine", + "azure.mgmt.security.models.JitNetworkAccessPortRule": "SecuritySolutionsAPI.JitNetworkAccessPortRule", + "azure.mgmt.security.models.JitNetworkAccessRequest": "SecuritySolutionsAPI.JitNetworkAccessRequest", + "azure.mgmt.security.models.JitNetworkAccessRequestPort": "SecuritySolutionsAPI.JitNetworkAccessRequestPort", + "azure.mgmt.security.models.JitNetworkAccessRequestVirtualMachine": "SecuritySolutionsAPI.JitNetworkAccessRequestVirtualMachine", + "azure.mgmt.security.models.Label": "SensitivitySettingsAPI.Label", + "azure.mgmt.security.models.LogAnalyticsIdentifier": "AlertsAPI.LogAnalyticsIdentifier", + "azure.mgmt.security.models.MalwareScan": "DefenderForStorageAPI.MalwareScan", + "azure.mgmt.security.models.MalwareScanningProperties": "DefenderForStorageAPI.MalwareScanningProperties", + "azure.mgmt.security.models.MalwareScanProperties": "DefenderForStorageAPI.MalwareScanProperties", + "azure.mgmt.security.models.MdeOnboardingData": "MdeOnboardingAPI.MdeOnboardingData", + "azure.mgmt.security.models.MdeOnboardingDataProperties": "MdeOnboardingAPI.MdeOnboardingDataProperties", + "azure.mgmt.security.models.NotificationsSource": "AutomationsAPI.NotificationsSource", + "azure.mgmt.security.models.NotificationsSourceAlert": "AutomationsAPI.NotificationsSourceAlert", + "azure.mgmt.security.models.NotificationsSourceAttackPath": "AutomationsAPI.NotificationsSourceAttackPath", + "azure.mgmt.security.models.OnUploadFilters": "DefenderForStorageAPI.OnUploadFilters", + "azure.mgmt.security.models.OnUploadProperties": "DefenderForStorageAPI.OnUploadProperties", + "azure.mgmt.security.models.Operation": "Azure.ResourceManager.CommonTypes.Operation", + "azure.mgmt.security.models.OperationDisplay": "Azure.ResourceManager.CommonTypes.OperationDisplay", + "azure.mgmt.security.models.OperationResultAutoGenerated": "GovernanceAPI.OperationResult", + "azure.mgmt.security.models.OperationStatus": "Common.OperationStatus", + "azure.mgmt.security.models.OperationStatusResult": "Azure.ResourceManager.CommonTypes.OperationStatusResult", + "azure.mgmt.security.models.PartialAssessmentProperties": "SecurityStandardsAPI.PartialAssessmentProperties", + "azure.mgmt.security.models.Pricing": "PricingsAPI.Pricing", + "azure.mgmt.security.models.PricingProperties": "PricingsAPI.PricingProperties", + "azure.mgmt.security.models.Private_link_parameters": "SecurityManagementClient.private-link-parameters", + "azure.mgmt.security.models.PrivateEndpoint": "Azure.ResourceManager.CommonTypes.PrivateEndpoint", + "azure.mgmt.security.models.PrivateEndpointConnection": "PrivateLinksAPI.PrivateEndpointConnection", + "azure.mgmt.security.models.PrivateEndpointConnectionProperties": "Azure.ResourceManager.CommonTypes.PrivateEndpointConnectionProperties", + "azure.mgmt.security.models.PrivateLinkGroupResource": "PrivateLinksAPI.PrivateLinkGroupResource", + "azure.mgmt.security.models.PrivateLinkProperties": "PrivateLinksAPI.PrivateLinkProperties", + "azure.mgmt.security.models.TrackedResource": "Azure.ResourceManager.CommonTypes.TrackedResource", + "azure.mgmt.security.models.PrivateLinkResource": "PrivateLinksAPI.PrivateLinkResource", + "azure.mgmt.security.models.PrivateLinkResourceProperties": "Azure.ResourceManager.CommonTypes.PrivateLinkResourceProperties", + "azure.mgmt.security.models.PrivateLinkServiceConnectionState": "Azure.ResourceManager.CommonTypes.PrivateLinkServiceConnectionState", + "azure.mgmt.security.models.PrivateLinkUpdate": "PrivateLinksAPI.PrivateLinkUpdate", + "azure.mgmt.security.models.QueryCheck": "SqlVulnerabilityAssessmentsAPI.QueryCheck", + "azure.mgmt.security.models.RecommendationConfigurationProperties": "IoTSecurityAPI.RecommendationConfigurationProperties", + "azure.mgmt.security.models.RegulatoryComplianceAssessment": "RegulatoryComplianceAPI.RegulatoryComplianceAssessment", + "azure.mgmt.security.models.RegulatoryComplianceAssessmentProperties": "RegulatoryComplianceAPI.RegulatoryComplianceAssessmentProperties", + "azure.mgmt.security.models.RegulatoryComplianceControl": "RegulatoryComplianceAPI.RegulatoryComplianceControl", + "azure.mgmt.security.models.RegulatoryComplianceControlProperties": "RegulatoryComplianceAPI.RegulatoryComplianceControlProperties", + "azure.mgmt.security.models.RegulatoryComplianceStandard": "RegulatoryComplianceAPI.RegulatoryComplianceStandard", + "azure.mgmt.security.models.RegulatoryComplianceStandardProperties": "RegulatoryComplianceAPI.RegulatoryComplianceStandardProperties", + "azure.mgmt.security.models.Remediation": "SqlVulnerabilityAssessmentsAPI.Remediation", + "azure.mgmt.security.models.RemediationEta": "GovernanceAPI.RemediationEta", + "azure.mgmt.security.models.ResourceDetails": "HealthReportsAPI.resourceDetails", + "azure.mgmt.security.models.RuleResults": "SqlVulnerabilityAssessmentsAPI.RuleResults", + "azure.mgmt.security.models.RuleResultsInput": "SqlVulnerabilityAssessmentsAPI.RuleResultsInput", + "azure.mgmt.security.models.RuleResultsProperties": "SqlVulnerabilityAssessmentsAPI.RuleResultsProperties", + "azure.mgmt.security.models.RulesResults": "SqlVulnerabilityAssessmentsAPI.RulesResults", + "azure.mgmt.security.models.RulesResultsInput": "SqlVulnerabilityAssessmentsAPI.RulesResultsInput", + "azure.mgmt.security.models.ScanPropertiesV2": "SqlVulnerabilityAssessmentsAPI.ScanPropertiesV2", + "azure.mgmt.security.models.ScanResult": "SqlVulnerabilityAssessmentsAPI.ScanResult", + "azure.mgmt.security.models.ScanResultProperties": "SqlVulnerabilityAssessmentsAPI.ScanResultProperties", + "azure.mgmt.security.models.ScanSummary": "DefenderForStorageAPI.ScanSummary", + "azure.mgmt.security.models.ScanV2": "SqlVulnerabilityAssessmentsAPI.ScanV2", + "azure.mgmt.security.models.ScopeElement": "AlertsSuppressionRulesAPI.ScopeElement", + "azure.mgmt.security.models.ScoreDetails": "SecureScoreAPI.ScoreDetails", + "azure.mgmt.security.models.SecureScoreControlDefinitionItem": "SecureScoreAPI.SecureScoreControlDefinitionItem", + "azure.mgmt.security.models.SecureScoreControlDefinitionItemProperties": "SecureScoreAPI.SecureScoreControlDefinitionItemProperties", + "azure.mgmt.security.models.SecureScoreControlDefinitionSource": "SecureScoreAPI.SecureScoreControlDefinitionSource", + "azure.mgmt.security.models.SecureScoreControlDetails": "SecureScoreAPI.SecureScoreControlDetails", + "azure.mgmt.security.models.SecureScoreControlScoreDetails": "SecureScoreAPI.SecureScoreControlScoreDetails", + "azure.mgmt.security.models.SecureScoreItem": "SecureScoreAPI.SecureScoreItem", + "azure.mgmt.security.models.SecureScoreItemProperties": "SecureScoreAPI.SecureScoreItemProperties", + "azure.mgmt.security.models.SecurityAssessment": "AssessmentAPI.SecurityAssessment", + "azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData": "AssessmentAPI.SecurityAssessmentMetadataPartnerData", + "azure.mgmt.security.models.SecurityAssessmentMetadataProperties": "AssessmentAPI.SecurityAssessmentMetadataProperties", + "azure.mgmt.security.models.SecurityAssessmentMetadataPropertiesResponse": "AssessmentAPI.SecurityAssessmentMetadataPropertiesResponse", + "azure.mgmt.security.models.SecurityAssessmentMetadataPropertiesResponsePublishDates": "AssessmentAPI.SecurityAssessmentMetadataPropertiesResponsePublishDates", + "azure.mgmt.security.models.SecurityAssessmentMetadataResponse": "AssessmentAPI.SecurityAssessmentMetadataResponse", + "azure.mgmt.security.models.SecurityAssessmentPartnerData": "AssessmentAPI.SecurityAssessmentPartnerData", + "azure.mgmt.security.models.SecurityAssessmentPropertiesBase": "AssessmentAPI.SecurityAssessmentPropertiesBase", + "azure.mgmt.security.models.SecurityAssessmentProperties": "AssessmentAPI.SecurityAssessmentProperties", + "azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk": "AssessmentAPI.SecurityAssessmentPropertiesBaseRisk", + "azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRiskPathsItem": "AssessmentAPI.SecurityAssessmentPropertiesBaseRiskPathsItem", + "azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem": "AssessmentAPI.SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem", + "azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem": "AssessmentAPI.SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem", + "azure.mgmt.security.models.SecurityAssessmentPropertiesResponse": "AssessmentAPI.SecurityAssessmentPropertiesResponse", + "azure.mgmt.security.models.SecurityAssessmentResponse": "AssessmentAPI.SecurityAssessmentResponse", + "azure.mgmt.security.models.SecurityConnector": "SecurityConnectorsAPI.SecurityConnector", + "azure.mgmt.security.models.SecurityConnectorProperties": "SecurityConnectorsAPI.SecurityConnectorProperties", + "azure.mgmt.security.models.SecurityContact": "AutomationsAPI.SecurityContact", + "azure.mgmt.security.models.SecurityContactProperties": "AutomationsAPI.SecurityContactProperties", + "azure.mgmt.security.models.SecurityContactPropertiesNotificationsByRole": "AutomationsAPI.SecurityContactPropertiesNotificationsByRole", + "azure.mgmt.security.models.SecurityOperator": "SecurityOperatorsAPI.SecurityOperator", + "azure.mgmt.security.models.SecuritySolution": "SecuritySolutionsAPI.SecuritySolution", + "azure.mgmt.security.models.SecuritySolutionProperties": "SecuritySolutionsAPI.SecuritySolutionProperties", + "azure.mgmt.security.models.SecuritySolutionsReferenceData": "SecuritySolutionsAPI.securitySolutionsReferenceData", + "azure.mgmt.security.models.SecuritySolutionsReferenceDataList": "SecuritySolutionsAPI.securitySolutionsReferenceDataList", + "azure.mgmt.security.models.SecuritySolutionsReferenceDataProperties": "SecuritySolutionsAPI.securitySolutionsReferenceDataProperties", + "azure.mgmt.security.models.SecurityStandard": "SecurityStandardsAPI.SecurityStandard", + "azure.mgmt.security.models.SecurityStandardProperties": "SecurityStandardsAPI.SecurityStandardProperties", + "azure.mgmt.security.models.SecuritySubAssessment": "SubAssessmentsAPI.SecuritySubAssessment", + "azure.mgmt.security.models.SecuritySubAssessmentProperties": "SubAssessmentsAPI.SecuritySubAssessmentProperties", + "azure.mgmt.security.models.SecurityTask": "TasksAPI.SecurityTask", + "azure.mgmt.security.models.SecurityTaskParameters": "TasksAPI.SecurityTaskParameters", + "azure.mgmt.security.models.SecurityTaskProperties": "TasksAPI.SecurityTaskProperties", + "azure.mgmt.security.models.SensitiveDataDiscoveryProperties": "DefenderForStorageAPI.SensitiveDataDiscoveryProperties", + "azure.mgmt.security.models.SensitivityLabel": "LegacySettingsAPI.SensitivityLabel", + "azure.mgmt.security.models.ServerVulnerabilityAssessment": "SecuritySolutionsAPI.ServerVulnerabilityAssessment", + "azure.mgmt.security.models.ServerVulnerabilityAssessmentProperties": "SecuritySolutionsAPI.ServerVulnerabilityAssessmentProperties", + "azure.mgmt.security.models.ServerVulnerabilityAssessmentsAzureSettingProperties": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsAzureSettingProperties", + "azure.mgmt.security.models.ServerVulnerabilityProperties": "SubAssessmentsAPI.ServerVulnerabilityProperties", + "azure.mgmt.security.models.SqlServerVulnerabilityProperties": "SubAssessmentsAPI.SqlServerVulnerabilityProperties", + "azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentScanOperationResult", + "azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResultProperties": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentScanOperationResultProperties", + "azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettings", + "azure.mgmt.security.models.SqlVulnerabilityAssessmentSettingsProperties": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsProperties", + "azure.mgmt.security.models.Standard": "StandardsAPI.Standard", + "azure.mgmt.security.models.StandardAssignment": "SecurityStandardsAPI.StandardAssignment", + "azure.mgmt.security.models.StandardAssignmentMetadata": "SecurityStandardsAPI.StandardAssignmentMetadata", + "azure.mgmt.security.models.StandardAssignmentProperties": "SecurityStandardsAPI.StandardAssignmentProperties", + "azure.mgmt.security.models.StandardAssignmentPropertiesAttestationData": "SecurityStandardsAPI.StandardAssignmentPropertiesAttestationData", + "azure.mgmt.security.models.StandardAssignmentPropertiesExemptionData": "SecurityStandardsAPI.StandardAssignmentPropertiesExemptionData", + "azure.mgmt.security.models.StandardComponentProperties": "StandardsAPI.StandardComponentProperties", + "azure.mgmt.security.models.StandardMetadata": "SecurityStandardsAPI.StandardMetadata", + "azure.mgmt.security.models.StandardProperties": "StandardsAPI.StandardProperties", + "azure.mgmt.security.models.StatusAutoGenerated": "HealthReportsAPI.status", + "azure.mgmt.security.models.SubAssessmentStatus": "SubAssessmentsAPI.SubAssessmentStatus", + "azure.mgmt.security.models.SuppressionAlertsScope": "AlertsSuppressionRulesAPI.SuppressionAlertsScope", + "azure.mgmt.security.models.SystemData": "Azure.ResourceManager.CommonTypes.SystemData", + "azure.mgmt.security.models.TagsResource": "IoTSecurityAPI.TagsResource", + "azure.mgmt.security.models.TargetBranchConfiguration": "SecurityConnectorsDevOpsAPI.TargetBranchConfiguration", + "azure.mgmt.security.models.ThresholdCustomAlertRule": "IoTSecurityAPI.ThresholdCustomAlertRule", + "azure.mgmt.security.models.TimeWindowCustomAlertRule": "IoTSecurityAPI.TimeWindowCustomAlertRule", + "azure.mgmt.security.models.TopologyResource": "SecuritySolutionsAPI.TopologyResource", + "azure.mgmt.security.models.TopologyResourceProperties": "SecuritySolutionsAPI.TopologyResourceProperties", + "azure.mgmt.security.models.TopologySingleResource": "SecuritySolutionsAPI.TopologySingleResource", + "azure.mgmt.security.models.TopologySingleResourceChild": "SecuritySolutionsAPI.TopologySingleResourceChild", + "azure.mgmt.security.models.TopologySingleResourceParent": "SecuritySolutionsAPI.TopologySingleResourceParent", + "azure.mgmt.security.models.UpdateIotSecuritySolutionData": "IoTSecurityAPI.UpdateIotSecuritySolutionData", + "azure.mgmt.security.models.UpdateIoTSecuritySolutionProperties": "IoTSecurityAPI.UpdateIoTSecuritySolutionProperties", + "azure.mgmt.security.models.UpdateSensitivitySettingsRequest": "SensitivitySettingsAPI.UpdateSensitivitySettingsRequest", + "azure.mgmt.security.models.UserDefinedResourcesProperties": "IoTSecurityAPI.UserDefinedResourcesProperties", + "azure.mgmt.security.models.VaRule": "SqlVulnerabilityAssessmentsAPI.VaRule", + "azure.mgmt.security.models.VendorReference": "SubAssessmentsAPI.VendorReference", + "azure.mgmt.security.models.VmScannersBaseConfiguration": "SecurityConnectorsAPI.VmScannersBaseConfiguration", + "azure.mgmt.security.models.WorkspaceSetting": "LegacySettingsAPI.WorkspaceSetting", + "azure.mgmt.security.models.WorkspaceSettingProperties": "LegacySettingsAPI.WorkspaceSettingProperties", + "azure.mgmt.security.models.CreatedByType": "Azure.ResourceManager.CommonTypes.createdByType", + "azure.mgmt.security.models.AlertSeverity": "AlertsAPI.AlertSeverity", + "azure.mgmt.security.models.Intent": "AlertsAPI.Intent", + "azure.mgmt.security.models.ResourceIdentifierType": "AlertsAPI.ResourceIdentifierType", + "azure.mgmt.security.models.AlertStatus": "AlertsAPI.AlertStatus", + "azure.mgmt.security.models.KindEnum": "AlertsAPI.Kind", + "azure.mgmt.security.models.BundleType": "AlertsAPI.BundleType", + "azure.mgmt.security.models.RuleState": "AlertsSuppressionRulesAPI.RuleState", + "azure.mgmt.security.models.ApplicationSourceResourceType": "ApplicationsAPI.ApplicationSourceResourceType", + "azure.mgmt.security.models.Categories": "AssessmentAPI.Categories", + "azure.mgmt.security.models.Severity": "Common.Severity", + "azure.mgmt.security.models.UserImpact": "AssessmentAPI.UserImpact", + "azure.mgmt.security.models.ImplementationEffort": "AssessmentAPI.ImplementationEffort", + "azure.mgmt.security.models.Threats": "AssessmentAPI.Threats", + "azure.mgmt.security.models.AssessmentType": "AssessmentAPI.AssessmentType", + "azure.mgmt.security.models.Tactics": "AssessmentAPI.Tactics", + "azure.mgmt.security.models.Techniques": "AssessmentAPI.Techniques", + "azure.mgmt.security.models.EventSource": "AutomationsAPI.EventSource", + "azure.mgmt.security.models.PropertyType": "AutomationsAPI.PropertyType", + "azure.mgmt.security.models.Operator": "AutomationsAPI.Operator", + "azure.mgmt.security.models.ActionType": "Common.ActionType", + "azure.mgmt.security.models.SourceType": "AutomationsAPI.SourceType", + "azure.mgmt.security.models.MinimalSeverity": "AutomationsAPI.MinimalSeverity", + "azure.mgmt.security.models.MinimalRiskLevel": "AutomationsAPI.MinimalRiskLevel", + "azure.mgmt.security.models.State": "Common.State", + "azure.mgmt.security.models.SecurityContactRole": "AutomationsAPI.SecurityContactRole", + "azure.mgmt.security.models.SecurityContactName": "AutomationsAPI.SecurityContactName", + "azure.mgmt.security.models.ResourceStatus": "ComplianceResultsAPI.ResourceStatus", + "azure.mgmt.security.models.GovernanceRuleType": "GovernanceAPI.GovernanceRuleType", + "azure.mgmt.security.models.GovernanceRuleSourceResourceType": "GovernanceAPI.GovernanceRuleSourceResourceType", + "azure.mgmt.security.models.GovernanceRuleOwnerSourceType": "GovernanceAPI.GovernanceRuleOwnerSourceType", + "azure.mgmt.security.models.OperationResultStatus": "GovernanceAPI.OperationResultStatus", + "azure.mgmt.security.models.Source": "Common.Source", + "azure.mgmt.security.models.StatusName": "HealthReportsAPI.StatusName", + "azure.mgmt.security.models.ValueType": "IoTSecurityAPI.ValueType", + "azure.mgmt.security.models.AutoProvision": "LegacySettingsAPI.AutoProvision", + "azure.mgmt.security.models.Rank": "LegacySettingsAPI.Rank", + "azure.mgmt.security.models.InformationProtectionPolicyName": "LegacySettingsAPI.InformationProtectionPolicyName", + "azure.mgmt.security.models.Origin": "Azure.ResourceManager.CommonTypes.Origin", + "azure.mgmt.security.models.ArmActionType": "Azure.ResourceManager.CommonTypes.ActionType", + "azure.mgmt.security.models.PricingTier": "PricingsAPI.PricingTier", + "azure.mgmt.security.models.Enforce": "PricingsAPI.Enforce", + "azure.mgmt.security.models.Inherited": "PricingsAPI.Inherited", + "azure.mgmt.security.models.ResourcesCoverageStatus": "PricingsAPI.ResourcesCoverageStatus", + "azure.mgmt.security.models.IsEnabled": "PricingsAPI.IsEnabled", + "azure.mgmt.security.models.PrivateEndpointServiceConnectionStatus": "Azure.ResourceManager.CommonTypes.PrivateEndpointServiceConnectionStatus", + "azure.mgmt.security.models.PrivateEndpointConnectionProvisioningState": "Azure.ResourceManager.CommonTypes.PrivateEndpointConnectionProvisioningState", + "azure.mgmt.security.models.CloudName": "SecurityConnectorsAPI.CloudName", + "azure.mgmt.security.models.OfferingType": "SecurityConnectorsAPI.OfferingType", + "azure.mgmt.security.models.ScanningMode": "SecurityConnectorsAPI.ScanningMode", + "azure.mgmt.security.models.Type": "SecurityConnectorsAPI.Type", + "azure.mgmt.security.models.SubPlan": "SecurityConnectorsAPI.SubPlan", + "azure.mgmt.security.models.EnvironmentType": "SecurityConnectorsAPI.EnvironmentType", + "azure.mgmt.security.models.OrganizationMembershipType": "SecurityConnectorsAPI.OrganizationMembershipType", + "azure.mgmt.security.models.AuthenticationType": "SecurityConnectorsAPI.AuthenticationType", + "azure.mgmt.security.models.DevOpsProvisioningState": "SecurityConnectorsDevOpsAPI.DevOpsProvisioningState", + "azure.mgmt.security.models.OnboardingState": "SecurityConnectorsDevOpsAPI.OnboardingState", + "azure.mgmt.security.models.ActionableRemediationState": "SecurityConnectorsDevOpsAPI.ActionableRemediationState", + "azure.mgmt.security.models.RuleCategory": "SecurityConnectorsDevOpsAPI.RuleCategory", + "azure.mgmt.security.models.AnnotateDefaultBranchState": "SecurityConnectorsDevOpsAPI.AnnotateDefaultBranchState", + "azure.mgmt.security.models.InheritFromParentState": "SecurityConnectorsDevOpsAPI.InheritFromParentState", + "azure.mgmt.security.models.AutoDiscovery": "SecurityConnectorsDevOpsAPI.AutoDiscovery", + "azure.mgmt.security.models.AgentlessEnablement": "SecurityConnectorsDevOpsAPI.AgentlessEnablement", + "azure.mgmt.security.models.InventoryListKind": "SecurityConnectorsDevOpsAPI.InventoryListKind", + "azure.mgmt.security.models.InventoryKind": "SecurityConnectorsDevOpsAPI.InventoryKind", + "azure.mgmt.security.models.ResourceIdentityType": "Azure.ResourceManager.CommonTypes.ResourceIdentityType", + "azure.mgmt.security.models.SecurityFamily": "SecuritySolutionsAPI.SecurityFamily", + "azure.mgmt.security.models.ExternalSecuritySolutionKindEnum": "SecuritySolutionsAPI.ExternalSecuritySolutionKind", + "azure.mgmt.security.models.AadConnectivityStateEnum": "SecuritySolutionsAPI.AadConnectivityState", + "azure.mgmt.security.models.ProtocolEnum": "SecuritySolutionsAPI.Protocol", + "azure.mgmt.security.models.StatusEnum": "SecuritySolutionsAPI.Status", + "azure.mgmt.security.models.StatusReason": "SecuritySolutionsAPI.StatusReason", + "azure.mgmt.security.models.ProvisioningState": "Common.ProvisioningState", + "azure.mgmt.security.models.StandardType": "SecurityStandardsAPI.StandardType", + "azure.mgmt.security.models.StandardSupportedCloud": "SecurityStandardsAPI.StandardSupportedCloud", + "azure.mgmt.security.models.Effect": "SecurityStandardsAPI.Effect", + "azure.mgmt.security.models.ExemptionCategory": "SecurityStandardsAPI.ExemptionCategory", + "azure.mgmt.security.models.AttestationComplianceState": "SecurityStandardsAPI.attestationComplianceState", + "azure.mgmt.security.models.RecommendationSupportedClouds": "SecurityStandardsAPI.RecommendationSupportedClouds", + "azure.mgmt.security.models.SeverityEnum": "SecurityStandardsAPI.SeverityEnum", + "azure.mgmt.security.models.SecurityIssue": "SecurityStandardsAPI.SecurityIssue", + "azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKind": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettingKind", + "azure.mgmt.security.models.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider", + "azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettingKindName", + "azure.mgmt.security.models.SettingKind": "SettingsAPI.SettingKind", + "azure.mgmt.security.models.SettingName": "Common.SettingName", + "azure.mgmt.security.models.RuleStatus": "SqlVulnerabilityAssessmentsAPI.RuleStatus", + "azure.mgmt.security.models.RuleSeverity": "SqlVulnerabilityAssessmentsAPI.RuleSeverity", + "azure.mgmt.security.models.RuleType": "SqlVulnerabilityAssessmentsAPI.RuleType", + "azure.mgmt.security.models.StandardSupportedClouds": "StandardsAPI.StandardSupportedClouds", + "azure.mgmt.security.models.TaskUpdateActionType": "TasksAPI.TaskUpdateActionType", + "azure.mgmt.security.models.RiskLevel": "AssessmentAPI.RiskLevel", + "azure.mgmt.security.models.AssessmentStatusCode": "AssessmentAPI.AssessmentStatusCode", + "azure.mgmt.security.models.ExpandEnum": "AssessmentAPI.ExpandEnum", + "azure.mgmt.security.models.BlobScanResultsOptions": "DefenderForStorageAPI.BlobScanResultsOptions", + "azure.mgmt.security.models.AutomatedResponseType": "DefenderForStorageAPI.AutomatedResponseType", + "azure.mgmt.security.models.ReportedSeverity": "IoTSecurityAPI.ReportedSeverity", + "azure.mgmt.security.models.SecuritySolutionStatus": "IoTSecurityAPI.SecuritySolutionStatus", + "azure.mgmt.security.models.ExportData": "IoTSecurityAPI.ExportData", + "azure.mgmt.security.models.DataSource": "IoTSecurityAPI.DataSource", + "azure.mgmt.security.models.RecommendationType": "IoTSecurityAPI.RecommendationType", + "azure.mgmt.security.models.RecommendationConfigStatus": "IoTSecurityAPI.RecommendationConfigStatus", + "azure.mgmt.security.models.UnmaskedIpLoggingStatus": "IoTSecurityAPI.UnmaskedIpLoggingStatus", + "azure.mgmt.security.models.AdditionalWorkspaceType": "IoTSecurityAPI.AdditionalWorkspaceType", + "azure.mgmt.security.models.AdditionalWorkspaceDataType": "IoTSecurityAPI.AdditionalWorkspaceDataType", + "azure.mgmt.security.models.PublicNetworkAccess": "PrivateLinksAPI.PublicNetworkAccess", + "azure.mgmt.security.models.ControlType": "SecureScoreAPI.ControlType", + "azure.mgmt.security.models.ExpandControlsEnum": "SecureScoreAPI.ExpandControlsEnum", + "azure.mgmt.security.models.ConnectionType": "SecuritySolutionsAPI.ConnectionType", + "azure.mgmt.security.models.ServerVulnerabilityAssessmentPropertiesProvisioningState": "SecuritySolutionsAPI.ServerVulnerabilityAssessmentPropertiesProvisioningState", + "azure.mgmt.security.models.MipIntegrationStatus": "SensitivitySettingsAPI.MipIntegrationStatus", + "azure.mgmt.security.models.SqlVulnerabilityAssessmentState": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentState", + "azure.mgmt.security.models.ScanOperationStatus": "SqlVulnerabilityAssessmentsAPI.ScanOperationStatus", + "azure.mgmt.security.models.ScanTriggerType": "SqlVulnerabilityAssessmentsAPI.ScanTriggerType", + "azure.mgmt.security.models.ScanState": "SqlVulnerabilityAssessmentsAPI.ScanState", + "azure.mgmt.security.models.SubAssessmentStatusCode": "SubAssessmentsAPI.SubAssessmentStatusCode", + "azure.mgmt.security.models.AssessedResourceType": "SubAssessmentsAPI.AssessedResourceType", + "azure.mgmt.security.operations.AlertsOperations.get_subscription_level": "AlertsAPI.Alerts.getSubscriptionLevel", + "azure.mgmt.security.aio.operations.AlertsOperations.get_subscription_level": "AlertsAPI.Alerts.getSubscriptionLevel", + "azure.mgmt.security.operations.AlertsOperations.list_subscription_level_by_region": "AlertsAPI.Alerts.listSubscriptionLevelByRegion", + "azure.mgmt.security.aio.operations.AlertsOperations.list_subscription_level_by_region": "AlertsAPI.Alerts.listSubscriptionLevelByRegion", + "azure.mgmt.security.operations.AlertsOperations.update_subscription_level_state_to_dismiss": "AlertsAPI.Alerts.updateSubscriptionLevelStateToDismiss", + "azure.mgmt.security.aio.operations.AlertsOperations.update_subscription_level_state_to_dismiss": "AlertsAPI.Alerts.updateSubscriptionLevelStateToDismiss", + "azure.mgmt.security.operations.AlertsOperations.update_subscription_level_state_to_resolve": "AlertsAPI.Alerts.updateSubscriptionLevelStateToResolve", + "azure.mgmt.security.aio.operations.AlertsOperations.update_subscription_level_state_to_resolve": "AlertsAPI.Alerts.updateSubscriptionLevelStateToResolve", + "azure.mgmt.security.operations.AlertsOperations.update_subscription_level_state_to_activate": "AlertsAPI.Alerts.updateSubscriptionLevelStateToActivate", + "azure.mgmt.security.aio.operations.AlertsOperations.update_subscription_level_state_to_activate": "AlertsAPI.Alerts.updateSubscriptionLevelStateToActivate", + "azure.mgmt.security.operations.AlertsOperations.update_subscription_level_state_to_in_progress": "AlertsAPI.Alerts.updateSubscriptionLevelStateToInProgress", + "azure.mgmt.security.aio.operations.AlertsOperations.update_subscription_level_state_to_in_progress": "AlertsAPI.Alerts.updateSubscriptionLevelStateToInProgress", + "azure.mgmt.security.operations.AlertsOperations.get_resource_group_level": "AlertsAPI.AlertOperationGroup.getResourceGroupLevel", + "azure.mgmt.security.aio.operations.AlertsOperations.get_resource_group_level": "AlertsAPI.AlertOperationGroup.getResourceGroupLevel", + "azure.mgmt.security.operations.AlertsOperations.list_resource_group_level_by_region": "AlertsAPI.AlertOperationGroup.listResourceGroupLevelByRegion", + "azure.mgmt.security.aio.operations.AlertsOperations.list_resource_group_level_by_region": "AlertsAPI.AlertOperationGroup.listResourceGroupLevelByRegion", + "azure.mgmt.security.operations.AlertsOperations.update_resource_group_level_state_to_resolve": "AlertsAPI.AlertOperationGroup.updateResourceGroupLevelStateToResolve", + "azure.mgmt.security.aio.operations.AlertsOperations.update_resource_group_level_state_to_resolve": "AlertsAPI.AlertOperationGroup.updateResourceGroupLevelStateToResolve", + "azure.mgmt.security.operations.AlertsOperations.update_resource_group_level_state_to_dismiss": "AlertsAPI.AlertOperationGroup.updateResourceGroupLevelStateToDismiss", + "azure.mgmt.security.aio.operations.AlertsOperations.update_resource_group_level_state_to_dismiss": "AlertsAPI.AlertOperationGroup.updateResourceGroupLevelStateToDismiss", + "azure.mgmt.security.operations.AlertsOperations.update_resource_group_level_state_to_activate": "AlertsAPI.AlertOperationGroup.updateResourceGroupLevelStateToActivate", + "azure.mgmt.security.aio.operations.AlertsOperations.update_resource_group_level_state_to_activate": "AlertsAPI.AlertOperationGroup.updateResourceGroupLevelStateToActivate", + "azure.mgmt.security.operations.AlertsOperations.update_resource_group_level_state_to_in_progress": "AlertsAPI.AlertOperationGroup.updateResourceGroupLevelStateToInProgress", + "azure.mgmt.security.aio.operations.AlertsOperations.update_resource_group_level_state_to_in_progress": "AlertsAPI.AlertOperationGroup.updateResourceGroupLevelStateToInProgress", + "azure.mgmt.security.operations.AlertsOperations.list": "AlertsAPI.AlertsOperationGroup.list", + "azure.mgmt.security.aio.operations.AlertsOperations.list": "AlertsAPI.AlertsOperationGroup.list", + "azure.mgmt.security.operations.AlertsOperations.list_by_resource_group": "AlertsAPI.AlertsOperationGroup.listByResourceGroup", + "azure.mgmt.security.aio.operations.AlertsOperations.list_by_resource_group": "AlertsAPI.AlertsOperationGroup.listByResourceGroup", + "azure.mgmt.security.operations.AlertsOperations.begin_simulate": "AlertsAPI.AlertsOperationGroup.simulate", + "azure.mgmt.security.aio.operations.AlertsOperations.begin_simulate": "AlertsAPI.AlertsOperationGroup.simulate", + "azure.mgmt.security.operations.AlertsSuppressionRulesOperations.get": "AlertsSuppressionRulesAPI.AlertsSuppressionRules.get", + "azure.mgmt.security.aio.operations.AlertsSuppressionRulesOperations.get": "AlertsSuppressionRulesAPI.AlertsSuppressionRules.get", + "azure.mgmt.security.operations.AlertsSuppressionRulesOperations.update": "AlertsSuppressionRulesAPI.AlertsSuppressionRules.update", + "azure.mgmt.security.aio.operations.AlertsSuppressionRulesOperations.update": "AlertsSuppressionRulesAPI.AlertsSuppressionRules.update", + "azure.mgmt.security.operations.AlertsSuppressionRulesOperations.delete": "AlertsSuppressionRulesAPI.AlertsSuppressionRules.delete", + "azure.mgmt.security.aio.operations.AlertsSuppressionRulesOperations.delete": "AlertsSuppressionRulesAPI.AlertsSuppressionRules.delete", + "azure.mgmt.security.operations.AlertsSuppressionRulesOperations.list": "AlertsSuppressionRulesAPI.AlertsSuppressionRules.list", + "azure.mgmt.security.aio.operations.AlertsSuppressionRulesOperations.list": "AlertsSuppressionRulesAPI.AlertsSuppressionRules.list", + "azure.mgmt.security.operations.ApplicationsOperations.list": "ApplicationsAPI.Applications.list", + "azure.mgmt.security.aio.operations.ApplicationsOperations.list": "ApplicationsAPI.Applications.list", + "azure.mgmt.security.operations.SecurityConnectorApplicationOperations.get": "ApplicationsAPI.SecurityConnectorApplication.get", + "azure.mgmt.security.aio.operations.SecurityConnectorApplicationOperations.get": "ApplicationsAPI.SecurityConnectorApplication.get", + "azure.mgmt.security.operations.SecurityConnectorApplicationOperations.create_or_update": "ApplicationsAPI.SecurityConnectorApplication.createOrUpdate", + "azure.mgmt.security.aio.operations.SecurityConnectorApplicationOperations.create_or_update": "ApplicationsAPI.SecurityConnectorApplication.createOrUpdate", + "azure.mgmt.security.operations.SecurityConnectorApplicationOperations.delete": "ApplicationsAPI.SecurityConnectorApplication.delete", + "azure.mgmt.security.aio.operations.SecurityConnectorApplicationOperations.delete": "ApplicationsAPI.SecurityConnectorApplication.delete", + "azure.mgmt.security.operations.AssessmentsMetadataOperations.get_in_subscription": "AssessmentAPI.AssessmentsMetadata.getInSubscription", + "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.get_in_subscription": "AssessmentAPI.AssessmentsMetadata.getInSubscription", + "azure.mgmt.security.operations.AssessmentsMetadataOperations.create_in_subscription": "AssessmentAPI.AssessmentsMetadata.createInSubscription", + "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.create_in_subscription": "AssessmentAPI.AssessmentsMetadata.createInSubscription", + "azure.mgmt.security.operations.AssessmentsMetadataOperations.delete_in_subscription": "AssessmentAPI.AssessmentsMetadata.deleteInSubscription", + "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.delete_in_subscription": "AssessmentAPI.AssessmentsMetadata.deleteInSubscription", + "azure.mgmt.security.operations.AssessmentsMetadataOperations.list_by_subscription": "AssessmentAPI.AssessmentsMetadata.listBySubscription", + "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.list_by_subscription": "AssessmentAPI.AssessmentsMetadata.listBySubscription", + "azure.mgmt.security.operations.AssessmentsMetadataOperations.get": "AssessmentAPI.SecurityAssessmentMetadataResponses.get", + "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.get": "AssessmentAPI.SecurityAssessmentMetadataResponses.get", + "azure.mgmt.security.operations.AssessmentsMetadataOperations.list": "AssessmentAPI.SecurityAssessmentMetadataResponses.list", + "azure.mgmt.security.aio.operations.AssessmentsMetadataOperations.list": "AssessmentAPI.SecurityAssessmentMetadataResponses.list", + "azure.mgmt.security.operations.AutomationsOperations.get": "AutomationsAPI.Automations.get", + "azure.mgmt.security.aio.operations.AutomationsOperations.get": "AutomationsAPI.Automations.get", + "azure.mgmt.security.operations.AutomationsOperations.create_or_update": "AutomationsAPI.Automations.createOrUpdate", + "azure.mgmt.security.aio.operations.AutomationsOperations.create_or_update": "AutomationsAPI.Automations.createOrUpdate", + "azure.mgmt.security.operations.AutomationsOperations.update": "AutomationsAPI.Automations.update", + "azure.mgmt.security.aio.operations.AutomationsOperations.update": "AutomationsAPI.Automations.update", + "azure.mgmt.security.operations.AutomationsOperations.delete": "AutomationsAPI.Automations.delete", + "azure.mgmt.security.aio.operations.AutomationsOperations.delete": "AutomationsAPI.Automations.delete", + "azure.mgmt.security.operations.AutomationsOperations.list_by_resource_group": "AutomationsAPI.Automations.listByResourceGroup", + "azure.mgmt.security.aio.operations.AutomationsOperations.list_by_resource_group": "AutomationsAPI.Automations.listByResourceGroup", + "azure.mgmt.security.operations.AutomationsOperations.list": "AutomationsAPI.Automations.list", + "azure.mgmt.security.aio.operations.AutomationsOperations.list": "AutomationsAPI.Automations.list", + "azure.mgmt.security.operations.AutomationsOperations.validate": "AutomationsAPI.Automations.validate", + "azure.mgmt.security.aio.operations.AutomationsOperations.validate": "AutomationsAPI.Automations.validate", + "azure.mgmt.security.operations.SecurityContactsOperations.get": "AutomationsAPI.SecurityContacts.get", + "azure.mgmt.security.aio.operations.SecurityContactsOperations.get": "AutomationsAPI.SecurityContacts.get", + "azure.mgmt.security.operations.SecurityContactsOperations.create": "AutomationsAPI.SecurityContacts.create", + "azure.mgmt.security.aio.operations.SecurityContactsOperations.create": "AutomationsAPI.SecurityContacts.create", + "azure.mgmt.security.operations.SecurityContactsOperations.delete": "AutomationsAPI.SecurityContacts.delete", + "azure.mgmt.security.aio.operations.SecurityContactsOperations.delete": "AutomationsAPI.SecurityContacts.delete", + "azure.mgmt.security.operations.SecurityContactsOperations.list": "AutomationsAPI.SecurityContacts.list", + "azure.mgmt.security.aio.operations.SecurityContactsOperations.list": "AutomationsAPI.SecurityContacts.list", + "azure.mgmt.security.operations.ComplianceResultsOperations.get": "ComplianceResultsAPI.ComplianceResults.get", + "azure.mgmt.security.aio.operations.ComplianceResultsOperations.get": "ComplianceResultsAPI.ComplianceResults.get", + "azure.mgmt.security.operations.ComplianceResultsOperations.list": "ComplianceResultsAPI.ComplianceResults.list", + "azure.mgmt.security.aio.operations.ComplianceResultsOperations.list": "ComplianceResultsAPI.ComplianceResults.list", + "azure.mgmt.security.operations.GovernanceAssignmentsOperations.get": "GovernanceAPI.GovernanceAssignments.get", + "azure.mgmt.security.aio.operations.GovernanceAssignmentsOperations.get": "GovernanceAPI.GovernanceAssignments.get", + "azure.mgmt.security.operations.GovernanceAssignmentsOperations.create_or_update": "GovernanceAPI.GovernanceAssignments.createOrUpdate", + "azure.mgmt.security.aio.operations.GovernanceAssignmentsOperations.create_or_update": "GovernanceAPI.GovernanceAssignments.createOrUpdate", + "azure.mgmt.security.operations.GovernanceAssignmentsOperations.delete": "GovernanceAPI.GovernanceAssignments.delete", + "azure.mgmt.security.aio.operations.GovernanceAssignmentsOperations.delete": "GovernanceAPI.GovernanceAssignments.delete", + "azure.mgmt.security.operations.GovernanceAssignmentsOperations.list": "GovernanceAPI.GovernanceAssignments.list", + "azure.mgmt.security.aio.operations.GovernanceAssignmentsOperations.list": "GovernanceAPI.GovernanceAssignments.list", + "azure.mgmt.security.operations.GovernanceRulesOperations.get": "GovernanceAPI.GovernanceRules.get", + "azure.mgmt.security.aio.operations.GovernanceRulesOperations.get": "GovernanceAPI.GovernanceRules.get", + "azure.mgmt.security.operations.GovernanceRulesOperations.create_or_update": "GovernanceAPI.GovernanceRules.createOrUpdate", + "azure.mgmt.security.aio.operations.GovernanceRulesOperations.create_or_update": "GovernanceAPI.GovernanceRules.createOrUpdate", + "azure.mgmt.security.operations.GovernanceRulesOperations.begin_delete": "GovernanceAPI.GovernanceRules.delete", + "azure.mgmt.security.aio.operations.GovernanceRulesOperations.begin_delete": "GovernanceAPI.GovernanceRules.delete", + "azure.mgmt.security.operations.GovernanceRulesOperations.list": "GovernanceAPI.GovernanceRules.list", + "azure.mgmt.security.aio.operations.GovernanceRulesOperations.list": "GovernanceAPI.GovernanceRules.list", + "azure.mgmt.security.operations.GovernanceRulesOperations.begin_execute": "GovernanceAPI.GovernanceRules.execute", + "azure.mgmt.security.aio.operations.GovernanceRulesOperations.begin_execute": "GovernanceAPI.GovernanceRules.execute", + "azure.mgmt.security.operations.GovernanceRulesOperations.operation_results": "GovernanceAPI.GovernanceRules.operationResults", + "azure.mgmt.security.aio.operations.GovernanceRulesOperations.operation_results": "GovernanceAPI.GovernanceRules.operationResults", + "azure.mgmt.security.operations.HealthReportsOperations.get": "HealthReportsAPI.HealthReports.get", + "azure.mgmt.security.aio.operations.HealthReportsOperations.get": "HealthReportsAPI.HealthReports.get", + "azure.mgmt.security.operations.HealthReportsOperations.list": "HealthReportsAPI.HealthReports.list", + "azure.mgmt.security.aio.operations.HealthReportsOperations.list": "HealthReportsAPI.HealthReports.list", + "azure.mgmt.security.operations.DeviceSecurityGroupsOperations.get": "IoTSecurityAPI.DeviceSecurityGroups.get", + "azure.mgmt.security.aio.operations.DeviceSecurityGroupsOperations.get": "IoTSecurityAPI.DeviceSecurityGroups.get", + "azure.mgmt.security.operations.DeviceSecurityGroupsOperations.create_or_update": "IoTSecurityAPI.DeviceSecurityGroups.createOrUpdate", + "azure.mgmt.security.aio.operations.DeviceSecurityGroupsOperations.create_or_update": "IoTSecurityAPI.DeviceSecurityGroups.createOrUpdate", + "azure.mgmt.security.operations.DeviceSecurityGroupsOperations.delete": "IoTSecurityAPI.DeviceSecurityGroups.delete", + "azure.mgmt.security.aio.operations.DeviceSecurityGroupsOperations.delete": "IoTSecurityAPI.DeviceSecurityGroups.delete", + "azure.mgmt.security.operations.DeviceSecurityGroupsOperations.list": "IoTSecurityAPI.DeviceSecurityGroups.list", + "azure.mgmt.security.aio.operations.DeviceSecurityGroupsOperations.list": "IoTSecurityAPI.DeviceSecurityGroups.list", + "azure.mgmt.security.operations.AutoProvisioningSettingsOperations.get": "LegacySettingsAPI.AutoProvisioningSettings.get", + "azure.mgmt.security.aio.operations.AutoProvisioningSettingsOperations.get": "LegacySettingsAPI.AutoProvisioningSettings.get", + "azure.mgmt.security.operations.AutoProvisioningSettingsOperations.create": "LegacySettingsAPI.AutoProvisioningSettings.create", + "azure.mgmt.security.aio.operations.AutoProvisioningSettingsOperations.create": "LegacySettingsAPI.AutoProvisioningSettings.create", + "azure.mgmt.security.operations.AutoProvisioningSettingsOperations.list": "LegacySettingsAPI.AutoProvisioningSettings.list", + "azure.mgmt.security.aio.operations.AutoProvisioningSettingsOperations.list": "LegacySettingsAPI.AutoProvisioningSettings.list", + "azure.mgmt.security.operations.CompliancesOperations.get": "LegacySettingsAPI.Compliances.get", + "azure.mgmt.security.aio.operations.CompliancesOperations.get": "LegacySettingsAPI.Compliances.get", + "azure.mgmt.security.operations.CompliancesOperations.list": "LegacySettingsAPI.Compliances.list", + "azure.mgmt.security.aio.operations.CompliancesOperations.list": "LegacySettingsAPI.Compliances.list", + "azure.mgmt.security.operations.InformationProtectionPoliciesOperations.get": "LegacySettingsAPI.InformationProtectionPolicies.get", + "azure.mgmt.security.aio.operations.InformationProtectionPoliciesOperations.get": "LegacySettingsAPI.InformationProtectionPolicies.get", + "azure.mgmt.security.operations.InformationProtectionPoliciesOperations.create_or_update": "LegacySettingsAPI.InformationProtectionPolicies.createOrUpdate", + "azure.mgmt.security.aio.operations.InformationProtectionPoliciesOperations.create_or_update": "LegacySettingsAPI.InformationProtectionPolicies.createOrUpdate", + "azure.mgmt.security.operations.InformationProtectionPoliciesOperations.list": "LegacySettingsAPI.InformationProtectionPolicies.list", + "azure.mgmt.security.aio.operations.InformationProtectionPoliciesOperations.list": "LegacySettingsAPI.InformationProtectionPolicies.list", + "azure.mgmt.security.operations.WorkspaceSettingsOperations.get": "LegacySettingsAPI.WorkspaceSettings.get", + "azure.mgmt.security.aio.operations.WorkspaceSettingsOperations.get": "LegacySettingsAPI.WorkspaceSettings.get", + "azure.mgmt.security.operations.WorkspaceSettingsOperations.create": "LegacySettingsAPI.WorkspaceSettings.create", + "azure.mgmt.security.aio.operations.WorkspaceSettingsOperations.create": "LegacySettingsAPI.WorkspaceSettings.create", + "azure.mgmt.security.operations.WorkspaceSettingsOperations.update": "LegacySettingsAPI.WorkspaceSettings.update", + "azure.mgmt.security.aio.operations.WorkspaceSettingsOperations.update": "LegacySettingsAPI.WorkspaceSettings.update", + "azure.mgmt.security.operations.WorkspaceSettingsOperations.delete": "LegacySettingsAPI.WorkspaceSettings.delete", + "azure.mgmt.security.aio.operations.WorkspaceSettingsOperations.delete": "LegacySettingsAPI.WorkspaceSettings.delete", + "azure.mgmt.security.operations.WorkspaceSettingsOperations.list": "LegacySettingsAPI.WorkspaceSettings.list", + "azure.mgmt.security.aio.operations.WorkspaceSettingsOperations.list": "LegacySettingsAPI.WorkspaceSettings.list", + "azure.mgmt.security.operations.MdeOnboardingsOperations.get": "MdeOnboardingAPI.MdeOnboardings.get", + "azure.mgmt.security.aio.operations.MdeOnboardingsOperations.get": "MdeOnboardingAPI.MdeOnboardings.get", + "azure.mgmt.security.operations.MdeOnboardingsOperations.list": "MdeOnboardingAPI.MdeOnboardings.list", + "azure.mgmt.security.aio.operations.MdeOnboardingsOperations.list": "MdeOnboardingAPI.MdeOnboardings.list", + "azure.mgmt.security.operations.Operations.list": "Azure.ResourceManager.Operations.list", + "azure.mgmt.security.aio.operations.Operations.list": "Azure.ResourceManager.Operations.list", + "azure.mgmt.security.operations.PricingsOperations.get": "PricingsAPI.Pricings.get", + "azure.mgmt.security.aio.operations.PricingsOperations.get": "PricingsAPI.Pricings.get", + "azure.mgmt.security.operations.PricingsOperations.update": "PricingsAPI.Pricings.update", + "azure.mgmt.security.aio.operations.PricingsOperations.update": "PricingsAPI.Pricings.update", + "azure.mgmt.security.operations.PricingsOperations.delete": "PricingsAPI.Pricings.delete", + "azure.mgmt.security.aio.operations.PricingsOperations.delete": "PricingsAPI.Pricings.delete", + "azure.mgmt.security.operations.PricingsOperations.list": "PricingsAPI.Pricings.list", + "azure.mgmt.security.aio.operations.PricingsOperations.list": "PricingsAPI.Pricings.list", + "azure.mgmt.security.operations.PrivateLinkResourcesOperations.get": "PrivateLinksAPI.PrivateLinkGroupResources.get", + "azure.mgmt.security.aio.operations.PrivateLinkResourcesOperations.get": "PrivateLinksAPI.PrivateLinkGroupResources.get", + "azure.mgmt.security.operations.PrivateLinkResourcesOperations.list": "PrivateLinksAPI.PrivateLinkGroupResources.list", + "azure.mgmt.security.aio.operations.PrivateLinkResourcesOperations.list": "PrivateLinksAPI.PrivateLinkGroupResources.list", + "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.get": "PrivateLinksAPI.PrivateEndpointConnections.get", + "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.get": "PrivateLinksAPI.PrivateEndpointConnections.get", + "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.begin_create_or_update": "PrivateLinksAPI.PrivateEndpointConnections.createOrUpdate", + "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.begin_create_or_update": "PrivateLinksAPI.PrivateEndpointConnections.createOrUpdate", + "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.begin_delete": "PrivateLinksAPI.PrivateEndpointConnections.delete", + "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.begin_delete": "PrivateLinksAPI.PrivateEndpointConnections.delete", + "azure.mgmt.security.operations.PrivateEndpointConnectionsOperations.list": "PrivateLinksAPI.PrivateEndpointConnections.list", + "azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations.list": "PrivateLinksAPI.PrivateEndpointConnections.list", + "azure.mgmt.security.operations.RegulatoryComplianceStandardsOperations.get": "RegulatoryComplianceAPI.RegulatoryComplianceStandards.get", + "azure.mgmt.security.aio.operations.RegulatoryComplianceStandardsOperations.get": "RegulatoryComplianceAPI.RegulatoryComplianceStandards.get", + "azure.mgmt.security.operations.RegulatoryComplianceStandardsOperations.list": "RegulatoryComplianceAPI.RegulatoryComplianceStandards.list", + "azure.mgmt.security.aio.operations.RegulatoryComplianceStandardsOperations.list": "RegulatoryComplianceAPI.RegulatoryComplianceStandards.list", + "azure.mgmt.security.operations.RegulatoryComplianceControlsOperations.get": "RegulatoryComplianceAPI.RegulatoryComplianceControls.get", + "azure.mgmt.security.aio.operations.RegulatoryComplianceControlsOperations.get": "RegulatoryComplianceAPI.RegulatoryComplianceControls.get", + "azure.mgmt.security.operations.RegulatoryComplianceControlsOperations.list": "RegulatoryComplianceAPI.RegulatoryComplianceControls.list", + "azure.mgmt.security.aio.operations.RegulatoryComplianceControlsOperations.list": "RegulatoryComplianceAPI.RegulatoryComplianceControls.list", + "azure.mgmt.security.operations.RegulatoryComplianceAssessmentsOperations.get": "RegulatoryComplianceAPI.RegulatoryComplianceAssessments.get", + "azure.mgmt.security.aio.operations.RegulatoryComplianceAssessmentsOperations.get": "RegulatoryComplianceAPI.RegulatoryComplianceAssessments.get", + "azure.mgmt.security.operations.RegulatoryComplianceAssessmentsOperations.list": "RegulatoryComplianceAPI.RegulatoryComplianceAssessments.list", + "azure.mgmt.security.aio.operations.RegulatoryComplianceAssessmentsOperations.list": "RegulatoryComplianceAPI.RegulatoryComplianceAssessments.list", + "azure.mgmt.security.operations.SecurityConnectorsOperations.get": "SecurityConnectorsAPI.SecurityConnectors.get", + "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.get": "SecurityConnectorsAPI.SecurityConnectors.get", + "azure.mgmt.security.operations.SecurityConnectorsOperations.create_or_update": "SecurityConnectorsAPI.SecurityConnectors.createOrUpdate", + "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.create_or_update": "SecurityConnectorsAPI.SecurityConnectors.createOrUpdate", + "azure.mgmt.security.operations.SecurityConnectorsOperations.update": "SecurityConnectorsAPI.SecurityConnectors.update", + "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.update": "SecurityConnectorsAPI.SecurityConnectors.update", + "azure.mgmt.security.operations.SecurityConnectorsOperations.delete": "SecurityConnectorsAPI.SecurityConnectors.delete", + "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.delete": "SecurityConnectorsAPI.SecurityConnectors.delete", + "azure.mgmt.security.operations.SecurityConnectorsOperations.list_by_resource_group": "SecurityConnectorsAPI.SecurityConnectors.listByResourceGroup", + "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.list_by_resource_group": "SecurityConnectorsAPI.SecurityConnectors.listByResourceGroup", + "azure.mgmt.security.operations.SecurityConnectorsOperations.list": "SecurityConnectorsAPI.SecurityConnectors.list", + "azure.mgmt.security.aio.operations.SecurityConnectorsOperations.list": "SecurityConnectorsAPI.SecurityConnectors.list", + "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.get": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgs.get", + "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.get": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgs.get", + "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.begin_create_or_update": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgs.createOrUpdate", + "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.begin_create_or_update": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgs.createOrUpdate", + "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.begin_update": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgs.update", + "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.begin_update": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgs.update", + "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.list": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgs.list", + "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.list": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgs.list", + "azure.mgmt.security.operations.AzureDevOpsOrgsOperations.list_available": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.listAvailable", + "azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations.list_available": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.listAvailable", + "azure.mgmt.security.operations.GitHubOwnersOperations.get": "SecurityConnectorsDevOpsAPI.GitHubOwners.get", + "azure.mgmt.security.aio.operations.GitHubOwnersOperations.get": "SecurityConnectorsDevOpsAPI.GitHubOwners.get", + "azure.mgmt.security.operations.GitHubOwnersOperations.list": "SecurityConnectorsDevOpsAPI.GitHubOwners.list", + "azure.mgmt.security.aio.operations.GitHubOwnersOperations.list": "SecurityConnectorsDevOpsAPI.GitHubOwners.list", + "azure.mgmt.security.operations.GitHubOwnersOperations.list_available": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.gitHubOwnersListAvailable", + "azure.mgmt.security.aio.operations.GitHubOwnersOperations.list_available": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.gitHubOwnersListAvailable", + "azure.mgmt.security.operations.GitLabGroupsOperations.get": "SecurityConnectorsDevOpsAPI.GitLabGroups.get", + "azure.mgmt.security.aio.operations.GitLabGroupsOperations.get": "SecurityConnectorsDevOpsAPI.GitLabGroups.get", + "azure.mgmt.security.operations.GitLabGroupsOperations.list": "SecurityConnectorsDevOpsAPI.GitLabGroups.list", + "azure.mgmt.security.aio.operations.GitLabGroupsOperations.list": "SecurityConnectorsDevOpsAPI.GitLabGroups.list", + "azure.mgmt.security.operations.GitLabGroupsOperations.list_available": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.gitLabGroupsListAvailable", + "azure.mgmt.security.aio.operations.GitLabGroupsOperations.list_available": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.gitLabGroupsListAvailable", + "azure.mgmt.security.operations.DevOpsConfigurationsOperations.get": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.get", + "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.get": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.get", + "azure.mgmt.security.operations.DevOpsConfigurationsOperations.begin_create_or_update": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.createOrUpdate", + "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.begin_create_or_update": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.createOrUpdate", + "azure.mgmt.security.operations.DevOpsConfigurationsOperations.begin_update": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.update", + "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.begin_update": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.update", + "azure.mgmt.security.operations.DevOpsConfigurationsOperations.begin_delete": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.delete", + "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.begin_delete": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.delete", + "azure.mgmt.security.operations.DevOpsConfigurationsOperations.list": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.list", + "azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations.list": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.list", + "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.get": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjects.get", + "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.get": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjects.get", + "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.begin_create_or_update": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjects.createOrUpdate", + "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.begin_create_or_update": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjects.createOrUpdate", + "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.begin_update": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjects.update", + "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.begin_update": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjects.update", + "azure.mgmt.security.operations.AzureDevOpsProjectsOperations.list": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjects.list", + "azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations.list": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjects.list", + "azure.mgmt.security.operations.GitLabProjectsOperations.get": "SecurityConnectorsDevOpsAPI.GitLabProjects.get", + "azure.mgmt.security.aio.operations.GitLabProjectsOperations.get": "SecurityConnectorsDevOpsAPI.GitLabProjects.get", + "azure.mgmt.security.operations.GitLabProjectsOperations.list": "SecurityConnectorsDevOpsAPI.GitLabProjects.list", + "azure.mgmt.security.aio.operations.GitLabProjectsOperations.list": "SecurityConnectorsDevOpsAPI.GitLabProjects.list", + "azure.mgmt.security.operations.SecurityOperatorsOperations.get": "SecurityOperatorsAPI.SecurityOperators.get", + "azure.mgmt.security.aio.operations.SecurityOperatorsOperations.get": "SecurityOperatorsAPI.SecurityOperators.get", + "azure.mgmt.security.operations.SecurityOperatorsOperations.create_or_update": "SecurityOperatorsAPI.SecurityOperators.createOrUpdate", + "azure.mgmt.security.aio.operations.SecurityOperatorsOperations.create_or_update": "SecurityOperatorsAPI.SecurityOperators.createOrUpdate", + "azure.mgmt.security.operations.SecurityOperatorsOperations.delete": "SecurityOperatorsAPI.SecurityOperators.delete", + "azure.mgmt.security.aio.operations.SecurityOperatorsOperations.delete": "SecurityOperatorsAPI.SecurityOperators.delete", + "azure.mgmt.security.operations.SecurityOperatorsOperations.list": "SecurityOperatorsAPI.SecurityOperators.list", + "azure.mgmt.security.aio.operations.SecurityOperatorsOperations.list": "SecurityOperatorsAPI.SecurityOperators.list", + "azure.mgmt.security.operations.DiscoveredSecuritySolutionsOperations.get": "SecuritySolutionsAPI.DiscoveredSecuritySolutions.get", + "azure.mgmt.security.aio.operations.DiscoveredSecuritySolutionsOperations.get": "SecuritySolutionsAPI.DiscoveredSecuritySolutions.get", + "azure.mgmt.security.operations.DiscoveredSecuritySolutionsOperations.list_by_home_region": "SecuritySolutionsAPI.DiscoveredSecuritySolutions.listByHomeRegion", + "azure.mgmt.security.aio.operations.DiscoveredSecuritySolutionsOperations.list_by_home_region": "SecuritySolutionsAPI.DiscoveredSecuritySolutions.listByHomeRegion", + "azure.mgmt.security.operations.DiscoveredSecuritySolutionsOperations.list": "SecuritySolutionsAPI.DiscoveredSecuritySolutionsOperationGroup.list", + "azure.mgmt.security.aio.operations.DiscoveredSecuritySolutionsOperations.list": "SecuritySolutionsAPI.DiscoveredSecuritySolutionsOperationGroup.list", + "azure.mgmt.security.operations.ExternalSecuritySolutionsOperations.get": "SecuritySolutionsAPI.ExternalSecuritySolutions.get", + "azure.mgmt.security.aio.operations.ExternalSecuritySolutionsOperations.get": "SecuritySolutionsAPI.ExternalSecuritySolutions.get", + "azure.mgmt.security.operations.ExternalSecuritySolutionsOperations.list_by_home_region": "SecuritySolutionsAPI.ExternalSecuritySolutions.listByHomeRegion", + "azure.mgmt.security.aio.operations.ExternalSecuritySolutionsOperations.list_by_home_region": "SecuritySolutionsAPI.ExternalSecuritySolutions.listByHomeRegion", + "azure.mgmt.security.operations.ExternalSecuritySolutionsOperations.list": "SecuritySolutionsAPI.ExternalSecuritySolutionsOperationGroup.list", + "azure.mgmt.security.aio.operations.ExternalSecuritySolutionsOperations.list": "SecuritySolutionsAPI.ExternalSecuritySolutionsOperationGroup.list", + "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.get": "SecuritySolutionsAPI.JitNetworkAccessPolicies.get", + "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.get": "SecuritySolutionsAPI.JitNetworkAccessPolicies.get", + "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.create_or_update": "SecuritySolutionsAPI.JitNetworkAccessPolicies.createOrUpdate", + "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.create_or_update": "SecuritySolutionsAPI.JitNetworkAccessPolicies.createOrUpdate", + "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.delete": "SecuritySolutionsAPI.JitNetworkAccessPolicies.delete", + "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.delete": "SecuritySolutionsAPI.JitNetworkAccessPolicies.delete", + "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.list_by_resource_group_and_region": "SecuritySolutionsAPI.JitNetworkAccessPolicies.listByResourceGroupAndRegion", + "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.list_by_resource_group_and_region": "SecuritySolutionsAPI.JitNetworkAccessPolicies.listByResourceGroupAndRegion", + "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.list_by_region": "SecuritySolutionsAPI.JitNetworkAccessPolicies.listByRegion", + "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.list_by_region": "SecuritySolutionsAPI.JitNetworkAccessPolicies.listByRegion", + "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.initiate": "SecuritySolutionsAPI.JitNetworkAccessPolicies.initiate", + "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.initiate": "SecuritySolutionsAPI.JitNetworkAccessPolicies.initiate", + "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.list": "SecuritySolutionsAPI.JitNetworkAccessPoliciesOperationGroup.list", + "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.list": "SecuritySolutionsAPI.JitNetworkAccessPoliciesOperationGroup.list", + "azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations.list_by_resource_group": "SecuritySolutionsAPI.JitNetworkAccessPoliciesOperationGroup.listByResourceGroup", + "azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations.list_by_resource_group": "SecuritySolutionsAPI.JitNetworkAccessPoliciesOperationGroup.listByResourceGroup", + "azure.mgmt.security.operations.SecuritySolutionsOperations.get": "SecuritySolutionsAPI.SecuritySolutions.get", + "azure.mgmt.security.aio.operations.SecuritySolutionsOperations.get": "SecuritySolutionsAPI.SecuritySolutions.get", + "azure.mgmt.security.operations.SecuritySolutionsOperations.list": "SecuritySolutionsAPI.SecuritySolutionsOperationGroup.list", + "azure.mgmt.security.aio.operations.SecuritySolutionsOperations.list": "SecuritySolutionsAPI.SecuritySolutionsOperationGroup.list", + "azure.mgmt.security.operations.SecurityStandardsOperations.get": "SecurityStandardsAPI.SecurityStandards.get", + "azure.mgmt.security.aio.operations.SecurityStandardsOperations.get": "SecurityStandardsAPI.SecurityStandards.get", + "azure.mgmt.security.operations.SecurityStandardsOperations.create_or_update": "SecurityStandardsAPI.SecurityStandards.createOrUpdate", + "azure.mgmt.security.aio.operations.SecurityStandardsOperations.create_or_update": "SecurityStandardsAPI.SecurityStandards.createOrUpdate", + "azure.mgmt.security.operations.SecurityStandardsOperations.delete": "SecurityStandardsAPI.SecurityStandards.delete", + "azure.mgmt.security.aio.operations.SecurityStandardsOperations.delete": "SecurityStandardsAPI.SecurityStandards.delete", + "azure.mgmt.security.operations.SecurityStandardsOperations.list": "SecurityStandardsAPI.SecurityStandards.list", + "azure.mgmt.security.aio.operations.SecurityStandardsOperations.list": "SecurityStandardsAPI.SecurityStandards.list", + "azure.mgmt.security.operations.StandardAssignmentsOperations.get": "SecurityStandardsAPI.StandardAssignments.get", + "azure.mgmt.security.aio.operations.StandardAssignmentsOperations.get": "SecurityStandardsAPI.StandardAssignments.get", + "azure.mgmt.security.operations.StandardAssignmentsOperations.create": "SecurityStandardsAPI.StandardAssignments.create", + "azure.mgmt.security.aio.operations.StandardAssignmentsOperations.create": "SecurityStandardsAPI.StandardAssignments.create", + "azure.mgmt.security.operations.StandardAssignmentsOperations.delete": "SecurityStandardsAPI.StandardAssignments.delete", + "azure.mgmt.security.aio.operations.StandardAssignmentsOperations.delete": "SecurityStandardsAPI.StandardAssignments.delete", + "azure.mgmt.security.operations.StandardAssignmentsOperations.list": "SecurityStandardsAPI.StandardAssignments.list", + "azure.mgmt.security.aio.operations.StandardAssignmentsOperations.list": "SecurityStandardsAPI.StandardAssignments.list", + "azure.mgmt.security.operations.CustomRecommendationsOperations.get": "SecurityStandardsAPI.CustomRecommendations.get", + "azure.mgmt.security.aio.operations.CustomRecommendationsOperations.get": "SecurityStandardsAPI.CustomRecommendations.get", + "azure.mgmt.security.operations.CustomRecommendationsOperations.create_or_update": "SecurityStandardsAPI.CustomRecommendations.createOrUpdate", + "azure.mgmt.security.aio.operations.CustomRecommendationsOperations.create_or_update": "SecurityStandardsAPI.CustomRecommendations.createOrUpdate", + "azure.mgmt.security.operations.CustomRecommendationsOperations.delete": "SecurityStandardsAPI.CustomRecommendations.delete", + "azure.mgmt.security.aio.operations.CustomRecommendationsOperations.delete": "SecurityStandardsAPI.CustomRecommendations.delete", + "azure.mgmt.security.operations.CustomRecommendationsOperations.list": "SecurityStandardsAPI.CustomRecommendations.list", + "azure.mgmt.security.aio.operations.CustomRecommendationsOperations.list": "SecurityStandardsAPI.CustomRecommendations.list", + "azure.mgmt.security.operations.ServerVulnerabilityAssessmentsSettingsOperations.get": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettings.get", + "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentsSettingsOperations.get": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettings.get", + "azure.mgmt.security.operations.ServerVulnerabilityAssessmentsSettingsOperations.create_or_update": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettings.createOrUpdate", + "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentsSettingsOperations.create_or_update": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettings.createOrUpdate", + "azure.mgmt.security.operations.ServerVulnerabilityAssessmentsSettingsOperations.delete": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettings.delete", + "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentsSettingsOperations.delete": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettings.delete", + "azure.mgmt.security.operations.ServerVulnerabilityAssessmentsSettingsOperations.list_by_subscription": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettings.listBySubscription", + "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentsSettingsOperations.list_by_subscription": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettings.listBySubscription", + "azure.mgmt.security.operations.SettingsOperations.get": "SettingsAPI.Settings.get", + "azure.mgmt.security.aio.operations.SettingsOperations.get": "SettingsAPI.Settings.get", + "azure.mgmt.security.operations.SettingsOperations.update": "SettingsAPI.Settings.update", + "azure.mgmt.security.aio.operations.SettingsOperations.update": "SettingsAPI.Settings.update", + "azure.mgmt.security.operations.SettingsOperations.list": "SettingsAPI.Settings.list", + "azure.mgmt.security.aio.operations.SettingsOperations.list": "SettingsAPI.Settings.list", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.get": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.get", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.get": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.get", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.create_or_update": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.createOrUpdate", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.create_or_update": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.createOrUpdate", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.delete": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.delete", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.delete": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.delete", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.list": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.list", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.list": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.list", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.add": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.add", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentBaselineRulesOperations.add": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.add", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScanResultsOperations.get": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentScanResults.get", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScanResultsOperations.get": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentScanResults.get", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScanResultsOperations.list": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentScanResults.list", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScanResultsOperations.list": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentScanResults.list", + "azure.mgmt.security.operations.StandardsOperations.get": "StandardsAPI.Standards.get", + "azure.mgmt.security.aio.operations.StandardsOperations.get": "StandardsAPI.Standards.get", + "azure.mgmt.security.operations.StandardsOperations.create_or_update": "StandardsAPI.Standards.createOrUpdate", + "azure.mgmt.security.aio.operations.StandardsOperations.create_or_update": "StandardsAPI.Standards.createOrUpdate", + "azure.mgmt.security.operations.StandardsOperations.delete": "StandardsAPI.Standards.delete", + "azure.mgmt.security.aio.operations.StandardsOperations.delete": "StandardsAPI.Standards.delete", + "azure.mgmt.security.operations.StandardsOperations.list": "StandardsAPI.Standards.list", + "azure.mgmt.security.aio.operations.StandardsOperations.list": "StandardsAPI.Standards.list", + "azure.mgmt.security.operations.StandardsOperations.list_by_subscription": "StandardsAPI.Standards.listBySubscription", + "azure.mgmt.security.aio.operations.StandardsOperations.list_by_subscription": "StandardsAPI.Standards.listBySubscription", + "azure.mgmt.security.operations.AssignmentsOperations.get": "StandardsAPI.Assignments.get", + "azure.mgmt.security.aio.operations.AssignmentsOperations.get": "StandardsAPI.Assignments.get", + "azure.mgmt.security.operations.AssignmentsOperations.create_or_update": "StandardsAPI.Assignments.createOrUpdate", + "azure.mgmt.security.aio.operations.AssignmentsOperations.create_or_update": "StandardsAPI.Assignments.createOrUpdate", + "azure.mgmt.security.operations.AssignmentsOperations.delete": "StandardsAPI.Assignments.delete", + "azure.mgmt.security.aio.operations.AssignmentsOperations.delete": "StandardsAPI.Assignments.delete", + "azure.mgmt.security.operations.AssignmentsOperations.list": "StandardsAPI.Assignments.list", + "azure.mgmt.security.aio.operations.AssignmentsOperations.list": "StandardsAPI.Assignments.list", + "azure.mgmt.security.operations.AssignmentsOperations.list_by_subscription": "StandardsAPI.Assignments.listBySubscription", + "azure.mgmt.security.aio.operations.AssignmentsOperations.list_by_subscription": "StandardsAPI.Assignments.listBySubscription", + "azure.mgmt.security.operations.TasksOperations.get_resource_group_level_task": "TasksAPI.Tasks.getResourceGroupLevelTask", + "azure.mgmt.security.aio.operations.TasksOperations.get_resource_group_level_task": "TasksAPI.Tasks.getResourceGroupLevelTask", + "azure.mgmt.security.operations.TasksOperations.list_by_resource_group": "TasksAPI.Tasks.listByResourceGroup", + "azure.mgmt.security.aio.operations.TasksOperations.list_by_resource_group": "TasksAPI.Tasks.listByResourceGroup", + "azure.mgmt.security.operations.TasksOperations.update_resource_group_level_task_state": "TasksAPI.Tasks.updateResourceGroupLevelTaskState", + "azure.mgmt.security.aio.operations.TasksOperations.update_resource_group_level_task_state": "TasksAPI.Tasks.updateResourceGroupLevelTaskState", + "azure.mgmt.security.operations.TasksOperations.get_subscription_level_task": "TasksAPI.SecurityTasks.getSubscriptionLevelTask", + "azure.mgmt.security.aio.operations.TasksOperations.get_subscription_level_task": "TasksAPI.SecurityTasks.getSubscriptionLevelTask", + "azure.mgmt.security.operations.TasksOperations.list_by_home_region": "TasksAPI.SecurityTasks.listByHomeRegion", + "azure.mgmt.security.aio.operations.TasksOperations.list_by_home_region": "TasksAPI.SecurityTasks.listByHomeRegion", + "azure.mgmt.security.operations.TasksOperations.update_subscription_level_task_state": "TasksAPI.SecurityTasks.updateSubscriptionLevelTaskState", + "azure.mgmt.security.aio.operations.TasksOperations.update_subscription_level_task_state": "TasksAPI.SecurityTasks.updateSubscriptionLevelTaskState", + "azure.mgmt.security.operations.TasksOperations.list": "TasksAPI.TasksOperationGroup.list", + "azure.mgmt.security.aio.operations.TasksOperations.list": "TasksAPI.TasksOperationGroup.list", + "azure.mgmt.security.operations.APICollectionsOperations.get_by_azure_api_management_service": "ApiCollectionsAPI.ApiCollections.getByAzureApiManagementService", + "azure.mgmt.security.aio.operations.APICollectionsOperations.get_by_azure_api_management_service": "ApiCollectionsAPI.ApiCollections.getByAzureApiManagementService", + "azure.mgmt.security.operations.APICollectionsOperations.begin_onboard_azure_api_management_api": "ApiCollectionsAPI.ApiCollections.onboardAzureApiManagementApi", + "azure.mgmt.security.aio.operations.APICollectionsOperations.begin_onboard_azure_api_management_api": "ApiCollectionsAPI.ApiCollections.onboardAzureApiManagementApi", + "azure.mgmt.security.operations.APICollectionsOperations.offboard_azure_api_management_api": "ApiCollectionsAPI.ApiCollections.offboardAzureApiManagementApi", + "azure.mgmt.security.aio.operations.APICollectionsOperations.offboard_azure_api_management_api": "ApiCollectionsAPI.ApiCollections.offboardAzureApiManagementApi", + "azure.mgmt.security.operations.APICollectionsOperations.list_by_azure_api_management_service": "ApiCollectionsAPI.ApiCollections.listByAzureApiManagementService", + "azure.mgmt.security.aio.operations.APICollectionsOperations.list_by_azure_api_management_service": "ApiCollectionsAPI.ApiCollections.listByAzureApiManagementService", + "azure.mgmt.security.operations.APICollectionsOperations.list_by_subscription": "ApiCollectionsAPI.ApiCollections.listBySubscription", + "azure.mgmt.security.aio.operations.APICollectionsOperations.list_by_subscription": "ApiCollectionsAPI.ApiCollections.listBySubscription", + "azure.mgmt.security.operations.APICollectionsOperations.list_by_resource_group": "ApiCollectionsAPI.ApiCollectionsOperationGroup.listByResourceGroup", + "azure.mgmt.security.aio.operations.APICollectionsOperations.list_by_resource_group": "ApiCollectionsAPI.ApiCollectionsOperationGroup.listByResourceGroup", + "azure.mgmt.security.operations.ApplicationOperations.get": "ApplicationsAPI.Applications.get", + "azure.mgmt.security.aio.operations.ApplicationOperations.get": "ApplicationsAPI.Applications.get", + "azure.mgmt.security.operations.ApplicationOperations.create_or_update": "ApplicationsAPI.Applications.createOrUpdate", + "azure.mgmt.security.aio.operations.ApplicationOperations.create_or_update": "ApplicationsAPI.Applications.createOrUpdate", + "azure.mgmt.security.operations.ApplicationOperations.delete": "ApplicationsAPI.Applications.delete", + "azure.mgmt.security.aio.operations.ApplicationOperations.delete": "ApplicationsAPI.Applications.delete", + "azure.mgmt.security.operations.SecurityConnectorApplicationsOperations.list": "ApplicationsAPI.SecurityConnectorApplication.list", + "azure.mgmt.security.aio.operations.SecurityConnectorApplicationsOperations.list": "ApplicationsAPI.SecurityConnectorApplication.list", + "azure.mgmt.security.operations.AssessmentsOperations.get": "AssessmentAPI.SecurityAssessmentResponses.get", + "azure.mgmt.security.aio.operations.AssessmentsOperations.get": "AssessmentAPI.SecurityAssessmentResponses.get", + "azure.mgmt.security.operations.AssessmentsOperations.create_or_update": "AssessmentAPI.SecurityAssessmentResponses.createOrUpdate", + "azure.mgmt.security.aio.operations.AssessmentsOperations.create_or_update": "AssessmentAPI.SecurityAssessmentResponses.createOrUpdate", + "azure.mgmt.security.operations.AssessmentsOperations.delete": "AssessmentAPI.SecurityAssessmentResponses.delete", + "azure.mgmt.security.aio.operations.AssessmentsOperations.delete": "AssessmentAPI.SecurityAssessmentResponses.delete", + "azure.mgmt.security.operations.AssessmentsOperations.list": "AssessmentAPI.SecurityAssessmentResponses.list", + "azure.mgmt.security.aio.operations.AssessmentsOperations.list": "AssessmentAPI.SecurityAssessmentResponses.list", + "azure.mgmt.security.operations.AdvancedThreatProtectionOperations.get": "ATPSettingsAPI.AdvancedThreatProtectionSettings.get", + "azure.mgmt.security.aio.operations.AdvancedThreatProtectionOperations.get": "ATPSettingsAPI.AdvancedThreatProtectionSettings.get", + "azure.mgmt.security.operations.AdvancedThreatProtectionOperations.create": "ATPSettingsAPI.AdvancedThreatProtectionSettings.create", + "azure.mgmt.security.aio.operations.AdvancedThreatProtectionOperations.create": "ATPSettingsAPI.AdvancedThreatProtectionSettings.create", + "azure.mgmt.security.operations.DefenderForStorageOperations.get": "DefenderForStorageAPI.DefenderForStorageSettings.get", + "azure.mgmt.security.aio.operations.DefenderForStorageOperations.get": "DefenderForStorageAPI.DefenderForStorageSettings.get", + "azure.mgmt.security.operations.DefenderForStorageOperations.create": "DefenderForStorageAPI.DefenderForStorageSettings.create", + "azure.mgmt.security.aio.operations.DefenderForStorageOperations.create": "DefenderForStorageAPI.DefenderForStorageSettings.create", + "azure.mgmt.security.operations.DefenderForStorageOperations.list": "DefenderForStorageAPI.DefenderForStorageSettings.list", + "azure.mgmt.security.aio.operations.DefenderForStorageOperations.list": "DefenderForStorageAPI.DefenderForStorageSettings.list", + "azure.mgmt.security.operations.DefenderForStorageOperations.start_malware_scan": "DefenderForStorageAPI.DefenderForStorageSettings.startMalwareScan", + "azure.mgmt.security.aio.operations.DefenderForStorageOperations.start_malware_scan": "DefenderForStorageAPI.DefenderForStorageSettings.startMalwareScan", + "azure.mgmt.security.operations.DefenderForStorageOperations.cancel_malware_scan": "DefenderForStorageAPI.DefenderForStorageSettings.cancelMalwareScan", + "azure.mgmt.security.aio.operations.DefenderForStorageOperations.cancel_malware_scan": "DefenderForStorageAPI.DefenderForStorageSettings.cancelMalwareScan", + "azure.mgmt.security.operations.DefenderForStorageOperations.get_malware_scan": "DefenderForStorageAPI.DefenderForStorageSettings.getMalwareScan", + "azure.mgmt.security.aio.operations.DefenderForStorageOperations.get_malware_scan": "DefenderForStorageAPI.DefenderForStorageSettings.getMalwareScan", + "azure.mgmt.security.operations.IotSecuritySolutionAnalyticsOperations.get": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModels.get", + "azure.mgmt.security.aio.operations.IotSecuritySolutionAnalyticsOperations.get": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModels.get", + "azure.mgmt.security.operations.IotSecuritySolutionAnalyticsOperations.list": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModels.list", + "azure.mgmt.security.aio.operations.IotSecuritySolutionAnalyticsOperations.list": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModels.list", + "azure.mgmt.security.operations.IotSecuritySolutionOperations.get": "IoTSecurityAPI.IoTSecuritySolutionModels.get", + "azure.mgmt.security.aio.operations.IotSecuritySolutionOperations.get": "IoTSecurityAPI.IoTSecuritySolutionModels.get", + "azure.mgmt.security.operations.IotSecuritySolutionOperations.create_or_update": "IoTSecurityAPI.IoTSecuritySolutionModels.createOrUpdate", + "azure.mgmt.security.aio.operations.IotSecuritySolutionOperations.create_or_update": "IoTSecurityAPI.IoTSecuritySolutionModels.createOrUpdate", + "azure.mgmt.security.operations.IotSecuritySolutionOperations.update": "IoTSecurityAPI.IoTSecuritySolutionModels.update", + "azure.mgmt.security.aio.operations.IotSecuritySolutionOperations.update": "IoTSecurityAPI.IoTSecuritySolutionModels.update", + "azure.mgmt.security.operations.IotSecuritySolutionOperations.delete": "IoTSecurityAPI.IoTSecuritySolutionModels.delete", + "azure.mgmt.security.aio.operations.IotSecuritySolutionOperations.delete": "IoTSecurityAPI.IoTSecuritySolutionModels.delete", + "azure.mgmt.security.operations.IotSecuritySolutionOperations.list_by_resource_group": "IoTSecurityAPI.IoTSecuritySolutionModels.listByResourceGroup", + "azure.mgmt.security.aio.operations.IotSecuritySolutionOperations.list_by_resource_group": "IoTSecurityAPI.IoTSecuritySolutionModels.listByResourceGroup", + "azure.mgmt.security.operations.IotSecuritySolutionOperations.list_by_subscription": "IoTSecurityAPI.IoTSecuritySolutionModels.listBySubscription", + "azure.mgmt.security.aio.operations.IotSecuritySolutionOperations.list_by_subscription": "IoTSecurityAPI.IoTSecuritySolutionModels.listBySubscription", + "azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations.get": "IoTSecurityAPI.IoTSecurityAggregatedAlerts.get", + "azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations.get": "IoTSecurityAPI.IoTSecurityAggregatedAlerts.get", + "azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations.list": "IoTSecurityAPI.IoTSecurityAggregatedAlerts.list", + "azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations.list": "IoTSecurityAPI.IoTSecurityAggregatedAlerts.list", + "azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations.dismiss": "IoTSecurityAPI.IoTSecurityAggregatedAlerts.dismiss", + "azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations.dismiss": "IoTSecurityAPI.IoTSecurityAggregatedAlerts.dismiss", + "azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsRecommendationOperations.get": "IoTSecurityAPI.IoTSecurityAggregatedRecommendations.get", + "azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsRecommendationOperations.get": "IoTSecurityAPI.IoTSecurityAggregatedRecommendations.get", + "azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsRecommendationOperations.list": "IoTSecurityAPI.IoTSecurityAggregatedRecommendations.list", + "azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsRecommendationOperations.list": "IoTSecurityAPI.IoTSecurityAggregatedRecommendations.list", + "azure.mgmt.security.operations.LocationsOperations.get": "LocationsAPI.AscLocations.get", + "azure.mgmt.security.aio.operations.LocationsOperations.get": "LocationsAPI.AscLocations.get", + "azure.mgmt.security.operations.LocationsOperations.list": "LocationsAPI.AscLocations.list", + "azure.mgmt.security.aio.operations.LocationsOperations.list": "LocationsAPI.AscLocations.list", + "azure.mgmt.security.operations.OperationResultsOperations.get": "OperationsAPI.OperationResultsOperationGroup.get", + "azure.mgmt.security.aio.operations.OperationResultsOperations.get": "OperationsAPI.OperationResultsOperationGroup.get", + "azure.mgmt.security.operations.OperationStatusesOperations.get": "OperationsAPI.OperationStatusesOperationGroup.get", + "azure.mgmt.security.aio.operations.OperationStatusesOperations.get": "OperationsAPI.OperationStatusesOperationGroup.get", + "azure.mgmt.security.operations.PrivateLinksOperations.get": "PrivateLinksAPI.PrivateLinkResources.get", + "azure.mgmt.security.aio.operations.PrivateLinksOperations.get": "PrivateLinksAPI.PrivateLinkResources.get", + "azure.mgmt.security.operations.PrivateLinksOperations.head": "PrivateLinksAPI.PrivateLinkResources.head", + "azure.mgmt.security.aio.operations.PrivateLinksOperations.head": "PrivateLinksAPI.PrivateLinkResources.head", + "azure.mgmt.security.operations.PrivateLinksOperations.begin_create": "PrivateLinksAPI.PrivateLinkResources.create", + "azure.mgmt.security.aio.operations.PrivateLinksOperations.begin_create": "PrivateLinksAPI.PrivateLinkResources.create", + "azure.mgmt.security.operations.PrivateLinksOperations.update": "PrivateLinksAPI.PrivateLinkResources.update", + "azure.mgmt.security.aio.operations.PrivateLinksOperations.update": "PrivateLinksAPI.PrivateLinkResources.update", + "azure.mgmt.security.operations.PrivateLinksOperations.begin_delete": "PrivateLinksAPI.PrivateLinkResources.delete", + "azure.mgmt.security.aio.operations.PrivateLinksOperations.begin_delete": "PrivateLinksAPI.PrivateLinkResources.delete", + "azure.mgmt.security.operations.PrivateLinksOperations.list": "PrivateLinksAPI.PrivateLinkResources.list", + "azure.mgmt.security.aio.operations.PrivateLinksOperations.list": "PrivateLinksAPI.PrivateLinkResources.list", + "azure.mgmt.security.operations.PrivateLinksOperations.list_by_subscription": "PrivateLinksAPI.PrivateLinkResources.listBySubscription", + "azure.mgmt.security.aio.operations.PrivateLinksOperations.list_by_subscription": "PrivateLinksAPI.PrivateLinkResources.listBySubscription", + "azure.mgmt.security.operations.SecureScoresOperations.get": "SecureScoreAPI.SecureScoreItems.get", + "azure.mgmt.security.aio.operations.SecureScoresOperations.get": "SecureScoreAPI.SecureScoreItems.get", + "azure.mgmt.security.operations.SecureScoresOperations.list": "SecureScoreAPI.SecureScoreItems.list", + "azure.mgmt.security.aio.operations.SecureScoresOperations.list": "SecureScoreAPI.SecureScoreItems.list", + "azure.mgmt.security.operations.SecureScoreControlsOperations.list_by_secure_score": "SecureScoreAPI.SecureScoreItems.listBySecureScore", + "azure.mgmt.security.aio.operations.SecureScoreControlsOperations.list_by_secure_score": "SecureScoreAPI.SecureScoreItems.listBySecureScore", + "azure.mgmt.security.operations.SecureScoreControlsOperations.list": "SecureScoreAPI.SecureScoreControlsOperationGroup.list", + "azure.mgmt.security.aio.operations.SecureScoreControlsOperations.list": "SecureScoreAPI.SecureScoreControlsOperationGroup.list", + "azure.mgmt.security.operations.SecureScoreControlDefinitionsOperations.list": "SecureScoreAPI.SecureScoreControlDefinitionsOperationGroup.list", + "azure.mgmt.security.aio.operations.SecureScoreControlDefinitionsOperations.list": "SecureScoreAPI.SecureScoreControlDefinitionsOperationGroup.list", + "azure.mgmt.security.operations.SecureScoreControlDefinitionsOperations.list_by_subscription": "SecureScoreAPI.SecureScoreControlDefinitionsOperationGroup.listBySubscription", + "azure.mgmt.security.aio.operations.SecureScoreControlDefinitionsOperations.list_by_subscription": "SecureScoreAPI.SecureScoreControlDefinitionsOperationGroup.listBySubscription", + "azure.mgmt.security.operations.GitLabSubgroupsOperations.list": "SecurityConnectorsDevOpsAPI.GitLabGroups.gitLabSubgroupsList", + "azure.mgmt.security.aio.operations.GitLabSubgroupsOperations.list": "SecurityConnectorsDevOpsAPI.GitLabGroups.gitLabSubgroupsList", + "azure.mgmt.security.operations.DevOpsOperationResultsOperations.get": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.devOpsOperationResultsGet", + "azure.mgmt.security.aio.operations.DevOpsOperationResultsOperations.get": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.devOpsOperationResultsGet", + "azure.mgmt.security.operations.AzureDevOpsReposOperations.get": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositories.get", + "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.get": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositories.get", + "azure.mgmt.security.operations.AzureDevOpsReposOperations.begin_create_or_update": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositories.createOrUpdate", + "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.begin_create_or_update": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositories.createOrUpdate", + "azure.mgmt.security.operations.AzureDevOpsReposOperations.begin_update": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositories.update", + "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.begin_update": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositories.update", + "azure.mgmt.security.operations.AzureDevOpsReposOperations.list": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositories.list", + "azure.mgmt.security.aio.operations.AzureDevOpsReposOperations.list": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositories.list", + "azure.mgmt.security.operations.GitHubReposOperations.get": "SecurityConnectorsDevOpsAPI.GitHubRepositories.get", + "azure.mgmt.security.aio.operations.GitHubReposOperations.get": "SecurityConnectorsDevOpsAPI.GitHubRepositories.get", + "azure.mgmt.security.operations.GitHubReposOperations.list": "SecurityConnectorsDevOpsAPI.GitHubRepositories.list", + "azure.mgmt.security.aio.operations.GitHubReposOperations.list": "SecurityConnectorsDevOpsAPI.GitHubRepositories.list", + "azure.mgmt.security.operations.GitHubIssuesOperations.begin_create": "SecurityConnectorsDevOpsAPI.GitHubRepositories.create", + "azure.mgmt.security.aio.operations.GitHubIssuesOperations.begin_create": "SecurityConnectorsDevOpsAPI.GitHubRepositories.create", + "azure.mgmt.security.operations.AllowedConnectionsOperations.get": "SecuritySolutionsAPI.AllowedConnectionsResources.get", + "azure.mgmt.security.aio.operations.AllowedConnectionsOperations.get": "SecuritySolutionsAPI.AllowedConnectionsResources.get", + "azure.mgmt.security.operations.AllowedConnectionsOperations.list_by_home_region": "SecuritySolutionsAPI.AllowedConnectionsResources.listByHomeRegion", + "azure.mgmt.security.aio.operations.AllowedConnectionsOperations.list_by_home_region": "SecuritySolutionsAPI.AllowedConnectionsResources.listByHomeRegion", + "azure.mgmt.security.operations.AllowedConnectionsOperations.list": "SecuritySolutionsAPI.AllowedConnectionsOperationGroup.list", + "azure.mgmt.security.aio.operations.AllowedConnectionsOperations.list": "SecuritySolutionsAPI.AllowedConnectionsOperationGroup.list", + "azure.mgmt.security.operations.ServerVulnerabilityAssessmentOperations.get": "SecuritySolutionsAPI.ServerVulnerabilityAssessments.get", + "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentOperations.get": "SecuritySolutionsAPI.ServerVulnerabilityAssessments.get", + "azure.mgmt.security.operations.ServerVulnerabilityAssessmentOperations.create_or_update": "SecuritySolutionsAPI.ServerVulnerabilityAssessments.createOrUpdate", + "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentOperations.create_or_update": "SecuritySolutionsAPI.ServerVulnerabilityAssessments.createOrUpdate", + "azure.mgmt.security.operations.ServerVulnerabilityAssessmentOperations.begin_delete": "SecuritySolutionsAPI.ServerVulnerabilityAssessments.delete", + "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentOperations.begin_delete": "SecuritySolutionsAPI.ServerVulnerabilityAssessments.delete", + "azure.mgmt.security.operations.ServerVulnerabilityAssessmentOperations.list_by_extended_resource": "SecuritySolutionsAPI.ServerVulnerabilityAssessments.listByExtendedResource", + "azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentOperations.list_by_extended_resource": "SecuritySolutionsAPI.ServerVulnerabilityAssessments.listByExtendedResource", + "azure.mgmt.security.operations.TopologyOperations.get": "SecuritySolutionsAPI.TopologyResources.get", + "azure.mgmt.security.aio.operations.TopologyOperations.get": "SecuritySolutionsAPI.TopologyResources.get", + "azure.mgmt.security.operations.TopologyOperations.list_by_home_region": "SecuritySolutionsAPI.TopologyResources.listByHomeRegion", + "azure.mgmt.security.aio.operations.TopologyOperations.list_by_home_region": "SecuritySolutionsAPI.TopologyResources.listByHomeRegion", + "azure.mgmt.security.operations.TopologyOperations.list": "SecuritySolutionsAPI.TopologyOperationGroup.list", + "azure.mgmt.security.aio.operations.TopologyOperations.list": "SecuritySolutionsAPI.TopologyOperationGroup.list", + "azure.mgmt.security.operations.SecuritySolutionsReferenceDataOperations.list": "SecuritySolutionsAPI.SecuritySolutionsReferenceDataOperationGroup.list", + "azure.mgmt.security.aio.operations.SecuritySolutionsReferenceDataOperations.list": "SecuritySolutionsAPI.SecuritySolutionsReferenceDataOperationGroup.list", + "azure.mgmt.security.operations.SecuritySolutionsReferenceDataOperations.list_by_home_region": "SecuritySolutionsAPI.SecuritySolutionsReferenceDataOperationGroup.listByHomeRegion", + "azure.mgmt.security.aio.operations.SecuritySolutionsReferenceDataOperations.list_by_home_region": "SecuritySolutionsAPI.SecuritySolutionsReferenceDataOperationGroup.listByHomeRegion", + "azure.mgmt.security.operations.SensitivitySettingsOperations.get": "SensitivitySettingsAPI.GetSensitivitySettingsResponses.get", + "azure.mgmt.security.aio.operations.SensitivitySettingsOperations.get": "SensitivitySettingsAPI.GetSensitivitySettingsResponses.get", + "azure.mgmt.security.operations.SensitivitySettingsOperations.create_or_update": "SensitivitySettingsAPI.GetSensitivitySettingsResponses.createOrUpdate", + "azure.mgmt.security.aio.operations.SensitivitySettingsOperations.create_or_update": "SensitivitySettingsAPI.GetSensitivitySettingsResponses.createOrUpdate", + "azure.mgmt.security.operations.SensitivitySettingsOperations.list": "SensitivitySettingsAPI.GetSensitivitySettingsResponses.list", + "azure.mgmt.security.aio.operations.SensitivitySettingsOperations.list": "SensitivitySettingsAPI.GetSensitivitySettingsResponses.list", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentSettingsOperations.get": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.get", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentSettingsOperations.get": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.get", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentSettingsOperations.create_or_update": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.createOrUpdate", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentSettingsOperations.create_or_update": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.createOrUpdate", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentSettingsOperations.delete": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.delete", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentSettingsOperations.delete": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.delete", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations.begin_initiate_scan": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.initiateScan", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations.begin_initiate_scan": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.initiateScan", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations.get_scan_operation_result": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.getScanOperationResult", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations.get_scan_operation_result": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.getScanOperationResult", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations.get": "SqlVulnerabilityAssessmentsAPI.ScanV2s.get", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations.get": "SqlVulnerabilityAssessmentsAPI.ScanV2s.get", + "azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations.list": "SqlVulnerabilityAssessmentsAPI.ScanV2s.list", + "azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations.list": "SqlVulnerabilityAssessmentsAPI.ScanV2s.list", + "azure.mgmt.security.operations.SubAssessmentsOperations.get": "SubAssessmentsAPI.SecuritySubAssessments.get", + "azure.mgmt.security.aio.operations.SubAssessmentsOperations.get": "SubAssessmentsAPI.SecuritySubAssessments.get", + "azure.mgmt.security.operations.SubAssessmentsOperations.list": "SubAssessmentsAPI.SecuritySubAssessments.list", + "azure.mgmt.security.aio.operations.SubAssessmentsOperations.list": "SubAssessmentsAPI.SecuritySubAssessments.list", + "azure.mgmt.security.operations.SubAssessmentsOperations.list_all": "SubAssessmentsAPI.SubAssessmentsOperationGroup.listAll", + "azure.mgmt.security.aio.operations.SubAssessmentsOperations.list_all": "SubAssessmentsAPI.SubAssessmentsOperationGroup.listAll" } } \ No newline at end of file diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/__init__.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/__init__.py index dc0afd3f67f6..d3ed227f6eac 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/__init__.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/__init__.py @@ -2,7 +2,7 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- # pylint: disable=wrong-import-position @@ -12,7 +12,7 @@ if TYPE_CHECKING: from ._patch import * # pylint: disable=unused-wildcard-import -from ._security_center import SecurityCenter # type: ignore +from ._client import SecurityManagementClient # type: ignore from ._version import VERSION __version__ = VERSION @@ -25,7 +25,7 @@ from ._patch import patch_sdk as _patch_sdk __all__ = [ - "SecurityCenter", + "SecurityManagementClient", ] __all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/_security_center.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/_client.py similarity index 95% rename from sdk/security/azure-mgmt-security/azure/mgmt/security/_security_center.py rename to sdk/security/azure-mgmt-security/azure/mgmt/security/_client.py index 1ff7d1a60d36..4b42131d75bc 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/_security_center.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/_client.py @@ -2,7 +2,7 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- @@ -17,8 +17,7 @@ from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy from azure.mgmt.core.tools import get_arm_endpoints -from . import models as _models -from ._configuration import SecurityCenterConfiguration +from ._configuration import SecurityManagementClientConfiguration from ._utils.serialization import Deserializer, Serializer from .operations import ( APICollectionsOperations, @@ -78,6 +77,7 @@ SecurityConnectorApplicationOperations, SecurityConnectorApplicationsOperations, SecurityConnectorsOperations, + SecurityContactsOperations, SecurityOperatorsOperations, SecuritySolutionsOperations, SecuritySolutionsReferenceDataOperations, @@ -103,13 +103,35 @@ from azure.core.credentials import TokenCredential -class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """API spec for Microsoft.Security (Azure Security Center) resource provider. +class SecurityManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes + """SecurityManagementClient. - :ivar locations: LocationsOperations operations - :vartype locations: azure.mgmt.security.operations.LocationsOperations - :ivar tasks: TasksOperations operations - :vartype tasks: azure.mgmt.security.operations.TasksOperations + :ivar alerts: AlertsOperations operations + :vartype alerts: azure.mgmt.security.operations.AlertsOperations + :ivar alerts_suppression_rules: AlertsSuppressionRulesOperations operations + :vartype alerts_suppression_rules: + azure.mgmt.security.operations.AlertsSuppressionRulesOperations + :ivar applications: ApplicationsOperations operations + :vartype applications: azure.mgmt.security.operations.ApplicationsOperations + :ivar security_connector_application: SecurityConnectorApplicationOperations operations + :vartype security_connector_application: + azure.mgmt.security.operations.SecurityConnectorApplicationOperations + :ivar assessments_metadata: AssessmentsMetadataOperations operations + :vartype assessments_metadata: azure.mgmt.security.operations.AssessmentsMetadataOperations + :ivar automations: AutomationsOperations operations + :vartype automations: azure.mgmt.security.operations.AutomationsOperations + :ivar security_contacts: SecurityContactsOperations operations + :vartype security_contacts: azure.mgmt.security.operations.SecurityContactsOperations + :ivar compliance_results: ComplianceResultsOperations operations + :vartype compliance_results: azure.mgmt.security.operations.ComplianceResultsOperations + :ivar governance_assignments: GovernanceAssignmentsOperations operations + :vartype governance_assignments: azure.mgmt.security.operations.GovernanceAssignmentsOperations + :ivar governance_rules: GovernanceRulesOperations operations + :vartype governance_rules: azure.mgmt.security.operations.GovernanceRulesOperations + :ivar health_reports: HealthReportsOperations operations + :vartype health_reports: azure.mgmt.security.operations.HealthReportsOperations + :ivar device_security_groups: DeviceSecurityGroupsOperations operations + :vartype device_security_groups: azure.mgmt.security.operations.DeviceSecurityGroupsOperations :ivar auto_provisioning_settings: AutoProvisioningSettingsOperations operations :vartype auto_provisioning_settings: azure.mgmt.security.operations.AutoProvisioningSettingsOperations @@ -120,9 +142,17 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- azure.mgmt.security.operations.InformationProtectionPoliciesOperations :ivar workspace_settings: WorkspaceSettingsOperations operations :vartype workspace_settings: azure.mgmt.security.operations.WorkspaceSettingsOperations - :ivar alerts_suppression_rules: AlertsSuppressionRulesOperations operations - :vartype alerts_suppression_rules: - azure.mgmt.security.operations.AlertsSuppressionRulesOperations + :ivar mde_onboardings: MdeOnboardingsOperations operations + :vartype mde_onboardings: azure.mgmt.security.operations.MdeOnboardingsOperations + :ivar operations: Operations operations + :vartype operations: azure.mgmt.security.operations.Operations + :ivar pricings: PricingsOperations operations + :vartype pricings: azure.mgmt.security.operations.PricingsOperations + :ivar private_link_resources: PrivateLinkResourcesOperations operations + :vartype private_link_resources: azure.mgmt.security.operations.PrivateLinkResourcesOperations + :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations + :vartype private_endpoint_connections: + azure.mgmt.security.operations.PrivateEndpointConnectionsOperations :ivar regulatory_compliance_standards: RegulatoryComplianceStandardsOperations operations :vartype regulatory_compliance_standards: azure.mgmt.security.operations.RegulatoryComplianceStandardsOperations @@ -132,104 +162,22 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- :ivar regulatory_compliance_assessments: RegulatoryComplianceAssessmentsOperations operations :vartype regulatory_compliance_assessments: azure.mgmt.security.operations.RegulatoryComplianceAssessmentsOperations - :ivar sub_assessments: SubAssessmentsOperations operations - :vartype sub_assessments: azure.mgmt.security.operations.SubAssessmentsOperations - :ivar mde_onboardings: MdeOnboardingsOperations operations - :vartype mde_onboardings: azure.mgmt.security.operations.MdeOnboardingsOperations - :ivar governance_assignments: GovernanceAssignmentsOperations operations - :vartype governance_assignments: azure.mgmt.security.operations.GovernanceAssignmentsOperations - :ivar governance_rules: GovernanceRulesOperations operations - :vartype governance_rules: azure.mgmt.security.operations.GovernanceRulesOperations - :ivar applications: ApplicationsOperations operations - :vartype applications: azure.mgmt.security.operations.ApplicationsOperations - :ivar application: ApplicationOperations operations - :vartype application: azure.mgmt.security.operations.ApplicationOperations - :ivar security_connector_applications: SecurityConnectorApplicationsOperations operations - :vartype security_connector_applications: - azure.mgmt.security.operations.SecurityConnectorApplicationsOperations - :ivar security_connector_application: SecurityConnectorApplicationOperations operations - :vartype security_connector_application: - azure.mgmt.security.operations.SecurityConnectorApplicationOperations - :ivar security_operators: SecurityOperatorsOperations operations - :vartype security_operators: azure.mgmt.security.operations.SecurityOperatorsOperations - :ivar sql_vulnerability_assessment_baseline_rules: - SqlVulnerabilityAssessmentBaselineRulesOperations operations - :vartype sql_vulnerability_assessment_baseline_rules: - azure.mgmt.security.operations.SqlVulnerabilityAssessmentBaselineRulesOperations - :ivar sql_vulnerability_assessment_scans: SqlVulnerabilityAssessmentScansOperations operations - :vartype sql_vulnerability_assessment_scans: - azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations - :ivar sql_vulnerability_assessment_scan_results: - SqlVulnerabilityAssessmentScanResultsOperations operations - :vartype sql_vulnerability_assessment_scan_results: - azure.mgmt.security.operations.SqlVulnerabilityAssessmentScanResultsOperations - :ivar sql_vulnerability_assessment_settings: SqlVulnerabilityAssessmentSettingsOperations - operations - :vartype sql_vulnerability_assessment_settings: - azure.mgmt.security.operations.SqlVulnerabilityAssessmentSettingsOperations - :ivar sensitivity_settings: SensitivitySettingsOperations operations - :vartype sensitivity_settings: azure.mgmt.security.operations.SensitivitySettingsOperations - :ivar health_reports: HealthReportsOperations operations - :vartype health_reports: azure.mgmt.security.operations.HealthReportsOperations - :ivar automations: AutomationsOperations operations - :vartype automations: azure.mgmt.security.operations.AutomationsOperations :ivar security_connectors: SecurityConnectorsOperations operations :vartype security_connectors: azure.mgmt.security.operations.SecurityConnectorsOperations :ivar azure_dev_ops_orgs: AzureDevOpsOrgsOperations operations :vartype azure_dev_ops_orgs: azure.mgmt.security.operations.AzureDevOpsOrgsOperations - :ivar azure_dev_ops_projects: AzureDevOpsProjectsOperations operations - :vartype azure_dev_ops_projects: azure.mgmt.security.operations.AzureDevOpsProjectsOperations - :ivar azure_dev_ops_repos: AzureDevOpsReposOperations operations - :vartype azure_dev_ops_repos: azure.mgmt.security.operations.AzureDevOpsReposOperations - :ivar dev_ops_configurations: DevOpsConfigurationsOperations operations - :vartype dev_ops_configurations: azure.mgmt.security.operations.DevOpsConfigurationsOperations :ivar git_hub_owners: GitHubOwnersOperations operations :vartype git_hub_owners: azure.mgmt.security.operations.GitHubOwnersOperations - :ivar git_hub_repos: GitHubReposOperations operations - :vartype git_hub_repos: azure.mgmt.security.operations.GitHubReposOperations - :ivar git_hub_issues: GitHubIssuesOperations operations - :vartype git_hub_issues: azure.mgmt.security.operations.GitHubIssuesOperations :ivar git_lab_groups: GitLabGroupsOperations operations :vartype git_lab_groups: azure.mgmt.security.operations.GitLabGroupsOperations - :ivar git_lab_subgroups: GitLabSubgroupsOperations operations - :vartype git_lab_subgroups: azure.mgmt.security.operations.GitLabSubgroupsOperations + :ivar dev_ops_configurations: DevOpsConfigurationsOperations operations + :vartype dev_ops_configurations: azure.mgmt.security.operations.DevOpsConfigurationsOperations + :ivar azure_dev_ops_projects: AzureDevOpsProjectsOperations operations + :vartype azure_dev_ops_projects: azure.mgmt.security.operations.AzureDevOpsProjectsOperations :ivar git_lab_projects: GitLabProjectsOperations operations :vartype git_lab_projects: azure.mgmt.security.operations.GitLabProjectsOperations - :ivar dev_ops_operation_results: DevOpsOperationResultsOperations operations - :vartype dev_ops_operation_results: - azure.mgmt.security.operations.DevOpsOperationResultsOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.security.operations.Operations - :ivar operation_results: OperationResultsOperations operations - :vartype operation_results: azure.mgmt.security.operations.OperationResultsOperations - :ivar operation_statuses: OperationStatusesOperations operations - :vartype operation_statuses: azure.mgmt.security.operations.OperationStatusesOperations - :ivar assessments_metadata: AssessmentsMetadataOperations operations - :vartype assessments_metadata: azure.mgmt.security.operations.AssessmentsMetadataOperations - :ivar assessments: AssessmentsOperations operations - :vartype assessments: azure.mgmt.security.operations.AssessmentsOperations - :ivar compliance_results: ComplianceResultsOperations operations - :vartype compliance_results: azure.mgmt.security.operations.ComplianceResultsOperations - :ivar advanced_threat_protection: AdvancedThreatProtectionOperations operations - :vartype advanced_threat_protection: - azure.mgmt.security.operations.AdvancedThreatProtectionOperations - :ivar device_security_groups: DeviceSecurityGroupsOperations operations - :vartype device_security_groups: azure.mgmt.security.operations.DeviceSecurityGroupsOperations - :ivar iot_security_solution_analytics: IotSecuritySolutionAnalyticsOperations operations - :vartype iot_security_solution_analytics: - azure.mgmt.security.operations.IotSecuritySolutionAnalyticsOperations - :ivar iot_security_solutions_analytics_aggregated_alert: - IotSecuritySolutionsAnalyticsAggregatedAlertOperations operations - :vartype iot_security_solutions_analytics_aggregated_alert: - azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations - :ivar iot_security_solutions_analytics_recommendation: - IotSecuritySolutionsAnalyticsRecommendationOperations operations - :vartype iot_security_solutions_analytics_recommendation: - azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsRecommendationOperations - :ivar iot_security_solution: IotSecuritySolutionOperations operations - :vartype iot_security_solution: azure.mgmt.security.operations.IotSecuritySolutionOperations - :ivar allowed_connections: AllowedConnectionsOperations operations - :vartype allowed_connections: azure.mgmt.security.operations.AllowedConnectionsOperations + :ivar security_operators: SecurityOperatorsOperations operations + :vartype security_operators: azure.mgmt.security.operations.SecurityOperatorsOperations :ivar discovered_security_solutions: DiscoveredSecuritySolutionsOperations operations :vartype discovered_security_solutions: azure.mgmt.security.operations.DiscoveredSecuritySolutionsOperations @@ -241,45 +189,67 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations :ivar security_solutions: SecuritySolutionsOperations operations :vartype security_solutions: azure.mgmt.security.operations.SecuritySolutionsOperations - :ivar security_solutions_reference_data: SecuritySolutionsReferenceDataOperations operations - :vartype security_solutions_reference_data: - azure.mgmt.security.operations.SecuritySolutionsReferenceDataOperations - :ivar server_vulnerability_assessment: ServerVulnerabilityAssessmentOperations operations - :vartype server_vulnerability_assessment: - azure.mgmt.security.operations.ServerVulnerabilityAssessmentOperations - :ivar topology: TopologyOperations operations - :vartype topology: azure.mgmt.security.operations.TopologyOperations - :ivar alerts: AlertsOperations operations - :vartype alerts: azure.mgmt.security.operations.AlertsOperations - :ivar settings: SettingsOperations operations - :vartype settings: azure.mgmt.security.operations.SettingsOperations - :ivar server_vulnerability_assessments_settings: - ServerVulnerabilityAssessmentsSettingsOperations operations - :vartype server_vulnerability_assessments_settings: - azure.mgmt.security.operations.ServerVulnerabilityAssessmentsSettingsOperations - :ivar api_collections: APICollectionsOperations operations - :vartype api_collections: azure.mgmt.security.operations.APICollectionsOperations - :ivar pricings: PricingsOperations operations - :vartype pricings: azure.mgmt.security.operations.PricingsOperations :ivar security_standards: SecurityStandardsOperations operations :vartype security_standards: azure.mgmt.security.operations.SecurityStandardsOperations :ivar standard_assignments: StandardAssignmentsOperations operations :vartype standard_assignments: azure.mgmt.security.operations.StandardAssignmentsOperations :ivar custom_recommendations: CustomRecommendationsOperations operations :vartype custom_recommendations: azure.mgmt.security.operations.CustomRecommendationsOperations + :ivar server_vulnerability_assessments_settings: + ServerVulnerabilityAssessmentsSettingsOperations operations + :vartype server_vulnerability_assessments_settings: + azure.mgmt.security.operations.ServerVulnerabilityAssessmentsSettingsOperations + :ivar settings: SettingsOperations operations + :vartype settings: azure.mgmt.security.operations.SettingsOperations + :ivar sql_vulnerability_assessment_baseline_rules: + SqlVulnerabilityAssessmentBaselineRulesOperations operations + :vartype sql_vulnerability_assessment_baseline_rules: + azure.mgmt.security.operations.SqlVulnerabilityAssessmentBaselineRulesOperations + :ivar sql_vulnerability_assessment_scan_results: + SqlVulnerabilityAssessmentScanResultsOperations operations + :vartype sql_vulnerability_assessment_scan_results: + azure.mgmt.security.operations.SqlVulnerabilityAssessmentScanResultsOperations :ivar standards: StandardsOperations operations :vartype standards: azure.mgmt.security.operations.StandardsOperations :ivar assignments: AssignmentsOperations operations :vartype assignments: azure.mgmt.security.operations.AssignmentsOperations + :ivar tasks: TasksOperations operations + :vartype tasks: azure.mgmt.security.operations.TasksOperations + :ivar api_collections: APICollectionsOperations operations + :vartype api_collections: azure.mgmt.security.operations.APICollectionsOperations + :ivar application: ApplicationOperations operations + :vartype application: azure.mgmt.security.operations.ApplicationOperations + :ivar security_connector_applications: SecurityConnectorApplicationsOperations operations + :vartype security_connector_applications: + azure.mgmt.security.operations.SecurityConnectorApplicationsOperations + :ivar assessments: AssessmentsOperations operations + :vartype assessments: azure.mgmt.security.operations.AssessmentsOperations + :ivar advanced_threat_protection: AdvancedThreatProtectionOperations operations + :vartype advanced_threat_protection: + azure.mgmt.security.operations.AdvancedThreatProtectionOperations :ivar defender_for_storage: DefenderForStorageOperations operations :vartype defender_for_storage: azure.mgmt.security.operations.DefenderForStorageOperations + :ivar iot_security_solution_analytics: IotSecuritySolutionAnalyticsOperations operations + :vartype iot_security_solution_analytics: + azure.mgmt.security.operations.IotSecuritySolutionAnalyticsOperations + :ivar iot_security_solution: IotSecuritySolutionOperations operations + :vartype iot_security_solution: azure.mgmt.security.operations.IotSecuritySolutionOperations + :ivar iot_security_solutions_analytics_aggregated_alert: + IotSecuritySolutionsAnalyticsAggregatedAlertOperations operations + :vartype iot_security_solutions_analytics_aggregated_alert: + azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations + :ivar iot_security_solutions_analytics_recommendation: + IotSecuritySolutionsAnalyticsRecommendationOperations operations + :vartype iot_security_solutions_analytics_recommendation: + azure.mgmt.security.operations.IotSecuritySolutionsAnalyticsRecommendationOperations + :ivar locations: LocationsOperations operations + :vartype locations: azure.mgmt.security.operations.LocationsOperations + :ivar operation_results: OperationResultsOperations operations + :vartype operation_results: azure.mgmt.security.operations.OperationResultsOperations + :ivar operation_statuses: OperationStatusesOperations operations + :vartype operation_statuses: azure.mgmt.security.operations.OperationStatusesOperations :ivar private_links: PrivateLinksOperations operations :vartype private_links: azure.mgmt.security.operations.PrivateLinksOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: azure.mgmt.security.operations.PrivateLinkResourcesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.security.operations.PrivateEndpointConnectionsOperations :ivar secure_scores: SecureScoresOperations operations :vartype secure_scores: azure.mgmt.security.operations.SecureScoresOperations :ivar secure_score_controls: SecureScoreControlsOperations operations @@ -287,11 +257,43 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- :ivar secure_score_control_definitions: SecureScoreControlDefinitionsOperations operations :vartype secure_score_control_definitions: azure.mgmt.security.operations.SecureScoreControlDefinitionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. + :ivar git_lab_subgroups: GitLabSubgroupsOperations operations + :vartype git_lab_subgroups: azure.mgmt.security.operations.GitLabSubgroupsOperations + :ivar dev_ops_operation_results: DevOpsOperationResultsOperations operations + :vartype dev_ops_operation_results: + azure.mgmt.security.operations.DevOpsOperationResultsOperations + :ivar azure_dev_ops_repos: AzureDevOpsReposOperations operations + :vartype azure_dev_ops_repos: azure.mgmt.security.operations.AzureDevOpsReposOperations + :ivar git_hub_repos: GitHubReposOperations operations + :vartype git_hub_repos: azure.mgmt.security.operations.GitHubReposOperations + :ivar git_hub_issues: GitHubIssuesOperations operations + :vartype git_hub_issues: azure.mgmt.security.operations.GitHubIssuesOperations + :ivar allowed_connections: AllowedConnectionsOperations operations + :vartype allowed_connections: azure.mgmt.security.operations.AllowedConnectionsOperations + :ivar server_vulnerability_assessment: ServerVulnerabilityAssessmentOperations operations + :vartype server_vulnerability_assessment: + azure.mgmt.security.operations.ServerVulnerabilityAssessmentOperations + :ivar topology: TopologyOperations operations + :vartype topology: azure.mgmt.security.operations.TopologyOperations + :ivar security_solutions_reference_data: SecuritySolutionsReferenceDataOperations operations + :vartype security_solutions_reference_data: + azure.mgmt.security.operations.SecuritySolutionsReferenceDataOperations + :ivar sensitivity_settings: SensitivitySettingsOperations operations + :vartype sensitivity_settings: azure.mgmt.security.operations.SensitivitySettingsOperations + :ivar sql_vulnerability_assessment_settings: SqlVulnerabilityAssessmentSettingsOperations + operations + :vartype sql_vulnerability_assessment_settings: + azure.mgmt.security.operations.SqlVulnerabilityAssessmentSettingsOperations + :ivar sql_vulnerability_assessment_scans: SqlVulnerabilityAssessmentScansOperations operations + :vartype sql_vulnerability_assessment_scans: + azure.mgmt.security.operations.SqlVulnerabilityAssessmentScansOperations + :ivar sub_assessments: SubAssessmentsOperations operations + :vartype sub_assessments: azure.mgmt.security.operations.SubAssessmentsOperations + :param credential: Credential used to authenticate requests to the service. Required. :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Azure subscription ID. Required. + :param subscription_id: The ID of the target subscription. The value must be an UUID. Required. :type subscription_id: str - :param base_url: Service URL. Default value is None. + :param base_url: Service host. Default value is None. :type base_url: str :keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is None. @@ -309,14 +311,16 @@ def __init__( cloud_setting: Optional["AzureClouds"] = None, **kwargs: Any ) -> None: + _endpoint = "{endpoint}" _cloud = cloud_setting or settings.current.azure_cloud # type: ignore _endpoints = get_arm_endpoints(_cloud) if not base_url: base_url = _endpoints["resource_manager"] credential_scopes = kwargs.pop("credential_scopes", _endpoints["credential_scopes"]) - self._config = SecurityCenterConfiguration( + self._config = SecurityManagementClientConfiguration( credential=credential, subscription_id=subscription_id, + base_url=cast(str, base_url), cloud_setting=cloud_setting, credential_scopes=credential_scopes, **kwargs @@ -340,195 +344,197 @@ def __init__( policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, self._config.http_logging_policy, ] - self._client: ARMPipelineClient = ARMPipelineClient(base_url=cast(str, base_url), policies=_policies, **kwargs) + self._client: ARMPipelineClient = ARMPipelineClient(base_url=cast(str, _endpoint), policies=_policies, **kwargs) - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) + self._serialize = Serializer() + self._deserialize = Deserializer() self._serialize.client_side_validation = False - self.locations = LocationsOperations(self._client, self._config, self._serialize, self._deserialize) - self.tasks = TasksOperations(self._client, self._config, self._serialize, self._deserialize) - self.auto_provisioning_settings = AutoProvisioningSettingsOperations( - self._client, self._config, self._serialize, self._deserialize - ) - self.compliances = CompliancesOperations(self._client, self._config, self._serialize, self._deserialize) - self.information_protection_policies = InformationProtectionPoliciesOperations( - self._client, self._config, self._serialize, self._deserialize - ) - self.workspace_settings = WorkspaceSettingsOperations( + self.alerts = AlertsOperations(self._client, self._config, self._serialize, self._deserialize) + self.alerts_suppression_rules = AlertsSuppressionRulesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.alerts_suppression_rules = AlertsSuppressionRulesOperations( + self.applications = ApplicationsOperations(self._client, self._config, self._serialize, self._deserialize) + self.security_connector_application = SecurityConnectorApplicationOperations( self._client, self._config, self._serialize, self._deserialize ) - self.regulatory_compliance_standards = RegulatoryComplianceStandardsOperations( + self.assessments_metadata = AssessmentsMetadataOperations( self._client, self._config, self._serialize, self._deserialize ) - self.regulatory_compliance_controls = RegulatoryComplianceControlsOperations( + self.automations = AutomationsOperations(self._client, self._config, self._serialize, self._deserialize) + self.security_contacts = SecurityContactsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.regulatory_compliance_assessments = RegulatoryComplianceAssessmentsOperations( + self.compliance_results = ComplianceResultsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.sub_assessments = SubAssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) - self.mde_onboardings = MdeOnboardingsOperations(self._client, self._config, self._serialize, self._deserialize) self.governance_assignments = GovernanceAssignmentsOperations( self._client, self._config, self._serialize, self._deserialize ) self.governance_rules = GovernanceRulesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.applications = ApplicationsOperations(self._client, self._config, self._serialize, self._deserialize) - self.application = ApplicationOperations(self._client, self._config, self._serialize, self._deserialize) - self.security_connector_applications = SecurityConnectorApplicationsOperations( + self.health_reports = HealthReportsOperations(self._client, self._config, self._serialize, self._deserialize) + self.device_security_groups = DeviceSecurityGroupsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.security_connector_application = SecurityConnectorApplicationOperations( + self.auto_provisioning_settings = AutoProvisioningSettingsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.security_operators = SecurityOperatorsOperations( + self.compliances = CompliancesOperations(self._client, self._config, self._serialize, self._deserialize) + self.information_protection_policies = InformationProtectionPoliciesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.sql_vulnerability_assessment_baseline_rules = SqlVulnerabilityAssessmentBaselineRulesOperations( + self.workspace_settings = WorkspaceSettingsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.sql_vulnerability_assessment_scans = SqlVulnerabilityAssessmentScansOperations( + self.mde_onboardings = MdeOnboardingsOperations(self._client, self._config, self._serialize, self._deserialize) + self.operations = Operations(self._client, self._config, self._serialize, self._deserialize) + self.pricings = PricingsOperations(self._client, self._config, self._serialize, self._deserialize) + self.private_link_resources = PrivateLinkResourcesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.sql_vulnerability_assessment_scan_results = SqlVulnerabilityAssessmentScanResultsOperations( + self.private_endpoint_connections = PrivateEndpointConnectionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.sql_vulnerability_assessment_settings = SqlVulnerabilityAssessmentSettingsOperations( + self.regulatory_compliance_standards = RegulatoryComplianceStandardsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.sensitivity_settings = SensitivitySettingsOperations( + self.regulatory_compliance_controls = RegulatoryComplianceControlsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.regulatory_compliance_assessments = RegulatoryComplianceAssessmentsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.health_reports = HealthReportsOperations(self._client, self._config, self._serialize, self._deserialize) - self.automations = AutomationsOperations(self._client, self._config, self._serialize, self._deserialize) self.security_connectors = SecurityConnectorsOperations( self._client, self._config, self._serialize, self._deserialize ) self.azure_dev_ops_orgs = AzureDevOpsOrgsOperations( self._client, self._config, self._serialize, self._deserialize ) + self.git_hub_owners = GitHubOwnersOperations(self._client, self._config, self._serialize, self._deserialize) + self.git_lab_groups = GitLabGroupsOperations(self._client, self._config, self._serialize, self._deserialize) + self.dev_ops_configurations = DevOpsConfigurationsOperations( + self._client, self._config, self._serialize, self._deserialize + ) self.azure_dev_ops_projects = AzureDevOpsProjectsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.azure_dev_ops_repos = AzureDevOpsReposOperations( + self.git_lab_projects = GitLabProjectsOperations(self._client, self._config, self._serialize, self._deserialize) + self.security_operators = SecurityOperatorsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.dev_ops_configurations = DevOpsConfigurationsOperations( + self.discovered_security_solutions = DiscoveredSecuritySolutionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.git_hub_owners = GitHubOwnersOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_hub_repos = GitHubReposOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_hub_issues = GitHubIssuesOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_lab_groups = GitLabGroupsOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_lab_subgroups = GitLabSubgroupsOperations( + self.external_security_solutions = ExternalSecuritySolutionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.git_lab_projects = GitLabProjectsOperations(self._client, self._config, self._serialize, self._deserialize) - self.dev_ops_operation_results = DevOpsOperationResultsOperations( + self.jit_network_access_policies = JitNetworkAccessPoliciesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.operations = Operations(self._client, self._config, self._serialize, self._deserialize) - self.operation_results = OperationResultsOperations( + self.security_solutions = SecuritySolutionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.operation_statuses = OperationStatusesOperations( + self.security_standards = SecurityStandardsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.assessments_metadata = AssessmentsMetadataOperations( + self.standard_assignments = StandardAssignmentsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.assessments = AssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) - self.compliance_results = ComplianceResultsOperations( + self.custom_recommendations = CustomRecommendationsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.advanced_threat_protection = AdvancedThreatProtectionOperations( + self.server_vulnerability_assessments_settings = ServerVulnerabilityAssessmentsSettingsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.device_security_groups = DeviceSecurityGroupsOperations( + self.settings = SettingsOperations(self._client, self._config, self._serialize, self._deserialize) + self.sql_vulnerability_assessment_baseline_rules = SqlVulnerabilityAssessmentBaselineRulesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.iot_security_solution_analytics = IotSecuritySolutionAnalyticsOperations( + self.sql_vulnerability_assessment_scan_results = SqlVulnerabilityAssessmentScanResultsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.iot_security_solutions_analytics_aggregated_alert = IotSecuritySolutionsAnalyticsAggregatedAlertOperations( + self.standards = StandardsOperations(self._client, self._config, self._serialize, self._deserialize) + self.assignments = AssignmentsOperations(self._client, self._config, self._serialize, self._deserialize) + self.tasks = TasksOperations(self._client, self._config, self._serialize, self._deserialize) + self.api_collections = APICollectionsOperations(self._client, self._config, self._serialize, self._deserialize) + self.application = ApplicationOperations(self._client, self._config, self._serialize, self._deserialize) + self.security_connector_applications = SecurityConnectorApplicationsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.iot_security_solutions_analytics_recommendation = IotSecuritySolutionsAnalyticsRecommendationOperations( + self.assessments = AssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) + self.advanced_threat_protection = AdvancedThreatProtectionOperations( self._client, self._config, self._serialize, self._deserialize ) - self.iot_security_solution = IotSecuritySolutionOperations( + self.defender_for_storage = DefenderForStorageOperations( self._client, self._config, self._serialize, self._deserialize ) - self.allowed_connections = AllowedConnectionsOperations( + self.iot_security_solution_analytics = IotSecuritySolutionAnalyticsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.discovered_security_solutions = DiscoveredSecuritySolutionsOperations( + self.iot_security_solution = IotSecuritySolutionOperations( self._client, self._config, self._serialize, self._deserialize ) - self.external_security_solutions = ExternalSecuritySolutionsOperations( + self.iot_security_solutions_analytics_aggregated_alert = IotSecuritySolutionsAnalyticsAggregatedAlertOperations( self._client, self._config, self._serialize, self._deserialize ) - self.jit_network_access_policies = JitNetworkAccessPoliciesOperations( + self.iot_security_solutions_analytics_recommendation = IotSecuritySolutionsAnalyticsRecommendationOperations( self._client, self._config, self._serialize, self._deserialize ) - self.security_solutions = SecuritySolutionsOperations( + self.locations = LocationsOperations(self._client, self._config, self._serialize, self._deserialize) + self.operation_results = OperationResultsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.security_solutions_reference_data = SecuritySolutionsReferenceDataOperations( + self.operation_statuses = OperationStatusesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.server_vulnerability_assessment = ServerVulnerabilityAssessmentOperations( + self.private_links = PrivateLinksOperations(self._client, self._config, self._serialize, self._deserialize) + self.secure_scores = SecureScoresOperations(self._client, self._config, self._serialize, self._deserialize) + self.secure_score_controls = SecureScoreControlsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.topology = TopologyOperations(self._client, self._config, self._serialize, self._deserialize) - self.alerts = AlertsOperations(self._client, self._config, self._serialize, self._deserialize) - self.settings = SettingsOperations(self._client, self._config, self._serialize, self._deserialize) - self.server_vulnerability_assessments_settings = ServerVulnerabilityAssessmentsSettingsOperations( + self.secure_score_control_definitions = SecureScoreControlDefinitionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.api_collections = APICollectionsOperations(self._client, self._config, self._serialize, self._deserialize) - self.pricings = PricingsOperations(self._client, self._config, self._serialize, self._deserialize) - self.security_standards = SecurityStandardsOperations( + self.git_lab_subgroups = GitLabSubgroupsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.standard_assignments = StandardAssignmentsOperations( + self.dev_ops_operation_results = DevOpsOperationResultsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.custom_recommendations = CustomRecommendationsOperations( + self.azure_dev_ops_repos = AzureDevOpsReposOperations( self._client, self._config, self._serialize, self._deserialize ) - self.standards = StandardsOperations(self._client, self._config, self._serialize, self._deserialize) - self.assignments = AssignmentsOperations(self._client, self._config, self._serialize, self._deserialize) - self.defender_for_storage = DefenderForStorageOperations( + self.git_hub_repos = GitHubReposOperations(self._client, self._config, self._serialize, self._deserialize) + self.git_hub_issues = GitHubIssuesOperations(self._client, self._config, self._serialize, self._deserialize) + self.allowed_connections = AllowedConnectionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.private_links = PrivateLinksOperations(self._client, self._config, self._serialize, self._deserialize) - self.private_link_resources = PrivateLinkResourcesOperations( + self.server_vulnerability_assessment = ServerVulnerabilityAssessmentOperations( self._client, self._config, self._serialize, self._deserialize ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( + self.topology = TopologyOperations(self._client, self._config, self._serialize, self._deserialize) + self.security_solutions_reference_data = SecuritySolutionsReferenceDataOperations( self._client, self._config, self._serialize, self._deserialize ) - self.secure_scores = SecureScoresOperations(self._client, self._config, self._serialize, self._deserialize) - self.secure_score_controls = SecureScoreControlsOperations( + self.sensitivity_settings = SensitivitySettingsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.secure_score_control_definitions = SecureScoreControlDefinitionsOperations( + self.sql_vulnerability_assessment_settings = SqlVulnerabilityAssessmentSettingsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.sql_vulnerability_assessment_scans = SqlVulnerabilityAssessmentScansOperations( self._client, self._config, self._serialize, self._deserialize ) + self.sub_assessments = SubAssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) - def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse: + def send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse: """Runs the network request through the client's chained policies. >>> from azure.core.rest import HttpRequest >>> request = HttpRequest("GET", "https://www.example.org/") - >>> response = client._send_request(request) + >>> response = client.send_request(request) For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request @@ -541,7 +547,11 @@ def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: """ request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + request_copy.url = self._client.format_url(request_copy.url, **path_format_arguments) return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore def close(self) -> None: diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/_configuration.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/_configuration.py index 0a2963f067ea..3bbc81adfcdf 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/_configuration.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/_configuration.py @@ -2,7 +2,7 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- @@ -18,16 +18,18 @@ from azure.core.credentials import TokenCredential -class SecurityCenterConfiguration: # pylint: disable=too-many-instance-attributes - """Configuration for SecurityCenter. +class SecurityManagementClientConfiguration: # pylint: disable=too-many-instance-attributes + """Configuration for SecurityManagementClient. Note that all parameters used to create this instance are saved as instance attributes. - :param credential: Credential needed for the client to connect to Azure. Required. + :param credential: Credential used to authenticate requests to the service. Required. :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Azure subscription ID. Required. + :param subscription_id: The ID of the target subscription. The value must be an UUID. Required. :type subscription_id: str + :param base_url: Service host. Default value is "https://management.azure.com". + :type base_url: str :param cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is None. :type cloud_setting: ~azure.core.AzureClouds @@ -37,6 +39,7 @@ def __init__( self, credential: "TokenCredential", subscription_id: str, + base_url: str = "https://management.azure.com", cloud_setting: Optional["AzureClouds"] = None, **kwargs: Any ) -> None: @@ -47,6 +50,7 @@ def __init__( self.credential = credential self.subscription_id = subscription_id + self.base_url = base_url self.cloud_setting = cloud_setting self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) kwargs.setdefault("sdk_moniker", "mgmt-security/{}".format(VERSION)) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/_patch.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/_patch.py index 8bcb627aa475..87676c65a8f0 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/_patch.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/_patch.py @@ -7,9 +7,9 @@ Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize """ -from typing import List -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level + +__all__: list[str] = [] # Add all objects you want publicly available to users at this package level def patch_sdk(): diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/__init__.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/__init__.py index 0af9b28f6607..8026245c2abc 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/__init__.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/__init__.py @@ -1,6 +1,6 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/model_base.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/model_base.py new file mode 100644 index 000000000000..db24930fdca9 --- /dev/null +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/model_base.py @@ -0,0 +1,1441 @@ +# pylint: disable=line-too-long,useless-suppression,too-many-lines +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +# pylint: disable=protected-access, broad-except + +import copy +import calendar +import decimal +import functools +import sys +import logging +import base64 +import re +import typing +import enum +import email.utils +from datetime import datetime, date, time, timedelta, timezone +from json import JSONEncoder +import xml.etree.ElementTree as ET +from collections.abc import MutableMapping +from typing_extensions import Self +import isodate +from azure.core.exceptions import DeserializationError +from azure.core import CaseInsensitiveEnumMeta +from azure.core.pipeline import PipelineResponse +from azure.core.serialization import _Null +from azure.core.rest import HttpResponse + +_LOGGER = logging.getLogger(__name__) + +__all__ = ["SdkJSONEncoder", "Model", "rest_field", "rest_discriminator"] + +TZ_UTC = timezone.utc +_T = typing.TypeVar("_T") +_NONE_TYPE = type(None) + + +def _timedelta_as_isostr(td: timedelta) -> str: + """Converts a datetime.timedelta object into an ISO 8601 formatted string, e.g. 'P4DT12H30M05S' + + Function adapted from the Tin Can Python project: https://github.com/RusticiSoftware/TinCanPython + + :param timedelta td: The timedelta to convert + :rtype: str + :return: ISO8601 version of this timedelta + """ + + # Split seconds to larger units + seconds = td.total_seconds() + minutes, seconds = divmod(seconds, 60) + hours, minutes = divmod(minutes, 60) + days, hours = divmod(hours, 24) + + days, hours, minutes = list(map(int, (days, hours, minutes))) + seconds = round(seconds, 6) + + # Build date + date_str = "" + if days: + date_str = "%sD" % days + + if hours or minutes or seconds: + # Build time + time_str = "T" + + # Hours + bigger_exists = date_str or hours + if bigger_exists: + time_str += "{:02}H".format(hours) + + # Minutes + bigger_exists = bigger_exists or minutes + if bigger_exists: + time_str += "{:02}M".format(minutes) + + # Seconds + try: + if seconds.is_integer(): + seconds_string = "{:02}".format(int(seconds)) + else: + # 9 chars long w/ leading 0, 6 digits after decimal + seconds_string = "%09.6f" % seconds + # Remove trailing zeros + seconds_string = seconds_string.rstrip("0") + except AttributeError: # int.is_integer() raises + seconds_string = "{:02}".format(seconds) + + time_str += "{}S".format(seconds_string) + else: + time_str = "" + + return "P" + date_str + time_str + + +def _serialize_bytes(o, format: typing.Optional[str] = None) -> str: + encoded = base64.b64encode(o).decode() + if format == "base64url": + return encoded.strip("=").replace("+", "-").replace("/", "_") + return encoded + + +def _serialize_datetime(o, format: typing.Optional[str] = None): + if hasattr(o, "year") and hasattr(o, "hour"): + if format == "rfc7231": + return email.utils.format_datetime(o, usegmt=True) + if format == "unix-timestamp": + return int(calendar.timegm(o.utctimetuple())) + + # astimezone() fails for naive times in Python 2.7, so make make sure o is aware (tzinfo is set) + if not o.tzinfo: + iso_formatted = o.replace(tzinfo=TZ_UTC).isoformat() + else: + iso_formatted = o.astimezone(TZ_UTC).isoformat() + # Replace the trailing "+00:00" UTC offset with "Z" (RFC 3339: https://www.ietf.org/rfc/rfc3339.txt) + return iso_formatted.replace("+00:00", "Z") + # Next try datetime.date or datetime.time + return o.isoformat() + + +def _is_readonly(p): + try: + return p._visibility == ["read"] + except AttributeError: + return False + + +class SdkJSONEncoder(JSONEncoder): + """A JSON encoder that's capable of serializing datetime objects and bytes.""" + + def __init__(self, *args, exclude_readonly: bool = False, format: typing.Optional[str] = None, **kwargs): + super().__init__(*args, **kwargs) + self.exclude_readonly = exclude_readonly + self.format = format + + def default(self, o): # pylint: disable=too-many-return-statements + if _is_model(o): + if self.exclude_readonly: + readonly_props = [p._rest_name for p in o._attr_to_rest_field.values() if _is_readonly(p)] + return {k: v for k, v in o.items() if k not in readonly_props} + return dict(o.items()) + try: + return super(SdkJSONEncoder, self).default(o) + except TypeError: + if isinstance(o, _Null): + return None + if isinstance(o, decimal.Decimal): + return float(o) + if isinstance(o, (bytes, bytearray)): + return _serialize_bytes(o, self.format) + try: + # First try datetime.datetime + return _serialize_datetime(o, self.format) + except AttributeError: + pass + # Last, try datetime.timedelta + try: + return _timedelta_as_isostr(o) + except AttributeError: + # This will be raised when it hits value.total_seconds in the method above + pass + return super(SdkJSONEncoder, self).default(o) + + +_VALID_DATE = re.compile(r"\d{4}[-]\d{2}[-]\d{2}T\d{2}:\d{2}:\d{2}" + r"\.?\d*Z?[-+]?[\d{2}]?:?[\d{2}]?") +_VALID_RFC7231 = re.compile( + r"(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s\d{2}\s" + r"(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s\d{4}\s\d{2}:\d{2}:\d{2}\sGMT" +) + +_ARRAY_ENCODE_MAPPING = { + "pipeDelimited": "|", + "spaceDelimited": " ", + "commaDelimited": ",", + "newlineDelimited": "\n", +} + + +def _deserialize_array_encoded(delimit: str, attr): + if isinstance(attr, str): + if attr == "": + return [] + return attr.split(delimit) + return attr + + +def _deserialize_datetime(attr: typing.Union[str, datetime]) -> datetime: + """Deserialize ISO-8601 formatted string into Datetime object. + + :param str attr: response string to be deserialized. + :rtype: ~datetime.datetime + :returns: The datetime object from that input + """ + if isinstance(attr, datetime): + # i'm already deserialized + return attr + attr = attr.upper() + match = _VALID_DATE.match(attr) + if not match: + raise ValueError("Invalid datetime string: " + attr) + + check_decimal = attr.split(".") + if len(check_decimal) > 1: + decimal_str = "" + for digit in check_decimal[1]: + if digit.isdigit(): + decimal_str += digit + else: + break + if len(decimal_str) > 6: + attr = attr.replace(decimal_str, decimal_str[0:6]) + + date_obj = isodate.parse_datetime(attr) + test_utc = date_obj.utctimetuple() + if test_utc.tm_year > 9999 or test_utc.tm_year < 1: + raise OverflowError("Hit max or min date") + return date_obj # type: ignore[no-any-return] + + +def _deserialize_datetime_rfc7231(attr: typing.Union[str, datetime]) -> datetime: + """Deserialize RFC7231 formatted string into Datetime object. + + :param str attr: response string to be deserialized. + :rtype: ~datetime.datetime + :returns: The datetime object from that input + """ + if isinstance(attr, datetime): + # i'm already deserialized + return attr + match = _VALID_RFC7231.match(attr) + if not match: + raise ValueError("Invalid datetime string: " + attr) + + return email.utils.parsedate_to_datetime(attr) + + +def _deserialize_datetime_unix_timestamp(attr: typing.Union[float, datetime]) -> datetime: + """Deserialize unix timestamp into Datetime object. + + :param str attr: response string to be deserialized. + :rtype: ~datetime.datetime + :returns: The datetime object from that input + """ + if isinstance(attr, datetime): + # i'm already deserialized + return attr + return datetime.fromtimestamp(attr, TZ_UTC) + + +def _deserialize_date(attr: typing.Union[str, date]) -> date: + """Deserialize ISO-8601 formatted string into Date object. + :param str attr: response string to be deserialized. + :rtype: date + :returns: The date object from that input + """ + # This must NOT use defaultmonth/defaultday. Using None ensure this raises an exception. + if isinstance(attr, date): + return attr + return isodate.parse_date(attr, defaultmonth=None, defaultday=None) # type: ignore + + +def _deserialize_time(attr: typing.Union[str, time]) -> time: + """Deserialize ISO-8601 formatted string into time object. + + :param str attr: response string to be deserialized. + :rtype: datetime.time + :returns: The time object from that input + """ + if isinstance(attr, time): + return attr + return isodate.parse_time(attr) # type: ignore[no-any-return] + + +def _deserialize_bytes(attr): + if isinstance(attr, (bytes, bytearray)): + return attr + return bytes(base64.b64decode(attr)) + + +def _deserialize_bytes_base64(attr): + if isinstance(attr, (bytes, bytearray)): + return attr + padding = "=" * (3 - (len(attr) + 3) % 4) # type: ignore + attr = attr + padding # type: ignore + encoded = attr.replace("-", "+").replace("_", "/") + return bytes(base64.b64decode(encoded)) + + +def _deserialize_duration(attr): + if isinstance(attr, timedelta): + return attr + return isodate.parse_duration(attr) + + +def _deserialize_decimal(attr): + if isinstance(attr, decimal.Decimal): + return attr + return decimal.Decimal(str(attr)) + + +def _deserialize_int_as_str(attr): + if isinstance(attr, int): + return attr + return int(attr) + + +_DESERIALIZE_MAPPING = { + datetime: _deserialize_datetime, + date: _deserialize_date, + time: _deserialize_time, + bytes: _deserialize_bytes, + bytearray: _deserialize_bytes, + timedelta: _deserialize_duration, + typing.Any: lambda x: x, + decimal.Decimal: _deserialize_decimal, +} + +_DESERIALIZE_MAPPING_WITHFORMAT = { + "rfc3339": _deserialize_datetime, + "rfc7231": _deserialize_datetime_rfc7231, + "unix-timestamp": _deserialize_datetime_unix_timestamp, + "base64": _deserialize_bytes, + "base64url": _deserialize_bytes_base64, +} + + +def get_deserializer(annotation: typing.Any, rf: typing.Optional["_RestField"] = None): + if annotation is int and rf and rf._format == "str": + return _deserialize_int_as_str + if annotation is str and rf and rf._format in _ARRAY_ENCODE_MAPPING: + return functools.partial(_deserialize_array_encoded, _ARRAY_ENCODE_MAPPING[rf._format]) + if rf and rf._format: + return _DESERIALIZE_MAPPING_WITHFORMAT.get(rf._format) + return _DESERIALIZE_MAPPING.get(annotation) # pyright: ignore + + +def _get_type_alias_type(module_name: str, alias_name: str): + types = { + k: v + for k, v in sys.modules[module_name].__dict__.items() + if isinstance(v, typing._GenericAlias) # type: ignore + } + if alias_name not in types: + return alias_name + return types[alias_name] + + +def _get_model(module_name: str, model_name: str): + models = {k: v for k, v in sys.modules[module_name].__dict__.items() if isinstance(v, type)} + module_end = module_name.rsplit(".", 1)[0] + models.update({k: v for k, v in sys.modules[module_end].__dict__.items() if isinstance(v, type)}) + if isinstance(model_name, str): + model_name = model_name.split(".")[-1] + if model_name not in models: + return model_name + return models[model_name] + + +_UNSET = object() + + +class _MyMutableMapping(MutableMapping[str, typing.Any]): + def __init__(self, data: dict[str, typing.Any]) -> None: + self._data = data + + def __contains__(self, key: typing.Any) -> bool: + return key in self._data + + def __getitem__(self, key: str) -> typing.Any: + # If this key has been deserialized (for mutable types), we need to handle serialization + if hasattr(self, "_attr_to_rest_field"): + cache_attr = f"_deserialized_{key}" + if hasattr(self, cache_attr): + rf = _get_rest_field(getattr(self, "_attr_to_rest_field"), key) + if rf: + value = self._data.get(key) + if isinstance(value, (dict, list, set)): + # For mutable types, serialize and return + # But also update _data with serialized form and clear flag + # so mutations via this returned value affect _data + serialized = _serialize(value, rf._format) + # If serialized form is same type (no transformation needed), + # return _data directly so mutations work + if isinstance(serialized, type(value)) and serialized == value: + return self._data.get(key) + # Otherwise return serialized copy and clear flag + try: + object.__delattr__(self, cache_attr) + except AttributeError: + pass + # Store serialized form back + self._data[key] = serialized + return serialized + return self._data.__getitem__(key) + + def __setitem__(self, key: str, value: typing.Any) -> None: + # Clear any cached deserialized value when setting through dictionary access + cache_attr = f"_deserialized_{key}" + try: + object.__delattr__(self, cache_attr) + except AttributeError: + pass + self._data.__setitem__(key, value) + + def __delitem__(self, key: str) -> None: + self._data.__delitem__(key) + + def __iter__(self) -> typing.Iterator[typing.Any]: + return self._data.__iter__() + + def __len__(self) -> int: + return self._data.__len__() + + def __ne__(self, other: typing.Any) -> bool: + return not self.__eq__(other) + + def keys(self) -> typing.KeysView[str]: + """ + :returns: a set-like object providing a view on D's keys + :rtype: ~typing.KeysView + """ + return self._data.keys() + + def values(self) -> typing.ValuesView[typing.Any]: + """ + :returns: an object providing a view on D's values + :rtype: ~typing.ValuesView + """ + return self._data.values() + + def items(self) -> typing.ItemsView[str, typing.Any]: + """ + :returns: set-like object providing a view on D's items + :rtype: ~typing.ItemsView + """ + return self._data.items() + + def get(self, key: str, default: typing.Any = None) -> typing.Any: + """ + Get the value for key if key is in the dictionary, else default. + :param str key: The key to look up. + :param any default: The value to return if key is not in the dictionary. Defaults to None + :returns: D[k] if k in D, else d. + :rtype: any + """ + try: + return self[key] + except KeyError: + return default + + @typing.overload + def pop(self, key: str) -> typing.Any: ... # pylint: disable=arguments-differ + + @typing.overload + def pop(self, key: str, default: _T) -> _T: ... # pylint: disable=signature-differs + + @typing.overload + def pop(self, key: str, default: typing.Any) -> typing.Any: ... # pylint: disable=signature-differs + + def pop(self, key: str, default: typing.Any = _UNSET) -> typing.Any: + """ + Removes specified key and return the corresponding value. + :param str key: The key to pop. + :param any default: The value to return if key is not in the dictionary + :returns: The value corresponding to the key. + :rtype: any + :raises KeyError: If key is not found and default is not given. + """ + if default is _UNSET: + return self._data.pop(key) + return self._data.pop(key, default) + + def popitem(self) -> tuple[str, typing.Any]: + """ + Removes and returns some (key, value) pair + :returns: The (key, value) pair. + :rtype: tuple + :raises KeyError: if D is empty. + """ + return self._data.popitem() + + def clear(self) -> None: + """ + Remove all items from D. + """ + self._data.clear() + + def update(self, *args: typing.Any, **kwargs: typing.Any) -> None: # pylint: disable=arguments-differ + """ + Updates D from mapping/iterable E and F. + :param any args: Either a mapping object or an iterable of key-value pairs. + """ + self._data.update(*args, **kwargs) + + @typing.overload + def setdefault(self, key: str, default: None = None) -> None: ... + + @typing.overload + def setdefault(self, key: str, default: typing.Any) -> typing.Any: ... # pylint: disable=signature-differs + + def setdefault(self, key: str, default: typing.Any = _UNSET) -> typing.Any: + """ + Same as calling D.get(k, d), and setting D[k]=d if k not found + :param str key: The key to look up. + :param any default: The value to set if key is not in the dictionary + :returns: D[k] if k in D, else d. + :rtype: any + """ + if default is _UNSET: + return self._data.setdefault(key) + return self._data.setdefault(key, default) + + def __eq__(self, other: typing.Any) -> bool: + if isinstance(other, _MyMutableMapping): + return self._data == other._data + try: + other_model = self.__class__(other) + except Exception: + return False + return self._data == other_model._data + + def __repr__(self) -> str: + return str(self._data) + + +def _is_model(obj: typing.Any) -> bool: + return getattr(obj, "_is_model", False) + + +def _serialize(o, format: typing.Optional[str] = None): # pylint: disable=too-many-return-statements + if isinstance(o, list): + if format in _ARRAY_ENCODE_MAPPING and all(isinstance(x, str) for x in o): + return _ARRAY_ENCODE_MAPPING[format].join(o) + return [_serialize(x, format) for x in o] + if isinstance(o, dict): + return {k: _serialize(v, format) for k, v in o.items()} + if isinstance(o, set): + return {_serialize(x, format) for x in o} + if isinstance(o, tuple): + return tuple(_serialize(x, format) for x in o) + if isinstance(o, (bytes, bytearray)): + return _serialize_bytes(o, format) + if isinstance(o, decimal.Decimal): + return float(o) + if isinstance(o, enum.Enum): + return o.value + if isinstance(o, int): + if format == "str": + return str(o) + return o + try: + # First try datetime.datetime + return _serialize_datetime(o, format) + except AttributeError: + pass + # Last, try datetime.timedelta + try: + return _timedelta_as_isostr(o) + except AttributeError: + # This will be raised when it hits value.total_seconds in the method above + pass + return o + + +def _get_rest_field(attr_to_rest_field: dict[str, "_RestField"], rest_name: str) -> typing.Optional["_RestField"]: + try: + return next(rf for rf in attr_to_rest_field.values() if rf._rest_name == rest_name) + except StopIteration: + return None + + +def _create_value(rf: typing.Optional["_RestField"], value: typing.Any) -> typing.Any: + if not rf: + return _serialize(value, None) + if rf._is_multipart_file_input: + return value + if rf._is_model: + return _deserialize(rf._type, value) + if isinstance(value, ET.Element): + value = _deserialize(rf._type, value) + return _serialize(value, rf._format) + + +class Model(_MyMutableMapping): + _is_model = True + # label whether current class's _attr_to_rest_field has been calculated + # could not see _attr_to_rest_field directly because subclass inherits it from parent class + _calculated: set[str] = set() + + def __init__(self, *args: typing.Any, **kwargs: typing.Any) -> None: + class_name = self.__class__.__name__ + if len(args) > 1: + raise TypeError(f"{class_name}.__init__() takes 2 positional arguments but {len(args) + 1} were given") + dict_to_pass = { + rest_field._rest_name: rest_field._default + for rest_field in self._attr_to_rest_field.values() + if rest_field._default is not _UNSET + } + if args: + if isinstance(args[0], ET.Element): + dict_to_pass.update(self._init_from_xml(args[0])) + else: + dict_to_pass.update( + {k: _create_value(_get_rest_field(self._attr_to_rest_field, k), v) for k, v in args[0].items()} + ) + else: + non_attr_kwargs = [k for k in kwargs if k not in self._attr_to_rest_field] + if non_attr_kwargs: + # actual type errors only throw the first wrong keyword arg they see, so following that. + raise TypeError(f"{class_name}.__init__() got an unexpected keyword argument '{non_attr_kwargs[0]}'") + dict_to_pass.update( + { + self._attr_to_rest_field[k]._rest_name: _create_value(self._attr_to_rest_field[k], v) + for k, v in kwargs.items() + if v is not None + } + ) + super().__init__(dict_to_pass) + + def _init_from_xml(self, element: ET.Element) -> dict[str, typing.Any]: + """Deserialize an XML element into a dict mapping rest field names to values. + + :param ET.Element element: The XML element to deserialize from. + :returns: A dictionary of rest_name to deserialized value pairs. + :rtype: dict + """ + result: dict[str, typing.Any] = {} + model_meta = getattr(self, "_xml", {}) + existed_attr_keys: list[str] = [] + + for rf in self._attr_to_rest_field.values(): + prop_meta = getattr(rf, "_xml", {}) + xml_name = prop_meta.get("name", rf._rest_name) + xml_ns = _resolve_xml_ns(prop_meta, model_meta) + if xml_ns: + xml_name = "{" + xml_ns + "}" + xml_name + + # attribute + if prop_meta.get("attribute", False) and element.get(xml_name) is not None: + existed_attr_keys.append(xml_name) + result[rf._rest_name] = _deserialize(rf._type, element.get(xml_name)) + continue + + # unwrapped element is array + if prop_meta.get("unwrapped", False): + # unwrapped array could either use prop items meta/prop meta + _items_name = prop_meta.get("itemsName") + if _items_name: + xml_name = _items_name + _items_ns = prop_meta.get("itemsNs") + if _items_ns is not None: + xml_ns = _items_ns + if xml_ns: + xml_name = "{" + xml_ns + "}" + xml_name + items = element.findall(xml_name) # pyright: ignore + if len(items) > 0: + existed_attr_keys.append(xml_name) + result[rf._rest_name] = _deserialize(rf._type, items) + elif not rf._is_optional: + existed_attr_keys.append(xml_name) + result[rf._rest_name] = [] + continue + + # text element is primitive type + if prop_meta.get("text", False): + if element.text is not None: + result[rf._rest_name] = _deserialize(rf._type, element.text) + continue + + # wrapped element could be normal property or array, it should only have one element + item = element.find(xml_name) + if item is not None: + existed_attr_keys.append(xml_name) + result[rf._rest_name] = _deserialize(rf._type, item) + + # rest thing is additional properties + for e in element: + if e.tag not in existed_attr_keys: + result[e.tag] = _convert_element(e) + + return result + + def copy(self) -> "Model": + return Model(self.__dict__) + + def __new__(cls, *args: typing.Any, **kwargs: typing.Any) -> Self: + if f"{cls.__module__}.{cls.__qualname__}" not in cls._calculated: + # we know the last nine classes in mro are going to be 'Model', '_MyMutableMapping', 'MutableMapping', + # 'Mapping', 'Collection', 'Sized', 'Iterable', 'Container' and 'object' + mros = cls.__mro__[:-9][::-1] # ignore parents, and reverse the mro order + attr_to_rest_field: dict[str, _RestField] = { # map attribute name to rest_field property + k: v for mro_class in mros for k, v in mro_class.__dict__.items() if k[0] != "_" and hasattr(v, "_type") + } + annotations = { + k: v + for mro_class in mros + if hasattr(mro_class, "__annotations__") + for k, v in mro_class.__annotations__.items() + } + for attr, rf in attr_to_rest_field.items(): + rf._module = cls.__module__ + if not rf._type: + rf._type = rf._get_deserialize_callable_from_annotation(annotations.get(attr, None)) + if not rf._rest_name_input: + rf._rest_name_input = attr + cls._attr_to_rest_field: dict[str, _RestField] = dict(attr_to_rest_field.items()) + cls._calculated.add(f"{cls.__module__}.{cls.__qualname__}") + + return super().__new__(cls) + + def __init_subclass__(cls, discriminator: typing.Optional[str] = None) -> None: + for base in cls.__bases__: + if hasattr(base, "__mapping__"): + base.__mapping__[discriminator or cls.__name__] = cls # type: ignore + + @classmethod + def _get_discriminator(cls, exist_discriminators) -> typing.Optional["_RestField"]: + for v in cls.__dict__.values(): + if isinstance(v, _RestField) and v._is_discriminator and v._rest_name not in exist_discriminators: + return v + return None + + @classmethod + def _deserialize(cls, data, exist_discriminators): + if not hasattr(cls, "__mapping__"): + return cls(data) + discriminator = cls._get_discriminator(exist_discriminators) + if discriminator is None: + return cls(data) + exist_discriminators.append(discriminator._rest_name) + if isinstance(data, ET.Element): + model_meta = getattr(cls, "_xml", {}) + prop_meta = getattr(discriminator, "_xml", {}) + xml_name = prop_meta.get("name", discriminator._rest_name) + xml_ns = _resolve_xml_ns(prop_meta, model_meta) + if xml_ns: + xml_name = "{" + xml_ns + "}" + xml_name + + if data.get(xml_name) is not None: + discriminator_value = data.get(xml_name) + else: + discriminator_value = data.find(xml_name).text # pyright: ignore + else: + discriminator_value = data.get(discriminator._rest_name) + mapped_cls = cls.__mapping__.get(discriminator_value, cls) # pyright: ignore # pylint: disable=no-member + return mapped_cls._deserialize(data, exist_discriminators) + + def as_dict(self, *, exclude_readonly: bool = False) -> dict[str, typing.Any]: + """Return a dict that can be turned into json using json.dump. + + :keyword bool exclude_readonly: Whether to remove the readonly properties. + :returns: A dict JSON compatible object + :rtype: dict + """ + + result = {} + readonly_props = [] + if exclude_readonly: + readonly_props = [p._rest_name for p in self._attr_to_rest_field.values() if _is_readonly(p)] + for k, v in self.items(): + if exclude_readonly and k in readonly_props: # pyright: ignore + continue + is_multipart_file_input = False + try: + is_multipart_file_input = next( + rf for rf in self._attr_to_rest_field.values() if rf._rest_name == k + )._is_multipart_file_input + except StopIteration: + pass + result[k] = v if is_multipart_file_input else Model._as_dict_value(v, exclude_readonly=exclude_readonly) + return result + + @staticmethod + def _as_dict_value(v: typing.Any, exclude_readonly: bool = False) -> typing.Any: + if v is None or isinstance(v, _Null): + return None + if isinstance(v, (list, tuple, set)): + return type(v)(Model._as_dict_value(x, exclude_readonly=exclude_readonly) for x in v) + if isinstance(v, dict): + return {dk: Model._as_dict_value(dv, exclude_readonly=exclude_readonly) for dk, dv in v.items()} + return v.as_dict(exclude_readonly=exclude_readonly) if hasattr(v, "as_dict") else v + + +def _deserialize_model(model_deserializer: typing.Optional[typing.Callable], obj): + if _is_model(obj): + return obj + return _deserialize(model_deserializer, obj) + + +def _deserialize_with_optional(if_obj_deserializer: typing.Optional[typing.Callable], obj): + if obj is None: + return obj + return _deserialize_with_callable(if_obj_deserializer, obj) + + +def _deserialize_with_union(deserializers, obj): + for deserializer in deserializers: + try: + return _deserialize(deserializer, obj) + except DeserializationError: + pass + raise DeserializationError() + + +def _deserialize_dict( + value_deserializer: typing.Optional[typing.Callable], + module: typing.Optional[str], + obj: dict[typing.Any, typing.Any], +): + if obj is None: + return obj + if isinstance(obj, ET.Element): + obj = {child.tag: child for child in obj} + return {k: _deserialize(value_deserializer, v, module) for k, v in obj.items()} + + +def _deserialize_multiple_sequence( + entry_deserializers: list[typing.Optional[typing.Callable]], + module: typing.Optional[str], + obj, +): + if obj is None: + return obj + return type(obj)(_deserialize(deserializer, entry, module) for entry, deserializer in zip(obj, entry_deserializers)) + + +def _is_array_encoded_deserializer(deserializer: functools.partial) -> bool: + return ( + isinstance(deserializer, functools.partial) + and isinstance(deserializer.args[0], functools.partial) + and deserializer.args[0].func == _deserialize_array_encoded # pylint: disable=comparison-with-callable + ) + + +def _deserialize_sequence( + deserializer: typing.Optional[typing.Callable], + module: typing.Optional[str], + obj, +): + if obj is None: + return obj + if isinstance(obj, ET.Element): + obj = list(obj) + + # encoded string may be deserialized to sequence + if isinstance(obj, str) and isinstance(deserializer, functools.partial): + # for list[str] + if _is_array_encoded_deserializer(deserializer): + return deserializer(obj) + + # for list[Union[...]] + if isinstance(deserializer.args[0], list): + for sub_deserializer in deserializer.args[0]: + if _is_array_encoded_deserializer(sub_deserializer): + return sub_deserializer(obj) + + return type(obj)(_deserialize(deserializer, entry, module) for entry in obj) + + +def _sorted_annotations(types: list[typing.Any]) -> list[typing.Any]: + return sorted( + types, + key=lambda x: hasattr(x, "__name__") and x.__name__.lower() in ("str", "float", "int", "bool"), + ) + + +def _get_deserialize_callable_from_annotation( # pylint: disable=too-many-return-statements, too-many-statements, too-many-branches + annotation: typing.Any, + module: typing.Optional[str], + rf: typing.Optional["_RestField"] = None, +) -> typing.Optional[typing.Callable[[typing.Any], typing.Any]]: + if not annotation: + return None + + # is it a type alias? + if isinstance(annotation, str): + if module is not None: + annotation = _get_type_alias_type(module, annotation) + + # is it a forward ref / in quotes? + if isinstance(annotation, (str, typing.ForwardRef)): + try: + model_name = annotation.__forward_arg__ # type: ignore + except AttributeError: + model_name = annotation + if module is not None: + annotation = _get_model(module, model_name) # type: ignore + + try: + if module and _is_model(annotation): + if rf: + rf._is_model = True + + return functools.partial(_deserialize_model, annotation) # pyright: ignore + except Exception: + pass + + # is it a literal? + try: + if annotation.__origin__ is typing.Literal: # pyright: ignore + return None + except AttributeError: + pass + + # is it optional? + try: + if any(a is _NONE_TYPE for a in annotation.__args__): # pyright: ignore + if rf: + rf._is_optional = True + if len(annotation.__args__) <= 2: # pyright: ignore + if_obj_deserializer = _get_deserialize_callable_from_annotation( + next(a for a in annotation.__args__ if a is not _NONE_TYPE), module, rf # pyright: ignore + ) + + return functools.partial(_deserialize_with_optional, if_obj_deserializer) + # the type is Optional[Union[...]], we need to remove the None type from the Union + annotation_copy = copy.copy(annotation) + annotation_copy.__args__ = [a for a in annotation_copy.__args__ if a is not _NONE_TYPE] # pyright: ignore + return _get_deserialize_callable_from_annotation(annotation_copy, module, rf) + except AttributeError: + pass + + # is it union? + if getattr(annotation, "__origin__", None) is typing.Union: + # initial ordering is we make `string` the last deserialization option, because it is often them most generic + deserializers = [ + _get_deserialize_callable_from_annotation(arg, module, rf) + for arg in _sorted_annotations(annotation.__args__) # pyright: ignore + ] + + return functools.partial(_deserialize_with_union, deserializers) + + try: + annotation_name = ( + annotation.__name__ if hasattr(annotation, "__name__") else annotation._name # pyright: ignore + ) + if annotation_name.lower() == "dict": + value_deserializer = _get_deserialize_callable_from_annotation( + annotation.__args__[1], module, rf # pyright: ignore + ) + + return functools.partial( + _deserialize_dict, + value_deserializer, + module, + ) + except (AttributeError, IndexError): + pass + try: + annotation_name = ( + annotation.__name__ if hasattr(annotation, "__name__") else annotation._name # pyright: ignore + ) + if annotation_name.lower() in ["list", "set", "tuple", "sequence"]: + if len(annotation.__args__) > 1: # pyright: ignore + entry_deserializers = [ + _get_deserialize_callable_from_annotation(dt, module, rf) + for dt in annotation.__args__ # pyright: ignore + ] + return functools.partial(_deserialize_multiple_sequence, entry_deserializers, module) + deserializer = _get_deserialize_callable_from_annotation( + annotation.__args__[0], module, rf # pyright: ignore + ) + + return functools.partial(_deserialize_sequence, deserializer, module) + except (TypeError, IndexError, AttributeError, SyntaxError): + pass + + def _deserialize_default( + deserializer, + obj, + ): + if obj is None: + return obj + try: + return _deserialize_with_callable(deserializer, obj) + except Exception: + pass + return obj + + if get_deserializer(annotation, rf): + return functools.partial(_deserialize_default, get_deserializer(annotation, rf)) + + return functools.partial(_deserialize_default, annotation) + + +def _deserialize_with_callable( + deserializer: typing.Optional[typing.Callable[[typing.Any], typing.Any]], + value: typing.Any, +): # pylint: disable=too-many-return-statements + try: + if value is None or isinstance(value, _Null): + return None + if isinstance(value, ET.Element): + if deserializer is str: + return value.text or "" + if deserializer is int: + return int(value.text) if value.text else None + if deserializer is float: + return float(value.text) if value.text else None + if deserializer is bool: + return value.text == "true" if value.text else None + if deserializer and deserializer in _DESERIALIZE_MAPPING.values(): + return deserializer(value.text) if value.text else None + if deserializer and deserializer in _DESERIALIZE_MAPPING_WITHFORMAT.values(): + return deserializer(value.text) if value.text else None + if deserializer is None: + return value + if deserializer in [int, float, bool]: + return deserializer(value) + if isinstance(deserializer, CaseInsensitiveEnumMeta): + try: + return deserializer(value.text if isinstance(value, ET.Element) else value) + except ValueError: + # for unknown value, return raw value + return value.text if isinstance(value, ET.Element) else value + if isinstance(deserializer, type) and issubclass(deserializer, Model): + return deserializer._deserialize(value, []) + return typing.cast(typing.Callable[[typing.Any], typing.Any], deserializer)(value) + except Exception as e: + raise DeserializationError() from e + + +def _deserialize( + deserializer: typing.Any, + value: typing.Any, + module: typing.Optional[str] = None, + rf: typing.Optional["_RestField"] = None, + format: typing.Optional[str] = None, +) -> typing.Any: + if isinstance(value, PipelineResponse): + value = value.http_response.json() + if rf is None and format: + rf = _RestField(format=format) + if not isinstance(deserializer, functools.partial): + deserializer = _get_deserialize_callable_from_annotation(deserializer, module, rf) + return _deserialize_with_callable(deserializer, value) + + +def _failsafe_deserialize( + deserializer: typing.Any, + response: HttpResponse, + module: typing.Optional[str] = None, + rf: typing.Optional["_RestField"] = None, + format: typing.Optional[str] = None, +) -> typing.Any: + try: + return _deserialize(deserializer, response.json(), module, rf, format) + except Exception: # pylint: disable=broad-except + _LOGGER.warning( + "Ran into a deserialization error. Ignoring since this is failsafe deserialization", exc_info=True + ) + return None + + +def _failsafe_deserialize_xml( + deserializer: typing.Any, + response: HttpResponse, +) -> typing.Any: + try: + return _deserialize_xml(deserializer, response.text()) + except Exception: # pylint: disable=broad-except + _LOGGER.warning( + "Ran into a deserialization error. Ignoring since this is failsafe deserialization", exc_info=True + ) + return None + + +# pylint: disable=too-many-instance-attributes +class _RestField: + def __init__( + self, + *, + name: typing.Optional[str] = None, + type: typing.Optional[typing.Callable] = None, # pylint: disable=redefined-builtin + is_discriminator: bool = False, + visibility: typing.Optional[list[str]] = None, + default: typing.Any = _UNSET, + format: typing.Optional[str] = None, + is_multipart_file_input: bool = False, + xml: typing.Optional[dict[str, typing.Any]] = None, + ): + self._type = type + self._rest_name_input = name + self._module: typing.Optional[str] = None + self._is_discriminator = is_discriminator + self._visibility = visibility + self._is_model = False + self._is_optional = False + self._default = default + self._format = format + self._is_multipart_file_input = is_multipart_file_input + self._xml = xml if xml is not None else {} + + @property + def _class_type(self) -> typing.Any: + result = getattr(self._type, "args", [None])[0] + # type may be wrapped by nested functools.partial so we need to check for that + if isinstance(result, functools.partial): + return getattr(result, "args", [None])[0] + return result + + @property + def _rest_name(self) -> str: + if self._rest_name_input is None: + raise ValueError("Rest name was never set") + return self._rest_name_input + + def __get__(self, obj: Model, type=None): # pylint: disable=redefined-builtin + # by this point, type and rest_name will have a value bc we default + # them in __new__ of the Model class + # Use _data.get() directly to avoid triggering __getitem__ which clears the cache + item = obj._data.get(self._rest_name) + if item is None: + return item + if self._is_model: + return item + + # For mutable types, we want mutations to directly affect _data + # Check if we've already deserialized this value + cache_attr = f"_deserialized_{self._rest_name}" + if hasattr(obj, cache_attr): + # Return the value from _data directly (it's been deserialized in place) + return obj._data.get(self._rest_name) + + deserialized = _deserialize(self._type, _serialize(item, self._format), rf=self) + + # For mutable types, store the deserialized value back in _data + # so mutations directly affect _data + if isinstance(deserialized, (dict, list, set)): + obj._data[self._rest_name] = deserialized + object.__setattr__(obj, cache_attr, True) # Mark as deserialized + return deserialized + + return deserialized + + def __set__(self, obj: Model, value) -> None: + # Clear the cached deserialized object when setting a new value + cache_attr = f"_deserialized_{self._rest_name}" + if hasattr(obj, cache_attr): + object.__delattr__(obj, cache_attr) + + if value is None: + # we want to wipe out entries if users set attr to None + try: + obj.__delitem__(self._rest_name) + except KeyError: + pass + return + if self._is_model: + if not _is_model(value): + value = _deserialize(self._type, value) + obj.__setitem__(self._rest_name, value) + return + obj.__setitem__(self._rest_name, _serialize(value, self._format)) + + def _get_deserialize_callable_from_annotation( + self, annotation: typing.Any + ) -> typing.Optional[typing.Callable[[typing.Any], typing.Any]]: + return _get_deserialize_callable_from_annotation(annotation, self._module, self) + + +def rest_field( + *, + name: typing.Optional[str] = None, + type: typing.Optional[typing.Callable] = None, # pylint: disable=redefined-builtin + visibility: typing.Optional[list[str]] = None, + default: typing.Any = _UNSET, + format: typing.Optional[str] = None, + is_multipart_file_input: bool = False, + xml: typing.Optional[dict[str, typing.Any]] = None, +) -> typing.Any: + return _RestField( + name=name, + type=type, + visibility=visibility, + default=default, + format=format, + is_multipart_file_input=is_multipart_file_input, + xml=xml, + ) + + +def rest_discriminator( + *, + name: typing.Optional[str] = None, + type: typing.Optional[typing.Callable] = None, # pylint: disable=redefined-builtin + visibility: typing.Optional[list[str]] = None, + xml: typing.Optional[dict[str, typing.Any]] = None, +) -> typing.Any: + return _RestField(name=name, type=type, is_discriminator=True, visibility=visibility, xml=xml) + + +def serialize_xml(model: Model, exclude_readonly: bool = False) -> str: + """Serialize a model to XML. + + :param Model model: The model to serialize. + :param bool exclude_readonly: Whether to exclude readonly properties. + :returns: The XML representation of the model. + :rtype: str + """ + return ET.tostring(_get_element(model, exclude_readonly), encoding="unicode") # type: ignore + + +def _get_xml_ns(meta: dict[str, typing.Any]) -> typing.Optional[str]: + """Return the XML namespace from a metadata dict, checking both 'ns' (old-style) and 'namespace' (DPG) keys. + + :param dict meta: The metadata dictionary to extract namespace from. + :returns: The namespace string if 'ns' or 'namespace' key is present, None otherwise. + :rtype: str or None + """ + ns = meta.get("ns") + if ns is None: + ns = meta.get("namespace") + return ns + + +def _resolve_xml_ns( + prop_meta: dict[str, typing.Any], model_meta: typing.Optional[dict[str, typing.Any]] = None +) -> typing.Optional[str]: + """Resolve XML namespace for a property, falling back to model namespace when appropriate. + + Checks the property metadata first; if no namespace is found and the model does not declare + an explicit prefix, falls back to the model-level namespace. + + :param dict prop_meta: The property metadata dictionary. + :param dict model_meta: The model metadata dictionary, used as fallback. + :returns: The resolved namespace string, or None. + :rtype: str or None + """ + ns = _get_xml_ns(prop_meta) + if ns is None and model_meta is not None and not model_meta.get("prefix"): + ns = _get_xml_ns(model_meta) + return ns + + +def _set_xml_attribute(element: ET.Element, name: str, value: typing.Any, prop_meta: dict[str, typing.Any]) -> None: + """Set an XML attribute on an element, handling namespace prefix registration. + + :param ET.Element element: The element to set the attribute on. + :param str name: The default attribute name (wire name). + :param any value: The attribute value. + :param dict prop_meta: The property metadata dictionary. + """ + xml_name = prop_meta.get("name", name) + _attr_ns = _get_xml_ns(prop_meta) + if _attr_ns: + _attr_prefix = prop_meta.get("prefix") + if _attr_prefix: + _safe_register_namespace(_attr_prefix, _attr_ns) + xml_name = "{" + _attr_ns + "}" + xml_name + element.set(xml_name, _get_primitive_type_value(value)) + + +def _get_element( + o: typing.Any, + exclude_readonly: bool = False, + parent_meta: typing.Optional[dict[str, typing.Any]] = None, + wrapped_element: typing.Optional[ET.Element] = None, +) -> typing.Union[ET.Element, list[ET.Element]]: + if _is_model(o): + model_meta = getattr(o, "_xml", {}) + + # if prop is a model, then use the prop element directly, else generate a wrapper of model + if wrapped_element is None: + # When serializing as an array item (parent_meta is set), check if the parent has an + # explicit itemsName. This ensures correct element names for unwrapped arrays (where + # the element tag is the property/items name, not the model type name). + _items_name = parent_meta.get("itemsName") if parent_meta is not None else None + element_name = _items_name if _items_name else (model_meta.get("name") or o.__class__.__name__) + _model_ns = _get_xml_ns(model_meta) + wrapped_element = _create_xml_element( + element_name, + model_meta.get("prefix"), + _model_ns, + ) + + readonly_props = [] + if exclude_readonly: + readonly_props = [p._rest_name for p in o._attr_to_rest_field.values() if _is_readonly(p)] + + for k, v in o.items(): + # do not serialize readonly properties + if exclude_readonly and k in readonly_props: + continue + + prop_rest_field = _get_rest_field(o._attr_to_rest_field, k) + if prop_rest_field: + prop_meta = getattr(prop_rest_field, "_xml").copy() + # use the wire name as xml name if no specific name is set + if prop_meta.get("name") is None: + prop_meta["name"] = k + else: + # additional properties will not have rest field, use the wire name as xml name + prop_meta = {"name": k} + + # Propagate model namespace to properties only for old-style "ns"-keyed models. + # DPG-generated models use the "namespace" key and explicitly declare namespace on + # each property that needs it, so propagation is intentionally skipped for them. + if prop_meta.get("ns") is None and model_meta.get("ns"): + prop_meta["ns"] = model_meta.get("ns") + prop_meta["prefix"] = model_meta.get("prefix") + + if prop_meta.get("unwrapped", False): + # unwrapped could only set on array + wrapped_element.extend(_get_element(v, exclude_readonly, prop_meta)) + elif prop_meta.get("text", False): + # text could only set on primitive type + wrapped_element.text = _get_primitive_type_value(v) + elif prop_meta.get("attribute", False): + _set_xml_attribute(wrapped_element, k, v, prop_meta) + else: + # other wrapped prop element + wrapped_element.append(_get_wrapped_element(v, exclude_readonly, prop_meta)) + return wrapped_element + if isinstance(o, list): + return [_get_element(x, exclude_readonly, parent_meta) for x in o] # type: ignore + if isinstance(o, dict): + result = [] + _dict_ns = _get_xml_ns(parent_meta) if parent_meta else None + for k, v in o.items(): + result.append( + _get_wrapped_element( + v, + exclude_readonly, + { + "name": k, + "ns": _dict_ns, + "prefix": parent_meta.get("prefix") if parent_meta else None, + }, + ) + ) + return result + + # primitive case need to create element based on parent_meta + if parent_meta: + _items_ns = parent_meta.get("itemsNs") + if _items_ns is None: + _items_ns = _get_xml_ns(parent_meta) + return _get_wrapped_element( + o, + exclude_readonly, + { + "name": parent_meta.get("itemsName", parent_meta.get("name")), + "prefix": parent_meta.get("itemsPrefix", parent_meta.get("prefix")), + "ns": _items_ns, + }, + ) + + raise ValueError("Could not serialize value into xml: " + o) + + +def _get_wrapped_element( + v: typing.Any, + exclude_readonly: bool, + meta: typing.Optional[dict[str, typing.Any]], +) -> ET.Element: + _meta_ns = _get_xml_ns(meta) if meta else None + wrapped_element = _create_xml_element( + meta.get("name") if meta else None, meta.get("prefix") if meta else None, _meta_ns + ) + if isinstance(v, (dict, list)): + wrapped_element.extend(_get_element(v, exclude_readonly, meta)) + elif _is_model(v): + _get_element(v, exclude_readonly, meta, wrapped_element) + else: + wrapped_element.text = _get_primitive_type_value(v) + return wrapped_element # type: ignore[no-any-return] + + +def _get_primitive_type_value(v) -> str: + if v is True: + return "true" + if v is False: + return "false" + if isinstance(v, _Null): + return "" + return str(v) + + +def _safe_register_namespace(prefix: str, ns: str) -> None: + """Register an XML namespace prefix, handling reserved prefix patterns. + + Some prefixes (e.g. 'ns2') match Python's reserved 'ns\\d+' pattern used for + auto-generated prefixes, causing register_namespace to raise ValueError. + Falls back to directly registering in the internal namespace map. + + :param str prefix: The namespace prefix to register. + :param str ns: The namespace URI. + """ + try: + ET.register_namespace(prefix, ns) + except ValueError: + _ns_map = getattr(ET, "_namespace_map", None) + if _ns_map is not None: + _ns_map[ns] = prefix + + +def _create_xml_element( + tag: typing.Any, prefix: typing.Optional[str] = None, ns: typing.Optional[str] = None +) -> ET.Element: + if prefix and ns: + _safe_register_namespace(prefix, ns) + if ns: + return ET.Element("{" + ns + "}" + tag) + return ET.Element(tag) + + +def _deserialize_xml( + deserializer: typing.Any, + value: str, +) -> typing.Any: + element = ET.fromstring(value) # nosec + return _deserialize(deserializer, element) + + +def _convert_element(e: ET.Element): + # dict case + if len(e.attrib) > 0 or len({child.tag for child in e}) > 1: + dict_result: dict[str, typing.Any] = {} + for child in e: + if dict_result.get(child.tag) is not None: + if isinstance(dict_result[child.tag], list): + dict_result[child.tag].append(_convert_element(child)) + else: + dict_result[child.tag] = [dict_result[child.tag], _convert_element(child)] + else: + dict_result[child.tag] = _convert_element(child) + dict_result.update(e.attrib) + return dict_result + # array case + if len(e) > 0: + array_result: list[typing.Any] = [] + for child in e: + array_result.append(_convert_element(child)) + return array_result + # primitive case + return e.text diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/serialization.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/serialization.py index 6da830e0cf4a..81ec1de5922b 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/serialization.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/_utils/serialization.py @@ -3,7 +3,7 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/_version.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/_version.py index 11a0f11e9cf7..35a1c7bec106 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/_version.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/_version.py @@ -1,8 +1,9 @@ # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- VERSION = "8.0.0b2" diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/__init__.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/__init__.py index 183995ca7061..9ba6733ee796 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/__init__.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/__init__.py @@ -2,7 +2,7 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- # pylint: disable=wrong-import-position @@ -12,7 +12,7 @@ if TYPE_CHECKING: from ._patch import * # pylint: disable=unused-wildcard-import -from ._security_center import SecurityCenter # type: ignore +from ._client import SecurityManagementClient # type: ignore try: from ._patch import __all__ as _patch_all @@ -22,7 +22,7 @@ from ._patch import patch_sdk as _patch_sdk __all__ = [ - "SecurityCenter", + "SecurityManagementClient", ] __all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_security_center.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_client.py similarity index 95% rename from sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_security_center.py rename to sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_client.py index 68d6f9db4fab..d2d1bcadb143 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_security_center.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_client.py @@ -2,7 +2,7 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- @@ -17,9 +17,8 @@ from azure.mgmt.core.policies import AsyncARMAutoResourceProviderRegistrationPolicy from azure.mgmt.core.tools import get_arm_endpoints -from .. import models as _models from .._utils.serialization import Deserializer, Serializer -from ._configuration import SecurityCenterConfiguration +from ._configuration import SecurityManagementClientConfiguration from .operations import ( APICollectionsOperations, AdvancedThreatProtectionOperations, @@ -78,6 +77,7 @@ SecurityConnectorApplicationOperations, SecurityConnectorApplicationsOperations, SecurityConnectorsOperations, + SecurityContactsOperations, SecurityOperatorsOperations, SecuritySolutionsOperations, SecuritySolutionsReferenceDataOperations, @@ -103,13 +103,37 @@ from azure.core.credentials_async import AsyncTokenCredential -class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """API spec for Microsoft.Security (Azure Security Center) resource provider. +class SecurityManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes + """SecurityManagementClient. - :ivar locations: LocationsOperations operations - :vartype locations: azure.mgmt.security.aio.operations.LocationsOperations - :ivar tasks: TasksOperations operations - :vartype tasks: azure.mgmt.security.aio.operations.TasksOperations + :ivar alerts: AlertsOperations operations + :vartype alerts: azure.mgmt.security.aio.operations.AlertsOperations + :ivar alerts_suppression_rules: AlertsSuppressionRulesOperations operations + :vartype alerts_suppression_rules: + azure.mgmt.security.aio.operations.AlertsSuppressionRulesOperations + :ivar applications: ApplicationsOperations operations + :vartype applications: azure.mgmt.security.aio.operations.ApplicationsOperations + :ivar security_connector_application: SecurityConnectorApplicationOperations operations + :vartype security_connector_application: + azure.mgmt.security.aio.operations.SecurityConnectorApplicationOperations + :ivar assessments_metadata: AssessmentsMetadataOperations operations + :vartype assessments_metadata: azure.mgmt.security.aio.operations.AssessmentsMetadataOperations + :ivar automations: AutomationsOperations operations + :vartype automations: azure.mgmt.security.aio.operations.AutomationsOperations + :ivar security_contacts: SecurityContactsOperations operations + :vartype security_contacts: azure.mgmt.security.aio.operations.SecurityContactsOperations + :ivar compliance_results: ComplianceResultsOperations operations + :vartype compliance_results: azure.mgmt.security.aio.operations.ComplianceResultsOperations + :ivar governance_assignments: GovernanceAssignmentsOperations operations + :vartype governance_assignments: + azure.mgmt.security.aio.operations.GovernanceAssignmentsOperations + :ivar governance_rules: GovernanceRulesOperations operations + :vartype governance_rules: azure.mgmt.security.aio.operations.GovernanceRulesOperations + :ivar health_reports: HealthReportsOperations operations + :vartype health_reports: azure.mgmt.security.aio.operations.HealthReportsOperations + :ivar device_security_groups: DeviceSecurityGroupsOperations operations + :vartype device_security_groups: + azure.mgmt.security.aio.operations.DeviceSecurityGroupsOperations :ivar auto_provisioning_settings: AutoProvisioningSettingsOperations operations :vartype auto_provisioning_settings: azure.mgmt.security.aio.operations.AutoProvisioningSettingsOperations @@ -120,9 +144,18 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- azure.mgmt.security.aio.operations.InformationProtectionPoliciesOperations :ivar workspace_settings: WorkspaceSettingsOperations operations :vartype workspace_settings: azure.mgmt.security.aio.operations.WorkspaceSettingsOperations - :ivar alerts_suppression_rules: AlertsSuppressionRulesOperations operations - :vartype alerts_suppression_rules: - azure.mgmt.security.aio.operations.AlertsSuppressionRulesOperations + :ivar mde_onboardings: MdeOnboardingsOperations operations + :vartype mde_onboardings: azure.mgmt.security.aio.operations.MdeOnboardingsOperations + :ivar operations: Operations operations + :vartype operations: azure.mgmt.security.aio.operations.Operations + :ivar pricings: PricingsOperations operations + :vartype pricings: azure.mgmt.security.aio.operations.PricingsOperations + :ivar private_link_resources: PrivateLinkResourcesOperations operations + :vartype private_link_resources: + azure.mgmt.security.aio.operations.PrivateLinkResourcesOperations + :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations + :vartype private_endpoint_connections: + azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations :ivar regulatory_compliance_standards: RegulatoryComplianceStandardsOperations operations :vartype regulatory_compliance_standards: azure.mgmt.security.aio.operations.RegulatoryComplianceStandardsOperations @@ -132,109 +165,24 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- :ivar regulatory_compliance_assessments: RegulatoryComplianceAssessmentsOperations operations :vartype regulatory_compliance_assessments: azure.mgmt.security.aio.operations.RegulatoryComplianceAssessmentsOperations - :ivar sub_assessments: SubAssessmentsOperations operations - :vartype sub_assessments: azure.mgmt.security.aio.operations.SubAssessmentsOperations - :ivar mde_onboardings: MdeOnboardingsOperations operations - :vartype mde_onboardings: azure.mgmt.security.aio.operations.MdeOnboardingsOperations - :ivar governance_assignments: GovernanceAssignmentsOperations operations - :vartype governance_assignments: - azure.mgmt.security.aio.operations.GovernanceAssignmentsOperations - :ivar governance_rules: GovernanceRulesOperations operations - :vartype governance_rules: azure.mgmt.security.aio.operations.GovernanceRulesOperations - :ivar applications: ApplicationsOperations operations - :vartype applications: azure.mgmt.security.aio.operations.ApplicationsOperations - :ivar application: ApplicationOperations operations - :vartype application: azure.mgmt.security.aio.operations.ApplicationOperations - :ivar security_connector_applications: SecurityConnectorApplicationsOperations operations - :vartype security_connector_applications: - azure.mgmt.security.aio.operations.SecurityConnectorApplicationsOperations - :ivar security_connector_application: SecurityConnectorApplicationOperations operations - :vartype security_connector_application: - azure.mgmt.security.aio.operations.SecurityConnectorApplicationOperations - :ivar security_operators: SecurityOperatorsOperations operations - :vartype security_operators: azure.mgmt.security.aio.operations.SecurityOperatorsOperations - :ivar sql_vulnerability_assessment_baseline_rules: - SqlVulnerabilityAssessmentBaselineRulesOperations operations - :vartype sql_vulnerability_assessment_baseline_rules: - azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentBaselineRulesOperations - :ivar sql_vulnerability_assessment_scans: SqlVulnerabilityAssessmentScansOperations operations - :vartype sql_vulnerability_assessment_scans: - azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations - :ivar sql_vulnerability_assessment_scan_results: - SqlVulnerabilityAssessmentScanResultsOperations operations - :vartype sql_vulnerability_assessment_scan_results: - azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScanResultsOperations - :ivar sql_vulnerability_assessment_settings: SqlVulnerabilityAssessmentSettingsOperations - operations - :vartype sql_vulnerability_assessment_settings: - azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentSettingsOperations - :ivar sensitivity_settings: SensitivitySettingsOperations operations - :vartype sensitivity_settings: azure.mgmt.security.aio.operations.SensitivitySettingsOperations - :ivar health_reports: HealthReportsOperations operations - :vartype health_reports: azure.mgmt.security.aio.operations.HealthReportsOperations - :ivar automations: AutomationsOperations operations - :vartype automations: azure.mgmt.security.aio.operations.AutomationsOperations :ivar security_connectors: SecurityConnectorsOperations operations :vartype security_connectors: azure.mgmt.security.aio.operations.SecurityConnectorsOperations :ivar azure_dev_ops_orgs: AzureDevOpsOrgsOperations operations :vartype azure_dev_ops_orgs: azure.mgmt.security.aio.operations.AzureDevOpsOrgsOperations - :ivar azure_dev_ops_projects: AzureDevOpsProjectsOperations operations - :vartype azure_dev_ops_projects: - azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations - :ivar azure_dev_ops_repos: AzureDevOpsReposOperations operations - :vartype azure_dev_ops_repos: azure.mgmt.security.aio.operations.AzureDevOpsReposOperations - :ivar dev_ops_configurations: DevOpsConfigurationsOperations operations - :vartype dev_ops_configurations: - azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations :ivar git_hub_owners: GitHubOwnersOperations operations :vartype git_hub_owners: azure.mgmt.security.aio.operations.GitHubOwnersOperations - :ivar git_hub_repos: GitHubReposOperations operations - :vartype git_hub_repos: azure.mgmt.security.aio.operations.GitHubReposOperations - :ivar git_hub_issues: GitHubIssuesOperations operations - :vartype git_hub_issues: azure.mgmt.security.aio.operations.GitHubIssuesOperations :ivar git_lab_groups: GitLabGroupsOperations operations :vartype git_lab_groups: azure.mgmt.security.aio.operations.GitLabGroupsOperations - :ivar git_lab_subgroups: GitLabSubgroupsOperations operations - :vartype git_lab_subgroups: azure.mgmt.security.aio.operations.GitLabSubgroupsOperations + :ivar dev_ops_configurations: DevOpsConfigurationsOperations operations + :vartype dev_ops_configurations: + azure.mgmt.security.aio.operations.DevOpsConfigurationsOperations + :ivar azure_dev_ops_projects: AzureDevOpsProjectsOperations operations + :vartype azure_dev_ops_projects: + azure.mgmt.security.aio.operations.AzureDevOpsProjectsOperations :ivar git_lab_projects: GitLabProjectsOperations operations :vartype git_lab_projects: azure.mgmt.security.aio.operations.GitLabProjectsOperations - :ivar dev_ops_operation_results: DevOpsOperationResultsOperations operations - :vartype dev_ops_operation_results: - azure.mgmt.security.aio.operations.DevOpsOperationResultsOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.security.aio.operations.Operations - :ivar operation_results: OperationResultsOperations operations - :vartype operation_results: azure.mgmt.security.aio.operations.OperationResultsOperations - :ivar operation_statuses: OperationStatusesOperations operations - :vartype operation_statuses: azure.mgmt.security.aio.operations.OperationStatusesOperations - :ivar assessments_metadata: AssessmentsMetadataOperations operations - :vartype assessments_metadata: azure.mgmt.security.aio.operations.AssessmentsMetadataOperations - :ivar assessments: AssessmentsOperations operations - :vartype assessments: azure.mgmt.security.aio.operations.AssessmentsOperations - :ivar compliance_results: ComplianceResultsOperations operations - :vartype compliance_results: azure.mgmt.security.aio.operations.ComplianceResultsOperations - :ivar advanced_threat_protection: AdvancedThreatProtectionOperations operations - :vartype advanced_threat_protection: - azure.mgmt.security.aio.operations.AdvancedThreatProtectionOperations - :ivar device_security_groups: DeviceSecurityGroupsOperations operations - :vartype device_security_groups: - azure.mgmt.security.aio.operations.DeviceSecurityGroupsOperations - :ivar iot_security_solution_analytics: IotSecuritySolutionAnalyticsOperations operations - :vartype iot_security_solution_analytics: - azure.mgmt.security.aio.operations.IotSecuritySolutionAnalyticsOperations - :ivar iot_security_solutions_analytics_aggregated_alert: - IotSecuritySolutionsAnalyticsAggregatedAlertOperations operations - :vartype iot_security_solutions_analytics_aggregated_alert: - azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations - :ivar iot_security_solutions_analytics_recommendation: - IotSecuritySolutionsAnalyticsRecommendationOperations operations - :vartype iot_security_solutions_analytics_recommendation: - azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsRecommendationOperations - :ivar iot_security_solution: IotSecuritySolutionOperations operations - :vartype iot_security_solution: - azure.mgmt.security.aio.operations.IotSecuritySolutionOperations - :ivar allowed_connections: AllowedConnectionsOperations operations - :vartype allowed_connections: azure.mgmt.security.aio.operations.AllowedConnectionsOperations + :ivar security_operators: SecurityOperatorsOperations operations + :vartype security_operators: azure.mgmt.security.aio.operations.SecurityOperatorsOperations :ivar discovered_security_solutions: DiscoveredSecuritySolutionsOperations operations :vartype discovered_security_solutions: azure.mgmt.security.aio.operations.DiscoveredSecuritySolutionsOperations @@ -246,26 +194,6 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- azure.mgmt.security.aio.operations.JitNetworkAccessPoliciesOperations :ivar security_solutions: SecuritySolutionsOperations operations :vartype security_solutions: azure.mgmt.security.aio.operations.SecuritySolutionsOperations - :ivar security_solutions_reference_data: SecuritySolutionsReferenceDataOperations operations - :vartype security_solutions_reference_data: - azure.mgmt.security.aio.operations.SecuritySolutionsReferenceDataOperations - :ivar server_vulnerability_assessment: ServerVulnerabilityAssessmentOperations operations - :vartype server_vulnerability_assessment: - azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentOperations - :ivar topology: TopologyOperations operations - :vartype topology: azure.mgmt.security.aio.operations.TopologyOperations - :ivar alerts: AlertsOperations operations - :vartype alerts: azure.mgmt.security.aio.operations.AlertsOperations - :ivar settings: SettingsOperations operations - :vartype settings: azure.mgmt.security.aio.operations.SettingsOperations - :ivar server_vulnerability_assessments_settings: - ServerVulnerabilityAssessmentsSettingsOperations operations - :vartype server_vulnerability_assessments_settings: - azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentsSettingsOperations - :ivar api_collections: APICollectionsOperations operations - :vartype api_collections: azure.mgmt.security.aio.operations.APICollectionsOperations - :ivar pricings: PricingsOperations operations - :vartype pricings: azure.mgmt.security.aio.operations.PricingsOperations :ivar security_standards: SecurityStandardsOperations operations :vartype security_standards: azure.mgmt.security.aio.operations.SecurityStandardsOperations :ivar standard_assignments: StandardAssignmentsOperations operations @@ -273,20 +201,62 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- :ivar custom_recommendations: CustomRecommendationsOperations operations :vartype custom_recommendations: azure.mgmt.security.aio.operations.CustomRecommendationsOperations + :ivar server_vulnerability_assessments_settings: + ServerVulnerabilityAssessmentsSettingsOperations operations + :vartype server_vulnerability_assessments_settings: + azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentsSettingsOperations + :ivar settings: SettingsOperations operations + :vartype settings: azure.mgmt.security.aio.operations.SettingsOperations + :ivar sql_vulnerability_assessment_baseline_rules: + SqlVulnerabilityAssessmentBaselineRulesOperations operations + :vartype sql_vulnerability_assessment_baseline_rules: + azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentBaselineRulesOperations + :ivar sql_vulnerability_assessment_scan_results: + SqlVulnerabilityAssessmentScanResultsOperations operations + :vartype sql_vulnerability_assessment_scan_results: + azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScanResultsOperations :ivar standards: StandardsOperations operations :vartype standards: azure.mgmt.security.aio.operations.StandardsOperations :ivar assignments: AssignmentsOperations operations :vartype assignments: azure.mgmt.security.aio.operations.AssignmentsOperations + :ivar tasks: TasksOperations operations + :vartype tasks: azure.mgmt.security.aio.operations.TasksOperations + :ivar api_collections: APICollectionsOperations operations + :vartype api_collections: azure.mgmt.security.aio.operations.APICollectionsOperations + :ivar application: ApplicationOperations operations + :vartype application: azure.mgmt.security.aio.operations.ApplicationOperations + :ivar security_connector_applications: SecurityConnectorApplicationsOperations operations + :vartype security_connector_applications: + azure.mgmt.security.aio.operations.SecurityConnectorApplicationsOperations + :ivar assessments: AssessmentsOperations operations + :vartype assessments: azure.mgmt.security.aio.operations.AssessmentsOperations + :ivar advanced_threat_protection: AdvancedThreatProtectionOperations operations + :vartype advanced_threat_protection: + azure.mgmt.security.aio.operations.AdvancedThreatProtectionOperations :ivar defender_for_storage: DefenderForStorageOperations operations :vartype defender_for_storage: azure.mgmt.security.aio.operations.DefenderForStorageOperations + :ivar iot_security_solution_analytics: IotSecuritySolutionAnalyticsOperations operations + :vartype iot_security_solution_analytics: + azure.mgmt.security.aio.operations.IotSecuritySolutionAnalyticsOperations + :ivar iot_security_solution: IotSecuritySolutionOperations operations + :vartype iot_security_solution: + azure.mgmt.security.aio.operations.IotSecuritySolutionOperations + :ivar iot_security_solutions_analytics_aggregated_alert: + IotSecuritySolutionsAnalyticsAggregatedAlertOperations operations + :vartype iot_security_solutions_analytics_aggregated_alert: + azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsAggregatedAlertOperations + :ivar iot_security_solutions_analytics_recommendation: + IotSecuritySolutionsAnalyticsRecommendationOperations operations + :vartype iot_security_solutions_analytics_recommendation: + azure.mgmt.security.aio.operations.IotSecuritySolutionsAnalyticsRecommendationOperations + :ivar locations: LocationsOperations operations + :vartype locations: azure.mgmt.security.aio.operations.LocationsOperations + :ivar operation_results: OperationResultsOperations operations + :vartype operation_results: azure.mgmt.security.aio.operations.OperationResultsOperations + :ivar operation_statuses: OperationStatusesOperations operations + :vartype operation_statuses: azure.mgmt.security.aio.operations.OperationStatusesOperations :ivar private_links: PrivateLinksOperations operations :vartype private_links: azure.mgmt.security.aio.operations.PrivateLinksOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.security.aio.operations.PrivateLinkResourcesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.security.aio.operations.PrivateEndpointConnectionsOperations :ivar secure_scores: SecureScoresOperations operations :vartype secure_scores: azure.mgmt.security.aio.operations.SecureScoresOperations :ivar secure_score_controls: SecureScoreControlsOperations operations @@ -295,11 +265,43 @@ class SecurityCenter: # pylint: disable=client-accepts-api-version-keyword,too- :ivar secure_score_control_definitions: SecureScoreControlDefinitionsOperations operations :vartype secure_score_control_definitions: azure.mgmt.security.aio.operations.SecureScoreControlDefinitionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. + :ivar git_lab_subgroups: GitLabSubgroupsOperations operations + :vartype git_lab_subgroups: azure.mgmt.security.aio.operations.GitLabSubgroupsOperations + :ivar dev_ops_operation_results: DevOpsOperationResultsOperations operations + :vartype dev_ops_operation_results: + azure.mgmt.security.aio.operations.DevOpsOperationResultsOperations + :ivar azure_dev_ops_repos: AzureDevOpsReposOperations operations + :vartype azure_dev_ops_repos: azure.mgmt.security.aio.operations.AzureDevOpsReposOperations + :ivar git_hub_repos: GitHubReposOperations operations + :vartype git_hub_repos: azure.mgmt.security.aio.operations.GitHubReposOperations + :ivar git_hub_issues: GitHubIssuesOperations operations + :vartype git_hub_issues: azure.mgmt.security.aio.operations.GitHubIssuesOperations + :ivar allowed_connections: AllowedConnectionsOperations operations + :vartype allowed_connections: azure.mgmt.security.aio.operations.AllowedConnectionsOperations + :ivar server_vulnerability_assessment: ServerVulnerabilityAssessmentOperations operations + :vartype server_vulnerability_assessment: + azure.mgmt.security.aio.operations.ServerVulnerabilityAssessmentOperations + :ivar topology: TopologyOperations operations + :vartype topology: azure.mgmt.security.aio.operations.TopologyOperations + :ivar security_solutions_reference_data: SecuritySolutionsReferenceDataOperations operations + :vartype security_solutions_reference_data: + azure.mgmt.security.aio.operations.SecuritySolutionsReferenceDataOperations + :ivar sensitivity_settings: SensitivitySettingsOperations operations + :vartype sensitivity_settings: azure.mgmt.security.aio.operations.SensitivitySettingsOperations + :ivar sql_vulnerability_assessment_settings: SqlVulnerabilityAssessmentSettingsOperations + operations + :vartype sql_vulnerability_assessment_settings: + azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentSettingsOperations + :ivar sql_vulnerability_assessment_scans: SqlVulnerabilityAssessmentScansOperations operations + :vartype sql_vulnerability_assessment_scans: + azure.mgmt.security.aio.operations.SqlVulnerabilityAssessmentScansOperations + :ivar sub_assessments: SubAssessmentsOperations operations + :vartype sub_assessments: azure.mgmt.security.aio.operations.SubAssessmentsOperations + :param credential: Credential used to authenticate requests to the service. Required. :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Azure subscription ID. Required. + :param subscription_id: The ID of the target subscription. The value must be an UUID. Required. :type subscription_id: str - :param base_url: Service URL. Default value is None. + :param base_url: Service host. Default value is None. :type base_url: str :keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is None. @@ -317,14 +319,16 @@ def __init__( cloud_setting: Optional["AzureClouds"] = None, **kwargs: Any ) -> None: + _endpoint = "{endpoint}" _cloud = cloud_setting or settings.current.azure_cloud # type: ignore _endpoints = get_arm_endpoints(_cloud) if not base_url: base_url = _endpoints["resource_manager"] credential_scopes = kwargs.pop("credential_scopes", _endpoints["credential_scopes"]) - self._config = SecurityCenterConfiguration( + self._config = SecurityManagementClientConfiguration( credential=credential, subscription_id=subscription_id, + base_url=cast(str, base_url), cloud_setting=cloud_setting, credential_scopes=credential_scopes, **kwargs @@ -349,190 +353,192 @@ def __init__( self._config.http_logging_policy, ] self._client: AsyncARMPipelineClient = AsyncARMPipelineClient( - base_url=cast(str, base_url), policies=_policies, **kwargs + base_url=cast(str, _endpoint), policies=_policies, **kwargs ) - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) + self._serialize = Serializer() + self._deserialize = Deserializer() self._serialize.client_side_validation = False - self.locations = LocationsOperations(self._client, self._config, self._serialize, self._deserialize) - self.tasks = TasksOperations(self._client, self._config, self._serialize, self._deserialize) - self.auto_provisioning_settings = AutoProvisioningSettingsOperations( - self._client, self._config, self._serialize, self._deserialize - ) - self.compliances = CompliancesOperations(self._client, self._config, self._serialize, self._deserialize) - self.information_protection_policies = InformationProtectionPoliciesOperations( - self._client, self._config, self._serialize, self._deserialize - ) - self.workspace_settings = WorkspaceSettingsOperations( + self.alerts = AlertsOperations(self._client, self._config, self._serialize, self._deserialize) + self.alerts_suppression_rules = AlertsSuppressionRulesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.alerts_suppression_rules = AlertsSuppressionRulesOperations( + self.applications = ApplicationsOperations(self._client, self._config, self._serialize, self._deserialize) + self.security_connector_application = SecurityConnectorApplicationOperations( self._client, self._config, self._serialize, self._deserialize ) - self.regulatory_compliance_standards = RegulatoryComplianceStandardsOperations( + self.assessments_metadata = AssessmentsMetadataOperations( self._client, self._config, self._serialize, self._deserialize ) - self.regulatory_compliance_controls = RegulatoryComplianceControlsOperations( + self.automations = AutomationsOperations(self._client, self._config, self._serialize, self._deserialize) + self.security_contacts = SecurityContactsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.regulatory_compliance_assessments = RegulatoryComplianceAssessmentsOperations( + self.compliance_results = ComplianceResultsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.sub_assessments = SubAssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) - self.mde_onboardings = MdeOnboardingsOperations(self._client, self._config, self._serialize, self._deserialize) self.governance_assignments = GovernanceAssignmentsOperations( self._client, self._config, self._serialize, self._deserialize ) self.governance_rules = GovernanceRulesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.applications = ApplicationsOperations(self._client, self._config, self._serialize, self._deserialize) - self.application = ApplicationOperations(self._client, self._config, self._serialize, self._deserialize) - self.security_connector_applications = SecurityConnectorApplicationsOperations( + self.health_reports = HealthReportsOperations(self._client, self._config, self._serialize, self._deserialize) + self.device_security_groups = DeviceSecurityGroupsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.security_connector_application = SecurityConnectorApplicationOperations( + self.auto_provisioning_settings = AutoProvisioningSettingsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.security_operators = SecurityOperatorsOperations( + self.compliances = CompliancesOperations(self._client, self._config, self._serialize, self._deserialize) + self.information_protection_policies = InformationProtectionPoliciesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.sql_vulnerability_assessment_baseline_rules = SqlVulnerabilityAssessmentBaselineRulesOperations( + self.workspace_settings = WorkspaceSettingsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.sql_vulnerability_assessment_scans = SqlVulnerabilityAssessmentScansOperations( + self.mde_onboardings = MdeOnboardingsOperations(self._client, self._config, self._serialize, self._deserialize) + self.operations = Operations(self._client, self._config, self._serialize, self._deserialize) + self.pricings = PricingsOperations(self._client, self._config, self._serialize, self._deserialize) + self.private_link_resources = PrivateLinkResourcesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.sql_vulnerability_assessment_scan_results = SqlVulnerabilityAssessmentScanResultsOperations( + self.private_endpoint_connections = PrivateEndpointConnectionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.sql_vulnerability_assessment_settings = SqlVulnerabilityAssessmentSettingsOperations( + self.regulatory_compliance_standards = RegulatoryComplianceStandardsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.sensitivity_settings = SensitivitySettingsOperations( + self.regulatory_compliance_controls = RegulatoryComplianceControlsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.regulatory_compliance_assessments = RegulatoryComplianceAssessmentsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.health_reports = HealthReportsOperations(self._client, self._config, self._serialize, self._deserialize) - self.automations = AutomationsOperations(self._client, self._config, self._serialize, self._deserialize) self.security_connectors = SecurityConnectorsOperations( self._client, self._config, self._serialize, self._deserialize ) self.azure_dev_ops_orgs = AzureDevOpsOrgsOperations( self._client, self._config, self._serialize, self._deserialize ) + self.git_hub_owners = GitHubOwnersOperations(self._client, self._config, self._serialize, self._deserialize) + self.git_lab_groups = GitLabGroupsOperations(self._client, self._config, self._serialize, self._deserialize) + self.dev_ops_configurations = DevOpsConfigurationsOperations( + self._client, self._config, self._serialize, self._deserialize + ) self.azure_dev_ops_projects = AzureDevOpsProjectsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.azure_dev_ops_repos = AzureDevOpsReposOperations( + self.git_lab_projects = GitLabProjectsOperations(self._client, self._config, self._serialize, self._deserialize) + self.security_operators = SecurityOperatorsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.dev_ops_configurations = DevOpsConfigurationsOperations( + self.discovered_security_solutions = DiscoveredSecuritySolutionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.git_hub_owners = GitHubOwnersOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_hub_repos = GitHubReposOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_hub_issues = GitHubIssuesOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_lab_groups = GitLabGroupsOperations(self._client, self._config, self._serialize, self._deserialize) - self.git_lab_subgroups = GitLabSubgroupsOperations( + self.external_security_solutions = ExternalSecuritySolutionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.git_lab_projects = GitLabProjectsOperations(self._client, self._config, self._serialize, self._deserialize) - self.dev_ops_operation_results = DevOpsOperationResultsOperations( + self.jit_network_access_policies = JitNetworkAccessPoliciesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.operations = Operations(self._client, self._config, self._serialize, self._deserialize) - self.operation_results = OperationResultsOperations( + self.security_solutions = SecuritySolutionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.operation_statuses = OperationStatusesOperations( + self.security_standards = SecurityStandardsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.assessments_metadata = AssessmentsMetadataOperations( + self.standard_assignments = StandardAssignmentsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.assessments = AssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) - self.compliance_results = ComplianceResultsOperations( + self.custom_recommendations = CustomRecommendationsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.advanced_threat_protection = AdvancedThreatProtectionOperations( + self.server_vulnerability_assessments_settings = ServerVulnerabilityAssessmentsSettingsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.device_security_groups = DeviceSecurityGroupsOperations( + self.settings = SettingsOperations(self._client, self._config, self._serialize, self._deserialize) + self.sql_vulnerability_assessment_baseline_rules = SqlVulnerabilityAssessmentBaselineRulesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.iot_security_solution_analytics = IotSecuritySolutionAnalyticsOperations( + self.sql_vulnerability_assessment_scan_results = SqlVulnerabilityAssessmentScanResultsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.iot_security_solutions_analytics_aggregated_alert = IotSecuritySolutionsAnalyticsAggregatedAlertOperations( + self.standards = StandardsOperations(self._client, self._config, self._serialize, self._deserialize) + self.assignments = AssignmentsOperations(self._client, self._config, self._serialize, self._deserialize) + self.tasks = TasksOperations(self._client, self._config, self._serialize, self._deserialize) + self.api_collections = APICollectionsOperations(self._client, self._config, self._serialize, self._deserialize) + self.application = ApplicationOperations(self._client, self._config, self._serialize, self._deserialize) + self.security_connector_applications = SecurityConnectorApplicationsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.iot_security_solutions_analytics_recommendation = IotSecuritySolutionsAnalyticsRecommendationOperations( + self.assessments = AssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) + self.advanced_threat_protection = AdvancedThreatProtectionOperations( self._client, self._config, self._serialize, self._deserialize ) - self.iot_security_solution = IotSecuritySolutionOperations( + self.defender_for_storage = DefenderForStorageOperations( self._client, self._config, self._serialize, self._deserialize ) - self.allowed_connections = AllowedConnectionsOperations( + self.iot_security_solution_analytics = IotSecuritySolutionAnalyticsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.discovered_security_solutions = DiscoveredSecuritySolutionsOperations( + self.iot_security_solution = IotSecuritySolutionOperations( self._client, self._config, self._serialize, self._deserialize ) - self.external_security_solutions = ExternalSecuritySolutionsOperations( + self.iot_security_solutions_analytics_aggregated_alert = IotSecuritySolutionsAnalyticsAggregatedAlertOperations( self._client, self._config, self._serialize, self._deserialize ) - self.jit_network_access_policies = JitNetworkAccessPoliciesOperations( + self.iot_security_solutions_analytics_recommendation = IotSecuritySolutionsAnalyticsRecommendationOperations( self._client, self._config, self._serialize, self._deserialize ) - self.security_solutions = SecuritySolutionsOperations( + self.locations = LocationsOperations(self._client, self._config, self._serialize, self._deserialize) + self.operation_results = OperationResultsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.security_solutions_reference_data = SecuritySolutionsReferenceDataOperations( + self.operation_statuses = OperationStatusesOperations( self._client, self._config, self._serialize, self._deserialize ) - self.server_vulnerability_assessment = ServerVulnerabilityAssessmentOperations( + self.private_links = PrivateLinksOperations(self._client, self._config, self._serialize, self._deserialize) + self.secure_scores = SecureScoresOperations(self._client, self._config, self._serialize, self._deserialize) + self.secure_score_controls = SecureScoreControlsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.topology = TopologyOperations(self._client, self._config, self._serialize, self._deserialize) - self.alerts = AlertsOperations(self._client, self._config, self._serialize, self._deserialize) - self.settings = SettingsOperations(self._client, self._config, self._serialize, self._deserialize) - self.server_vulnerability_assessments_settings = ServerVulnerabilityAssessmentsSettingsOperations( + self.secure_score_control_definitions = SecureScoreControlDefinitionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.api_collections = APICollectionsOperations(self._client, self._config, self._serialize, self._deserialize) - self.pricings = PricingsOperations(self._client, self._config, self._serialize, self._deserialize) - self.security_standards = SecurityStandardsOperations( + self.git_lab_subgroups = GitLabSubgroupsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.standard_assignments = StandardAssignmentsOperations( + self.dev_ops_operation_results = DevOpsOperationResultsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.custom_recommendations = CustomRecommendationsOperations( + self.azure_dev_ops_repos = AzureDevOpsReposOperations( self._client, self._config, self._serialize, self._deserialize ) - self.standards = StandardsOperations(self._client, self._config, self._serialize, self._deserialize) - self.assignments = AssignmentsOperations(self._client, self._config, self._serialize, self._deserialize) - self.defender_for_storage = DefenderForStorageOperations( + self.git_hub_repos = GitHubReposOperations(self._client, self._config, self._serialize, self._deserialize) + self.git_hub_issues = GitHubIssuesOperations(self._client, self._config, self._serialize, self._deserialize) + self.allowed_connections = AllowedConnectionsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.private_links = PrivateLinksOperations(self._client, self._config, self._serialize, self._deserialize) - self.private_link_resources = PrivateLinkResourcesOperations( + self.server_vulnerability_assessment = ServerVulnerabilityAssessmentOperations( self._client, self._config, self._serialize, self._deserialize ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( + self.topology = TopologyOperations(self._client, self._config, self._serialize, self._deserialize) + self.security_solutions_reference_data = SecuritySolutionsReferenceDataOperations( self._client, self._config, self._serialize, self._deserialize ) - self.secure_scores = SecureScoresOperations(self._client, self._config, self._serialize, self._deserialize) - self.secure_score_controls = SecureScoreControlsOperations( + self.sensitivity_settings = SensitivitySettingsOperations( self._client, self._config, self._serialize, self._deserialize ) - self.secure_score_control_definitions = SecureScoreControlDefinitionsOperations( + self.sql_vulnerability_assessment_settings = SqlVulnerabilityAssessmentSettingsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.sql_vulnerability_assessment_scans = SqlVulnerabilityAssessmentScansOperations( self._client, self._config, self._serialize, self._deserialize ) + self.sub_assessments = SubAssessmentsOperations(self._client, self._config, self._serialize, self._deserialize) - def _send_request( + def send_request( self, request: HttpRequest, *, stream: bool = False, **kwargs: Any ) -> Awaitable[AsyncHttpResponse]: """Runs the network request through the client's chained policies. @@ -540,7 +546,7 @@ def _send_request( >>> from azure.core.rest import HttpRequest >>> request = HttpRequest("GET", "https://www.example.org/") - >>> response = await client._send_request(request) + >>> response = await client.send_request(request) For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request @@ -553,7 +559,11 @@ def _send_request( """ request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + request_copy.url = self._client.format_url(request_copy.url, **path_format_arguments) return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore async def close(self) -> None: diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_configuration.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_configuration.py index b304df95a16b..4aa55906f774 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_configuration.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_configuration.py @@ -2,7 +2,7 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- @@ -18,16 +18,18 @@ from azure.core.credentials_async import AsyncTokenCredential -class SecurityCenterConfiguration: # pylint: disable=too-many-instance-attributes - """Configuration for SecurityCenter. +class SecurityManagementClientConfiguration: # pylint: disable=too-many-instance-attributes + """Configuration for SecurityManagementClient. Note that all parameters used to create this instance are saved as instance attributes. - :param credential: Credential needed for the client to connect to Azure. Required. + :param credential: Credential used to authenticate requests to the service. Required. :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Azure subscription ID. Required. + :param subscription_id: The ID of the target subscription. The value must be an UUID. Required. :type subscription_id: str + :param base_url: Service host. Default value is "https://management.azure.com". + :type base_url: str :param cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is None. :type cloud_setting: ~azure.core.AzureClouds @@ -37,6 +39,7 @@ def __init__( self, credential: "AsyncTokenCredential", subscription_id: str, + base_url: str = "https://management.azure.com", cloud_setting: Optional["AzureClouds"] = None, **kwargs: Any ) -> None: @@ -47,6 +50,7 @@ def __init__( self.credential = credential self.subscription_id = subscription_id + self.base_url = base_url self.cloud_setting = cloud_setting self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) kwargs.setdefault("sdk_moniker", "mgmt-security/{}".format(VERSION)) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_patch.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_patch.py index 8bcb627aa475..87676c65a8f0 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_patch.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/_patch.py @@ -7,9 +7,9 @@ Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize """ -from typing import List -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level + +__all__: list[str] = [] # Add all objects you want publicly available to users at this package level def patch_sdk(): diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/__init__.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/__init__.py index c6ccdcb6b3c4..1ef4abd8acbf 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/__init__.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/__init__.py @@ -1,9 +1,8 @@ -# pylint: disable=line-too-long,useless-suppression # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- # pylint: disable=wrong-import-position @@ -13,162 +12,164 @@ if TYPE_CHECKING: from ._patch import * # pylint: disable=unused-wildcard-import -from ._locations_operations import LocationsOperations # type: ignore -from ._tasks_operations import TasksOperations # type: ignore -from ._auto_provisioning_settings_operations import AutoProvisioningSettingsOperations # type: ignore -from ._compliances_operations import CompliancesOperations # type: ignore -from ._information_protection_policies_operations import InformationProtectionPoliciesOperations # type: ignore -from ._workspace_settings_operations import WorkspaceSettingsOperations # type: ignore -from ._alerts_suppression_rules_operations import AlertsSuppressionRulesOperations # type: ignore -from ._regulatory_compliance_standards_operations import RegulatoryComplianceStandardsOperations # type: ignore -from ._regulatory_compliance_controls_operations import RegulatoryComplianceControlsOperations # type: ignore -from ._regulatory_compliance_assessments_operations import RegulatoryComplianceAssessmentsOperations # type: ignore -from ._sub_assessments_operations import SubAssessmentsOperations # type: ignore -from ._mde_onboardings_operations import MdeOnboardingsOperations # type: ignore -from ._governance_assignments_operations import GovernanceAssignmentsOperations # type: ignore -from ._governance_rules_operations import GovernanceRulesOperations # type: ignore -from ._applications_operations import ApplicationsOperations # type: ignore -from ._application_operations import ApplicationOperations # type: ignore -from ._security_connector_applications_operations import SecurityConnectorApplicationsOperations # type: ignore -from ._security_connector_application_operations import SecurityConnectorApplicationOperations # type: ignore -from ._security_operators_operations import SecurityOperatorsOperations # type: ignore -from ._sql_vulnerability_assessment_baseline_rules_operations import SqlVulnerabilityAssessmentBaselineRulesOperations # type: ignore -from ._sql_vulnerability_assessment_scans_operations import SqlVulnerabilityAssessmentScansOperations # type: ignore -from ._sql_vulnerability_assessment_scan_results_operations import SqlVulnerabilityAssessmentScanResultsOperations # type: ignore -from ._sql_vulnerability_assessment_settings_operations import SqlVulnerabilityAssessmentSettingsOperations # type: ignore -from ._sensitivity_settings_operations import SensitivitySettingsOperations # type: ignore -from ._health_reports_operations import HealthReportsOperations # type: ignore -from ._automations_operations import AutomationsOperations # type: ignore -from ._security_connectors_operations import SecurityConnectorsOperations # type: ignore -from ._azure_dev_ops_orgs_operations import AzureDevOpsOrgsOperations # type: ignore -from ._azure_dev_ops_projects_operations import AzureDevOpsProjectsOperations # type: ignore -from ._azure_dev_ops_repos_operations import AzureDevOpsReposOperations # type: ignore -from ._dev_ops_configurations_operations import DevOpsConfigurationsOperations # type: ignore -from ._git_hub_owners_operations import GitHubOwnersOperations # type: ignore -from ._git_hub_repos_operations import GitHubReposOperations # type: ignore -from ._git_hub_issues_operations import GitHubIssuesOperations # type: ignore -from ._git_lab_groups_operations import GitLabGroupsOperations # type: ignore -from ._git_lab_subgroups_operations import GitLabSubgroupsOperations # type: ignore -from ._git_lab_projects_operations import GitLabProjectsOperations # type: ignore -from ._dev_ops_operation_results_operations import DevOpsOperationResultsOperations # type: ignore +from ._operations import AlertsOperations # type: ignore +from ._operations import AlertsSuppressionRulesOperations # type: ignore +from ._operations import ApplicationsOperations # type: ignore +from ._operations import SecurityConnectorApplicationOperations # type: ignore +from ._operations import AssessmentsMetadataOperations # type: ignore +from ._operations import AutomationsOperations # type: ignore +from ._operations import SecurityContactsOperations # type: ignore +from ._operations import ComplianceResultsOperations # type: ignore +from ._operations import GovernanceAssignmentsOperations # type: ignore +from ._operations import GovernanceRulesOperations # type: ignore +from ._operations import HealthReportsOperations # type: ignore +from ._operations import DeviceSecurityGroupsOperations # type: ignore +from ._operations import AutoProvisioningSettingsOperations # type: ignore +from ._operations import CompliancesOperations # type: ignore +from ._operations import InformationProtectionPoliciesOperations # type: ignore +from ._operations import WorkspaceSettingsOperations # type: ignore +from ._operations import MdeOnboardingsOperations # type: ignore from ._operations import Operations # type: ignore -from ._operation_results_operations import OperationResultsOperations # type: ignore -from ._operation_statuses_operations import OperationStatusesOperations # type: ignore -from ._assessments_metadata_operations import AssessmentsMetadataOperations # type: ignore -from ._assessments_operations import AssessmentsOperations # type: ignore -from ._compliance_results_operations import ComplianceResultsOperations # type: ignore -from ._advanced_threat_protection_operations import AdvancedThreatProtectionOperations # type: ignore -from ._device_security_groups_operations import DeviceSecurityGroupsOperations # type: ignore -from ._iot_security_solution_analytics_operations import IotSecuritySolutionAnalyticsOperations # type: ignore -from ._iot_security_solutions_analytics_aggregated_alert_operations import IotSecuritySolutionsAnalyticsAggregatedAlertOperations # type: ignore -from ._iot_security_solutions_analytics_recommendation_operations import IotSecuritySolutionsAnalyticsRecommendationOperations # type: ignore -from ._iot_security_solution_operations import IotSecuritySolutionOperations # type: ignore -from ._allowed_connections_operations import AllowedConnectionsOperations # type: ignore -from ._discovered_security_solutions_operations import DiscoveredSecuritySolutionsOperations # type: ignore -from ._external_security_solutions_operations import ExternalSecuritySolutionsOperations # type: ignore -from ._jit_network_access_policies_operations import JitNetworkAccessPoliciesOperations # type: ignore -from ._security_solutions_operations import SecuritySolutionsOperations # type: ignore -from ._security_solutions_reference_data_operations import SecuritySolutionsReferenceDataOperations # type: ignore -from ._server_vulnerability_assessment_operations import ServerVulnerabilityAssessmentOperations # type: ignore -from ._topology_operations import TopologyOperations # type: ignore -from ._alerts_operations import AlertsOperations # type: ignore -from ._settings_operations import SettingsOperations # type: ignore -from ._server_vulnerability_assessments_settings_operations import ServerVulnerabilityAssessmentsSettingsOperations # type: ignore -from ._api_collections_operations import APICollectionsOperations # type: ignore -from ._pricings_operations import PricingsOperations # type: ignore -from ._security_standards_operations import SecurityStandardsOperations # type: ignore -from ._standard_assignments_operations import StandardAssignmentsOperations # type: ignore -from ._custom_recommendations_operations import CustomRecommendationsOperations # type: ignore -from ._standards_operations import StandardsOperations # type: ignore -from ._assignments_operations import AssignmentsOperations # type: ignore -from ._defender_for_storage_operations import DefenderForStorageOperations # type: ignore -from ._private_links_operations import PrivateLinksOperations # type: ignore -from ._private_link_resources_operations import PrivateLinkResourcesOperations # type: ignore -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations # type: ignore -from ._secure_scores_operations import SecureScoresOperations # type: ignore -from ._secure_score_controls_operations import SecureScoreControlsOperations # type: ignore -from ._secure_score_control_definitions_operations import SecureScoreControlDefinitionsOperations # type: ignore +from ._operations import PricingsOperations # type: ignore +from ._operations import PrivateLinkResourcesOperations # type: ignore +from ._operations import PrivateEndpointConnectionsOperations # type: ignore +from ._operations import RegulatoryComplianceStandardsOperations # type: ignore +from ._operations import RegulatoryComplianceControlsOperations # type: ignore +from ._operations import RegulatoryComplianceAssessmentsOperations # type: ignore +from ._operations import SecurityConnectorsOperations # type: ignore +from ._operations import AzureDevOpsOrgsOperations # type: ignore +from ._operations import GitHubOwnersOperations # type: ignore +from ._operations import GitLabGroupsOperations # type: ignore +from ._operations import DevOpsConfigurationsOperations # type: ignore +from ._operations import AzureDevOpsProjectsOperations # type: ignore +from ._operations import GitLabProjectsOperations # type: ignore +from ._operations import SecurityOperatorsOperations # type: ignore +from ._operations import DiscoveredSecuritySolutionsOperations # type: ignore +from ._operations import ExternalSecuritySolutionsOperations # type: ignore +from ._operations import JitNetworkAccessPoliciesOperations # type: ignore +from ._operations import SecuritySolutionsOperations # type: ignore +from ._operations import SecurityStandardsOperations # type: ignore +from ._operations import StandardAssignmentsOperations # type: ignore +from ._operations import CustomRecommendationsOperations # type: ignore +from ._operations import ServerVulnerabilityAssessmentsSettingsOperations # type: ignore +from ._operations import SettingsOperations # type: ignore +from ._operations import SqlVulnerabilityAssessmentBaselineRulesOperations # type: ignore +from ._operations import SqlVulnerabilityAssessmentScanResultsOperations # type: ignore +from ._operations import StandardsOperations # type: ignore +from ._operations import AssignmentsOperations # type: ignore +from ._operations import TasksOperations # type: ignore +from ._operations import APICollectionsOperations # type: ignore +from ._operations import ApplicationOperations # type: ignore +from ._operations import SecurityConnectorApplicationsOperations # type: ignore +from ._operations import AssessmentsOperations # type: ignore +from ._operations import AdvancedThreatProtectionOperations # type: ignore +from ._operations import DefenderForStorageOperations # type: ignore +from ._operations import IotSecuritySolutionAnalyticsOperations # type: ignore +from ._operations import IotSecuritySolutionOperations # type: ignore +from ._operations import IotSecuritySolutionsAnalyticsAggregatedAlertOperations # type: ignore +from ._operations import IotSecuritySolutionsAnalyticsRecommendationOperations # type: ignore +from ._operations import LocationsOperations # type: ignore +from ._operations import OperationResultsOperations # type: ignore +from ._operations import OperationStatusesOperations # type: ignore +from ._operations import PrivateLinksOperations # type: ignore +from ._operations import SecureScoresOperations # type: ignore +from ._operations import SecureScoreControlsOperations # type: ignore +from ._operations import SecureScoreControlDefinitionsOperations # type: ignore +from ._operations import GitLabSubgroupsOperations # type: ignore +from ._operations import DevOpsOperationResultsOperations # type: ignore +from ._operations import AzureDevOpsReposOperations # type: ignore +from ._operations import GitHubReposOperations # type: ignore +from ._operations import GitHubIssuesOperations # type: ignore +from ._operations import AllowedConnectionsOperations # type: ignore +from ._operations import ServerVulnerabilityAssessmentOperations # type: ignore +from ._operations import TopologyOperations # type: ignore +from ._operations import SecuritySolutionsReferenceDataOperations # type: ignore +from ._operations import SensitivitySettingsOperations # type: ignore +from ._operations import SqlVulnerabilityAssessmentSettingsOperations # type: ignore +from ._operations import SqlVulnerabilityAssessmentScansOperations # type: ignore +from ._operations import SubAssessmentsOperations # type: ignore from ._patch import __all__ as _patch_all from ._patch import * from ._patch import patch_sdk as _patch_sdk __all__ = [ - "LocationsOperations", - "TasksOperations", + "AlertsOperations", + "AlertsSuppressionRulesOperations", + "ApplicationsOperations", + "SecurityConnectorApplicationOperations", + "AssessmentsMetadataOperations", + "AutomationsOperations", + "SecurityContactsOperations", + "ComplianceResultsOperations", + "GovernanceAssignmentsOperations", + "GovernanceRulesOperations", + "HealthReportsOperations", + "DeviceSecurityGroupsOperations", "AutoProvisioningSettingsOperations", "CompliancesOperations", "InformationProtectionPoliciesOperations", "WorkspaceSettingsOperations", - "AlertsSuppressionRulesOperations", + "MdeOnboardingsOperations", + "Operations", + "PricingsOperations", + "PrivateLinkResourcesOperations", + "PrivateEndpointConnectionsOperations", "RegulatoryComplianceStandardsOperations", "RegulatoryComplianceControlsOperations", "RegulatoryComplianceAssessmentsOperations", - "SubAssessmentsOperations", - "MdeOnboardingsOperations", - "GovernanceAssignmentsOperations", - "GovernanceRulesOperations", - "ApplicationsOperations", - "ApplicationOperations", - "SecurityConnectorApplicationsOperations", - "SecurityConnectorApplicationOperations", - "SecurityOperatorsOperations", - "SqlVulnerabilityAssessmentBaselineRulesOperations", - "SqlVulnerabilityAssessmentScansOperations", - "SqlVulnerabilityAssessmentScanResultsOperations", - "SqlVulnerabilityAssessmentSettingsOperations", - "SensitivitySettingsOperations", - "HealthReportsOperations", - "AutomationsOperations", "SecurityConnectorsOperations", "AzureDevOpsOrgsOperations", - "AzureDevOpsProjectsOperations", - "AzureDevOpsReposOperations", - "DevOpsConfigurationsOperations", "GitHubOwnersOperations", - "GitHubReposOperations", - "GitHubIssuesOperations", "GitLabGroupsOperations", - "GitLabSubgroupsOperations", + "DevOpsConfigurationsOperations", + "AzureDevOpsProjectsOperations", "GitLabProjectsOperations", - "DevOpsOperationResultsOperations", - "Operations", - "OperationResultsOperations", - "OperationStatusesOperations", - "AssessmentsMetadataOperations", - "AssessmentsOperations", - "ComplianceResultsOperations", - "AdvancedThreatProtectionOperations", - "DeviceSecurityGroupsOperations", - "IotSecuritySolutionAnalyticsOperations", - "IotSecuritySolutionsAnalyticsAggregatedAlertOperations", - "IotSecuritySolutionsAnalyticsRecommendationOperations", - "IotSecuritySolutionOperations", - "AllowedConnectionsOperations", + "SecurityOperatorsOperations", "DiscoveredSecuritySolutionsOperations", "ExternalSecuritySolutionsOperations", "JitNetworkAccessPoliciesOperations", "SecuritySolutionsOperations", - "SecuritySolutionsReferenceDataOperations", - "ServerVulnerabilityAssessmentOperations", - "TopologyOperations", - "AlertsOperations", - "SettingsOperations", - "ServerVulnerabilityAssessmentsSettingsOperations", - "APICollectionsOperations", - "PricingsOperations", "SecurityStandardsOperations", "StandardAssignmentsOperations", "CustomRecommendationsOperations", + "ServerVulnerabilityAssessmentsSettingsOperations", + "SettingsOperations", + "SqlVulnerabilityAssessmentBaselineRulesOperations", + "SqlVulnerabilityAssessmentScanResultsOperations", "StandardsOperations", "AssignmentsOperations", + "TasksOperations", + "APICollectionsOperations", + "ApplicationOperations", + "SecurityConnectorApplicationsOperations", + "AssessmentsOperations", + "AdvancedThreatProtectionOperations", "DefenderForStorageOperations", + "IotSecuritySolutionAnalyticsOperations", + "IotSecuritySolutionOperations", + "IotSecuritySolutionsAnalyticsAggregatedAlertOperations", + "IotSecuritySolutionsAnalyticsRecommendationOperations", + "LocationsOperations", + "OperationResultsOperations", + "OperationStatusesOperations", "PrivateLinksOperations", - "PrivateLinkResourcesOperations", - "PrivateEndpointConnectionsOperations", "SecureScoresOperations", "SecureScoreControlsOperations", "SecureScoreControlDefinitionsOperations", + "GitLabSubgroupsOperations", + "DevOpsOperationResultsOperations", + "AzureDevOpsReposOperations", + "GitHubReposOperations", + "GitHubIssuesOperations", + "AllowedConnectionsOperations", + "ServerVulnerabilityAssessmentOperations", + "TopologyOperations", + "SecuritySolutionsReferenceDataOperations", + "SensitivitySettingsOperations", + "SqlVulnerabilityAssessmentSettingsOperations", + "SqlVulnerabilityAssessmentScansOperations", + "SubAssessmentsOperations", ] __all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore _patch_sdk() diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_advanced_threat_protection_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_advanced_threat_protection_operations.py deleted file mode 100644 index 493df0797677..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_advanced_threat_protection_operations.py +++ /dev/null @@ -1,234 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Literal, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._advanced_threat_protection_operations import build_create_request, build_get_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class AdvancedThreatProtectionOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`advanced_threat_protection` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get(self, resource_id: str, **kwargs: Any) -> _models.AdvancedThreatProtectionSetting: - """Gets the Advanced Threat Protection settings for the specified resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :return: AdvancedThreatProtectionSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01")) - setting_name: Literal["current"] = kwargs.pop("setting_name", "current") - cls: ClsType[_models.AdvancedThreatProtectionSetting] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - api_version=api_version, - setting_name=setting_name, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated13, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AdvancedThreatProtectionSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create( - self, - resource_id: str, - advanced_threat_protection_setting: _models.AdvancedThreatProtectionSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AdvancedThreatProtectionSetting: - """Creates or updates the Advanced Threat Protection settings on a specified resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Required. - :type advanced_threat_protection_setting: - ~azure.mgmt.security.models.AdvancedThreatProtectionSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AdvancedThreatProtectionSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create( - self, - resource_id: str, - advanced_threat_protection_setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AdvancedThreatProtectionSetting: - """Creates or updates the Advanced Threat Protection settings on a specified resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Required. - :type advanced_threat_protection_setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AdvancedThreatProtectionSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create( - self, - resource_id: str, - advanced_threat_protection_setting: Union[_models.AdvancedThreatProtectionSetting, IO[bytes]], - **kwargs: Any - ) -> _models.AdvancedThreatProtectionSetting: - """Creates or updates the Advanced Threat Protection settings on a specified resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Is either a - AdvancedThreatProtectionSetting type or a IO[bytes] type. Required. - :type advanced_threat_protection_setting: - ~azure.mgmt.security.models.AdvancedThreatProtectionSetting or IO[bytes] - :return: AdvancedThreatProtectionSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01")) - setting_name: Literal["current"] = kwargs.pop("setting_name", "current") - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AdvancedThreatProtectionSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(advanced_threat_protection_setting, (IOBase, bytes)): - _content = advanced_threat_protection_setting - else: - _json = self._serialize.body(advanced_threat_protection_setting, "AdvancedThreatProtectionSetting") - - _request = build_create_request( - resource_id=resource_id, - api_version=api_version, - setting_name=setting_name, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated13, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AdvancedThreatProtectionSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_operations.py deleted file mode 100644 index 45861865dc42..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_operations.py +++ /dev/null @@ -1,1142 +0,0 @@ -# pylint: disable=too-many-lines -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._alerts_operations import ( - build_get_resource_group_level_request, - build_get_subscription_level_request, - build_list_by_resource_group_request, - build_list_request, - build_list_resource_group_level_by_region_request, - build_list_subscription_level_by_region_request, - build_simulate_request, - build_update_resource_group_level_state_to_activate_request, - build_update_resource_group_level_state_to_dismiss_request, - build_update_resource_group_level_state_to_in_progress_request, - build_update_resource_group_level_state_to_resolve_request, - build_update_subscription_level_state_to_activate_request, - build_update_subscription_level_state_to_dismiss_request, - build_update_subscription_level_state_to_in_progress_request, - build_update_subscription_level_state_to_resolve_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class AlertsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`alerts` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.Alert"]: - """List all the alerts that are associated with the subscription. - - :return: An iterator like instance of either Alert or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Alert] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[_models.AlertList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AlertList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.Alert"]: - """List all the alerts that are associated with the resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either Alert or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Alert] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[_models.AlertList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AlertList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_subscription_level_by_region(self, asc_location: str, **kwargs: Any) -> AsyncItemPaged["_models.Alert"]: - """List all the alerts that are associated with the subscription that are stored in a specific - location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either Alert or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Alert] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[_models.AlertList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_subscription_level_by_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AlertList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_resource_group_level_by_region( - self, asc_location: str, resource_group_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.Alert"]: - """List all the alerts that are associated with the resource group that are stored in a specific - location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either Alert or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Alert] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[_models.AlertList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_resource_group_level_by_region_request( - asc_location=asc_location, - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AlertList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get_subscription_level(self, asc_location: str, alert_name: str, **kwargs: Any) -> _models.Alert: - """Get an alert that is associated with a subscription. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: Alert or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Alert - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[_models.Alert] = kwargs.pop("cls", None) - - _request = build_get_subscription_level_request( - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Alert", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_resource_group_level( - self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any - ) -> _models.Alert: - """Get an alert that is associated a resource group or a resource in a resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: Alert or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Alert - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[_models.Alert] = kwargs.pop("cls", None) - - _request = build_get_resource_group_level_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Alert", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def update_subscription_level_state_to_dismiss( # pylint: disable=name-too-long - self, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_subscription_level_state_to_dismiss_request( - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def update_subscription_level_state_to_resolve( # pylint: disable=name-too-long - self, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_subscription_level_state_to_resolve_request( - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def update_subscription_level_state_to_activate( # pylint: disable=name-too-long - self, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_subscription_level_state_to_activate_request( - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def update_subscription_level_state_to_in_progress( # pylint: disable=name-too-long - self, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_subscription_level_state_to_in_progress_request( - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def update_resource_group_level_state_to_resolve( # pylint: disable=name-too-long - self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_resource_group_level_state_to_resolve_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def update_resource_group_level_state_to_dismiss( # pylint: disable=name-too-long - self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_resource_group_level_state_to_dismiss_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def update_resource_group_level_state_to_activate( # pylint: disable=name-too-long - self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_resource_group_level_state_to_activate_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def update_resource_group_level_state_to_in_progress( # pylint: disable=name-too-long - self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_resource_group_level_state_to_in_progress_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - async def _simulate_initial( - self, - asc_location: str, - alert_simulator_request_body: Union[_models.AlertSimulatorRequestBody, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(alert_simulator_request_body, (IOBase, bytes)): - _content = alert_simulator_request_body - else: - _json = self._serialize.body(alert_simulator_request_body, "AlertSimulatorRequestBody") - - _request = build_simulate_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_simulate( - self, - asc_location: str, - alert_simulator_request_body: _models.AlertSimulatorRequestBody, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[None]: - """Simulate security alerts. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_simulator_request_body: Alert Simulator Request Properties. Required. - :type alert_simulator_request_body: ~azure.mgmt.security.models.AlertSimulatorRequestBody - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_simulate( - self, - asc_location: str, - alert_simulator_request_body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[None]: - """Simulate security alerts. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_simulator_request_body: Alert Simulator Request Properties. Required. - :type alert_simulator_request_body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_simulate( - self, - asc_location: str, - alert_simulator_request_body: Union[_models.AlertSimulatorRequestBody, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[None]: - """Simulate security alerts. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_simulator_request_body: Alert Simulator Request Properties. Is either a - AlertSimulatorRequestBody type or a IO[bytes] type. Required. - :type alert_simulator_request_body: ~azure.mgmt.security.models.AlertSimulatorRequestBody or - IO[bytes] - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._simulate_initial( - asc_location=asc_location, - alert_simulator_request_body=alert_simulator_request_body, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "original-uri"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_suppression_rules_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_suppression_rules_operations.py deleted file mode 100644 index bfb1a302c26e..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_alerts_suppression_rules_operations.py +++ /dev/null @@ -1,360 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._alerts_suppression_rules_operations import ( - build_delete_request, - build_get_request, - build_list_request, - build_update_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class AlertsSuppressionRulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`alerts_suppression_rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, alert_type: Optional[str] = None, **kwargs: Any) -> AsyncItemPaged["_models.AlertsSuppressionRule"]: - """List of all the dismiss rules for the given subscription. - - :param alert_type: Type of the alert to get rules for. Default value is None. - :type alert_type: str - :return: An iterator like instance of either AlertsSuppressionRule or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AlertsSuppressionRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.AlertsSuppressionRulesList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - alert_type=alert_type, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AlertsSuppressionRulesList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, alerts_suppression_rule_name: str, **kwargs: Any) -> _models.AlertsSuppressionRule: - """Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription. - - :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. - :type alerts_suppression_rule_name: str - :return: AlertsSuppressionRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.AlertsSuppressionRule] = kwargs.pop("cls", None) - - _request = build_get_request( - alerts_suppression_rule_name=alerts_suppression_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AlertsSuppressionRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - alerts_suppression_rule_name: str, - alerts_suppression_rule: _models.AlertsSuppressionRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AlertsSuppressionRule: - """Update existing rule or create new rule if it doesn't exist. - - :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. - :type alerts_suppression_rule_name: str - :param alerts_suppression_rule: Suppression rule object. Required. - :type alerts_suppression_rule: ~azure.mgmt.security.models.AlertsSuppressionRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AlertsSuppressionRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - alerts_suppression_rule_name: str, - alerts_suppression_rule: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AlertsSuppressionRule: - """Update existing rule or create new rule if it doesn't exist. - - :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. - :type alerts_suppression_rule_name: str - :param alerts_suppression_rule: Suppression rule object. Required. - :type alerts_suppression_rule: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AlertsSuppressionRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - alerts_suppression_rule_name: str, - alerts_suppression_rule: Union[_models.AlertsSuppressionRule, IO[bytes]], - **kwargs: Any - ) -> _models.AlertsSuppressionRule: - """Update existing rule or create new rule if it doesn't exist. - - :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. - :type alerts_suppression_rule_name: str - :param alerts_suppression_rule: Suppression rule object. Is either a AlertsSuppressionRule type - or a IO[bytes] type. Required. - :type alerts_suppression_rule: ~azure.mgmt.security.models.AlertsSuppressionRule or IO[bytes] - :return: AlertsSuppressionRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AlertsSuppressionRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(alerts_suppression_rule, (IOBase, bytes)): - _content = alerts_suppression_rule - else: - _json = self._serialize.body(alerts_suppression_rule, "AlertsSuppressionRule") - - _request = build_update_request( - alerts_suppression_rule_name=alerts_suppression_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AlertsSuppressionRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, alerts_suppression_rule_name: str, **kwargs: Any) -> None: - """Delete dismiss alert rule for this subscription. - - :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. - :type alerts_suppression_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - alerts_suppression_rule_name=alerts_suppression_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_allowed_connections_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_allowed_connections_operations.py deleted file mode 100644 index ed002f75ebea..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_allowed_connections_operations.py +++ /dev/null @@ -1,274 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar, Union - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._allowed_connections_operations import ( - build_get_request, - build_list_by_home_region_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class AllowedConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`allowed_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.AllowedConnectionsResource"]: - """Gets the list of all possible traffic between resources for the subscription. - - :return: An iterator like instance of either AllowedConnectionsResource or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AllowedConnectionsResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.AllowedConnectionsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AllowedConnectionsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_home_region( - self, asc_location: str, **kwargs: Any - ) -> AsyncItemPaged["_models.AllowedConnectionsResource"]: - """Gets the list of all possible traffic between resources for the subscription and location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either AllowedConnectionsResource or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AllowedConnectionsResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.AllowedConnectionsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_home_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AllowedConnectionsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - asc_location: str, - connection_type: Union[str, _models.ConnectionType], - **kwargs: Any - ) -> _models.AllowedConnectionsResource: - """Gets the list of all possible traffic between resources for the subscription and location, - based on connection type. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param connection_type: The type of allowed connections (Internal, External). Known values are: - "Internal" and "External". Required. - :type connection_type: str or ~azure.mgmt.security.models.ConnectionType - :return: AllowedConnectionsResource or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AllowedConnectionsResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.AllowedConnectionsResource] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - connection_type=connection_type, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AllowedConnectionsResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_api_collections_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_api_collections_operations.py deleted file mode 100644 index fdf24edc0dcc..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_api_collections_operations.py +++ /dev/null @@ -1,556 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, AsyncIterator, Callable, Optional, TypeVar, Union, cast - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._api_collections_operations import ( - build_get_by_azure_api_management_service_request, - build_list_by_azure_api_management_service_request, - build_list_by_resource_group_request, - build_list_by_subscription_request, - build_offboard_azure_api_management_api_request, - build_onboard_azure_api_management_api_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class APICollectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`api_collections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.ApiCollection"]: - """Gets a list of API collections within a subscription. - - Gets a list of API collections within a subscription that have been onboarded to Microsoft - Defender for APIs. - - :return: An iterator like instance of either ApiCollection or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ApiCollection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[_models.ApiCollectionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ApiCollectionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.ApiCollection"]: - """Gets a list of API collections within a resource group. - - Gets a list of API collections within a resource group that have been onboarded to Microsoft - Defender for APIs. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :return: An iterator like instance of either ApiCollection or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ApiCollection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[_models.ApiCollectionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ApiCollectionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_azure_api_management_service( - self, resource_group_name: str, service_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.ApiCollection"]: - """Gets a list of onboarded Azure API Management APIs. - - Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for - APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system - will monitor the operations within the Azure API Management API for intrusive behaviors and - provide alerts for attacks that have been detected. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param service_name: The name of the API Management service. Required. - :type service_name: str - :return: An iterator like instance of either ApiCollection or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ApiCollection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[_models.ApiCollectionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_azure_api_management_service_request( - resource_group_name=resource_group_name, - service_name=service_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ApiCollectionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get_by_azure_api_management_service( - self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any - ) -> _models.ApiCollection: - """Gets an onboarded Azure API Management API. - - Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an - Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor - the operations within the Azure API Management API for intrusive behaviors and provide alerts - for attacks that have been detected. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param service_name: The name of the API Management service. Required. - :type service_name: str - :param api_id: API revision identifier. Must be unique in the API Management service instance. - Non-current revision has ;rev=n as a suffix where n is the revision number. Required. - :type api_id: str - :return: ApiCollection or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ApiCollection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[_models.ApiCollection] = kwargs.pop("cls", None) - - _request = build_get_by_azure_api_management_service_request( - resource_group_name=resource_group_name, - service_name=service_name, - api_id=api_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ApiCollection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _onboard_azure_api_management_api_initial( # pylint: disable=name-too-long - self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_onboard_azure_api_management_api_request( - resource_group_name=resource_group_name, - service_name=service_name, - api_id=api_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 201: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_onboard_azure_api_management_api( - self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any - ) -> AsyncLROPoller[_models.ApiCollection]: - """Onboard an Azure API Management API to Microsoft Defender for APIs. - - Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start - monitoring the operations within the Azure Management API for intrusive behaviors and provide - alerts for attacks that have been detected. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param service_name: The name of the API Management service. Required. - :type service_name: str - :param api_id: API revision identifier. Must be unique in the API Management service instance. - Non-current revision has ;rev=n as a suffix where n is the revision number. Required. - :type api_id: str - :return: An instance of AsyncLROPoller that returns either ApiCollection or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.ApiCollection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[_models.ApiCollection] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._onboard_azure_api_management_api_initial( - resource_group_name=resource_group_name, - service_name=service_name, - api_id=api_id, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("ApiCollection", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, AsyncARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.ApiCollection].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.ApiCollection]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace_async - async def offboard_azure_api_management_api( - self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any - ) -> None: - """Offboard an Azure API Management API from Microsoft Defender for APIs. - - Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop - monitoring the operations within the Azure API Management API for intrusive behaviors. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param service_name: The name of the API Management service. Required. - :type service_name: str - :param api_id: API revision identifier. Must be unique in the API Management service instance. - Non-current revision has ;rev=n as a suffix where n is the revision number. Required. - :type api_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_offboard_azure_api_management_api_request( - resource_group_name=resource_group_name, - service_name=service_name, - api_id=api_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_application_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_application_operations.py deleted file mode 100644 index 9862c247c4a3..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_application_operations.py +++ /dev/null @@ -1,278 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._application_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class ApplicationOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`application` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get(self, application_id: str, **kwargs: Any) -> _models.Application: - """Get a specific application for the requested scope by applicationId. - - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - cls: ClsType[_models.Application] = kwargs.pop("cls", None) - - _request = build_get_request( - application_id=application_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated5, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Application", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - application_id: str, - application: _models.Application, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Application: - """Creates or update a security application on the given subscription. - - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :param application: Application over a subscription scope. Required. - :type application: ~azure.mgmt.security.models.Application - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, application_id: str, application: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.Application: - """Creates or update a security application on the given subscription. - - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :param application: Application over a subscription scope. Required. - :type application: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, application_id: str, application: Union[_models.Application, IO[bytes]], **kwargs: Any - ) -> _models.Application: - """Creates or update a security application on the given subscription. - - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :param application: Application over a subscription scope. Is either a Application type or a - IO[bytes] type. Required. - :type application: ~azure.mgmt.security.models.Application or IO[bytes] - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Application] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(application, (IOBase, bytes)): - _content = application - else: - _json = self._serialize.body(application, "Application") - - _request = build_create_or_update_request( - application_id=application_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated5, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Application", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, application_id: str, **kwargs: Any) -> None: - """Delete an Application over a given scope. - - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - application_id=application_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_applications_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_applications_operations.py deleted file mode 100644 index 9c933929a16d..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_applications_operations.py +++ /dev/null @@ -1,121 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._applications_operations import build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class ApplicationsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`applications` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.Application"]: - """Get a list of all relevant applications over a subscription level scope. - - :return: An iterator like instance of either Application or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Application] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - cls: ClsType[_models.ApplicationsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ApplicationsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated5, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_metadata_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_metadata_operations.py deleted file mode 100644 index c7e960d31958..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_metadata_operations.py +++ /dev/null @@ -1,491 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._assessments_metadata_operations import ( - build_create_in_subscription_request, - build_delete_in_subscription_request, - build_get_in_subscription_request, - build_get_request, - build_list_by_subscription_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class AssessmentsMetadataOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`assessments_metadata` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecurityAssessmentMetadataResponse"]: - """Get metadata information on all assessment types. - - :return: An iterator like instance of either SecurityAssessmentMetadataResponse or the result - of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityAssessmentMetadataResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[_models.SecurityAssessmentMetadataResponseList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityAssessmentMetadataResponseList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, assessment_metadata_name: str, **kwargs: Any) -> _models.SecurityAssessmentMetadataResponse: - """Get metadata information on an assessment type. - - :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. - Required. - :type assessment_metadata_name: str - :return: SecurityAssessmentMetadataResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) - - _request = build_get_request( - assessment_metadata_name=assessment_metadata_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityAssessmentMetadataResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.SecurityAssessmentMetadataResponse"]: - """Get metadata information on all assessment types in a specific subscription. - - :return: An iterator like instance of either SecurityAssessmentMetadataResponse or the result - of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityAssessmentMetadataResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[_models.SecurityAssessmentMetadataResponseList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityAssessmentMetadataResponseList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get_in_subscription( - self, assessment_metadata_name: str, **kwargs: Any - ) -> _models.SecurityAssessmentMetadataResponse: - """Get metadata information on an assessment type in a specific subscription. - - :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. - Required. - :type assessment_metadata_name: str - :return: SecurityAssessmentMetadataResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) - - _request = build_get_in_subscription_request( - assessment_metadata_name=assessment_metadata_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityAssessmentMetadataResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_in_subscription( - self, - assessment_metadata_name: str, - assessment_metadata: _models.SecurityAssessmentMetadataResponse, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityAssessmentMetadataResponse: - """Create metadata information on an assessment type in a specific subscription. - - :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. - Required. - :type assessment_metadata_name: str - :param assessment_metadata: AssessmentMetadata object. Required. - :type assessment_metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityAssessmentMetadataResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_in_subscription( - self, - assessment_metadata_name: str, - assessment_metadata: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityAssessmentMetadataResponse: - """Create metadata information on an assessment type in a specific subscription. - - :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. - Required. - :type assessment_metadata_name: str - :param assessment_metadata: AssessmentMetadata object. Required. - :type assessment_metadata: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityAssessmentMetadataResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_in_subscription( - self, - assessment_metadata_name: str, - assessment_metadata: Union[_models.SecurityAssessmentMetadataResponse, IO[bytes]], - **kwargs: Any - ) -> _models.SecurityAssessmentMetadataResponse: - """Create metadata information on an assessment type in a specific subscription. - - :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. - Required. - :type assessment_metadata_name: str - :param assessment_metadata: AssessmentMetadata object. Is either a - SecurityAssessmentMetadataResponse type or a IO[bytes] type. Required. - :type assessment_metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse or - IO[bytes] - :return: SecurityAssessmentMetadataResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(assessment_metadata, (IOBase, bytes)): - _content = assessment_metadata - else: - _json = self._serialize.body(assessment_metadata, "SecurityAssessmentMetadataResponse") - - _request = build_create_in_subscription_request( - assessment_metadata_name=assessment_metadata_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityAssessmentMetadataResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_in_subscription(self, assessment_metadata_name: str, **kwargs: Any) -> None: - """Delete metadata information on an assessment type in a specific subscription, will cause the - deletion of all the assessments of that type in that subscription. - - :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. - Required. - :type assessment_metadata_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_in_subscription_request( - assessment_metadata_name=assessment_metadata_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_operations.py deleted file mode 100644 index 2ebc516ebec6..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assessments_operations.py +++ /dev/null @@ -1,388 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._assessments_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class AssessmentsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`assessments` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.SecurityAssessmentResponse"]: - """Get security assessments on all your scanned resources inside a scope. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :return: An iterator like instance of either SecurityAssessmentResponse or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityAssessmentResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[_models.SecurityAssessmentList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityAssessmentList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, - resource_id: str, - assessment_name: str, - expand: Optional[Union[str, _models.ExpandEnum]] = None, - **kwargs: Any - ) -> _models.SecurityAssessmentResponse: - """Get a security assessment on your scanned resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :param expand: OData expand. Optional. Known values are: "links" and "metadata". Default value - is None. - :type expand: str or ~azure.mgmt.security.models.ExpandEnum - :return: SecurityAssessmentResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[_models.SecurityAssessmentResponse] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - assessment_name=assessment_name, - expand=expand, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityAssessmentResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - resource_id: str, - assessment_name: str, - assessment: _models.SecurityAssessment, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityAssessmentResponse: - """Create a security assessment on your resource. An assessment metadata that describes this - assessment must be predefined with the same name before inserting the assessment result. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :param assessment: Calculated assessment on a pre-defined assessment metadata. Required. - :type assessment: ~azure.mgmt.security.models.SecurityAssessment - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityAssessmentResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_id: str, - assessment_name: str, - assessment: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityAssessmentResponse: - """Create a security assessment on your resource. An assessment metadata that describes this - assessment must be predefined with the same name before inserting the assessment result. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :param assessment: Calculated assessment on a pre-defined assessment metadata. Required. - :type assessment: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityAssessmentResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_id: str, - assessment_name: str, - assessment: Union[_models.SecurityAssessment, IO[bytes]], - **kwargs: Any - ) -> _models.SecurityAssessmentResponse: - """Create a security assessment on your resource. An assessment metadata that describes this - assessment must be predefined with the same name before inserting the assessment result. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :param assessment: Calculated assessment on a pre-defined assessment metadata. Is either a - SecurityAssessment type or a IO[bytes] type. Required. - :type assessment: ~azure.mgmt.security.models.SecurityAssessment or IO[bytes] - :return: SecurityAssessmentResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SecurityAssessmentResponse] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(assessment, (IOBase, bytes)): - _content = assessment - else: - _json = self._serialize.body(assessment, "SecurityAssessment") - - _request = build_create_or_update_request( - resource_id=resource_id, - assessment_name=assessment_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityAssessmentResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, resource_id: str, assessment_name: str, **kwargs: Any) -> None: - """Delete a security assessment on your resource. An assessment metadata that describes this - assessment must be predefined with the same name before inserting the assessment result. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_id=resource_id, - assessment_name=assessment_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assignments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assignments_operations.py deleted file mode 100644 index 56118766b811..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_assignments_operations.py +++ /dev/null @@ -1,452 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._assignments_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_subscription_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class AssignmentsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`assignments` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.Assignment"]: - """Get a list of all relevant standardAssignments over a subscription level scope. - - :return: An iterator like instance of either Assignment or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Assignment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[_models.AssignmentList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AssignmentList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.Assignment"]: - """Get a list of all relevant standardAssignments available for scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either Assignment or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Assignment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[_models.AssignmentList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AssignmentList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, resource_group_name: str, assignment_id: str, **kwargs: Any) -> _models.Assignment: - """Get a specific standard assignment for the requested scope by resourceId. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param assignment_id: The security assignment key - unique key for the standard assignment. - Required. - :type assignment_id: str - :return: Assignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Assignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[_models.Assignment] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - assignment_id=assignment_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Assignment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - resource_group_name: str, - assignment_id: str, - assignment: _models.Assignment, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Assignment: - """Create a security assignment on the given scope. Will create/update the required standard - assignment. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param assignment_id: The security assignment key - unique key for the standard assignment. - Required. - :type assignment_id: str - :param assignment: Custom standard assignment over a pre-defined scope. Required. - :type assignment: ~azure.mgmt.security.models.Assignment - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Assignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Assignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - assignment_id: str, - assignment: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Assignment: - """Create a security assignment on the given scope. Will create/update the required standard - assignment. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param assignment_id: The security assignment key - unique key for the standard assignment. - Required. - :type assignment_id: str - :param assignment: Custom standard assignment over a pre-defined scope. Required. - :type assignment: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Assignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Assignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - assignment_id: str, - assignment: Union[_models.Assignment, IO[bytes]], - **kwargs: Any - ) -> _models.Assignment: - """Create a security assignment on the given scope. Will create/update the required standard - assignment. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param assignment_id: The security assignment key - unique key for the standard assignment. - Required. - :type assignment_id: str - :param assignment: Custom standard assignment over a pre-defined scope. Is either a Assignment - type or a IO[bytes] type. Required. - :type assignment: ~azure.mgmt.security.models.Assignment or IO[bytes] - :return: Assignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Assignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Assignment] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(assignment, (IOBase, bytes)): - _content = assignment - else: - _json = self._serialize.body(assignment, "Assignment") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - assignment_id=assignment_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Assignment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, resource_group_name: str, assignment_id: str, **kwargs: Any) -> None: - """Delete a standard assignment over a given scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param assignment_id: The security assignment key - unique key for the standard assignment. - Required. - :type assignment_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - assignment_id=assignment_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_auto_provisioning_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_auto_provisioning_settings_operations.py deleted file mode 100644 index 24b42b005144..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_auto_provisioning_settings_operations.py +++ /dev/null @@ -1,297 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._auto_provisioning_settings_operations import ( - build_create_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class AutoProvisioningSettingsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`auto_provisioning_settings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.AutoProvisioningSetting"]: - """Exposes the auto provisioning settings of the subscriptions. - - :return: An iterator like instance of either AutoProvisioningSetting or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AutoProvisioningSetting] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.AutoProvisioningSettingList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AutoProvisioningSettingList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, setting_name: str, **kwargs: Any) -> _models.AutoProvisioningSetting: - """Details of a specific setting. - - :param setting_name: Auto provisioning setting key. Required. - :type setting_name: str - :return: AutoProvisioningSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.AutoProvisioningSetting] = kwargs.pop("cls", None) - - _request = build_get_request( - setting_name=setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AutoProvisioningSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create( - self, - setting_name: str, - setting: _models.AutoProvisioningSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AutoProvisioningSetting: - """Details of a specific setting. - - :param setting_name: Auto provisioning setting key. Required. - :type setting_name: str - :param setting: Auto provisioning setting key. Required. - :type setting: ~azure.mgmt.security.models.AutoProvisioningSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AutoProvisioningSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create( - self, setting_name: str, setting: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.AutoProvisioningSetting: - """Details of a specific setting. - - :param setting_name: Auto provisioning setting key. Required. - :type setting_name: str - :param setting: Auto provisioning setting key. Required. - :type setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AutoProvisioningSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create( - self, setting_name: str, setting: Union[_models.AutoProvisioningSetting, IO[bytes]], **kwargs: Any - ) -> _models.AutoProvisioningSetting: - """Details of a specific setting. - - :param setting_name: Auto provisioning setting key. Required. - :type setting_name: str - :param setting: Auto provisioning setting key. Is either a AutoProvisioningSetting type or a - IO[bytes] type. Required. - :type setting: ~azure.mgmt.security.models.AutoProvisioningSetting or IO[bytes] - :return: AutoProvisioningSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutoProvisioningSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(setting, (IOBase, bytes)): - _content = setting - else: - _json = self._serialize.body(setting, "AutoProvisioningSetting") - - _request = build_create_request( - setting_name=setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AutoProvisioningSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_automations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_automations_operations.py deleted file mode 100644 index f5d29100d49d..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_automations_operations.py +++ /dev/null @@ -1,726 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._automations_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_resource_group_request, - build_list_request, - build_update_request, - build_validate_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class AutomationsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`automations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.Automation"]: - """Lists all the security automations in the specified subscription. Use the 'nextLink' property - in the response to get the next page of security automations for the specified subscription. - - :return: An iterator like instance of either Automation or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Automation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[_models.AutomationList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AutomationList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.Automation"]: - """Lists all the security automations in the specified resource group. Use the 'nextLink' property - in the response to get the next page of security automations for the specified resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either Automation or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Automation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[_models.AutomationList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AutomationList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, resource_group_name: str, automation_name: str, **kwargs: Any) -> _models.Automation: - """Retrieves information about the model of a security automation. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[_models.Automation] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - automation_name=automation_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Automation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - resource_group_name: str, - automation_name: str, - automation: _models.Automation, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Automation: - """Creates or updates a security automation. If a security automation is already created and a - subsequent request is issued for the same automation id, then it will be updated. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The security automation resource. Required. - :type automation: ~azure.mgmt.security.models.Automation - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - automation_name: str, - automation: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Automation: - """Creates or updates a security automation. If a security automation is already created and a - subsequent request is issued for the same automation id, then it will be updated. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The security automation resource. Required. - :type automation: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - automation_name: str, - automation: Union[_models.Automation, IO[bytes]], - **kwargs: Any - ) -> _models.Automation: - """Creates or updates a security automation. If a security automation is already created and a - subsequent request is issued for the same automation id, then it will be updated. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The security automation resource. Is either a Automation type or a IO[bytes] - type. Required. - :type automation: ~azure.mgmt.security.models.Automation or IO[bytes] - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Automation] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(automation, (IOBase, bytes)): - _content = automation - else: - _json = self._serialize.body(automation, "Automation") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - automation_name=automation_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Automation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - resource_group_name: str, - automation_name: str, - automation: _models.AutomationUpdateModel, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Automation: - """Updates a security automation. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The update model of security automation resource. Required. - :type automation: ~azure.mgmt.security.models.AutomationUpdateModel - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - resource_group_name: str, - automation_name: str, - automation: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Automation: - """Updates a security automation. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The update model of security automation resource. Required. - :type automation: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - resource_group_name: str, - automation_name: str, - automation: Union[_models.AutomationUpdateModel, IO[bytes]], - **kwargs: Any - ) -> _models.Automation: - """Updates a security automation. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The update model of security automation resource. Is either a - AutomationUpdateModel type or a IO[bytes] type. Required. - :type automation: ~azure.mgmt.security.models.AutomationUpdateModel or IO[bytes] - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Automation] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(automation, (IOBase, bytes)): - _content = automation - else: - _json = self._serialize.body(automation, "AutomationUpdateModel") - - _request = build_update_request( - resource_group_name=resource_group_name, - automation_name=automation_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Automation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, resource_group_name: str, automation_name: str, **kwargs: Any) -> None: - """Deletes a security automation. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - automation_name=automation_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - async def validate( - self, - resource_group_name: str, - automation_name: str, - automation: _models.Automation, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AutomationValidationStatus: - """Validates the security automation model before create or update. Any validation errors are - returned to the client. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The security automation resource. Required. - :type automation: ~azure.mgmt.security.models.Automation - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AutomationValidationStatus or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutomationValidationStatus - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def validate( - self, - resource_group_name: str, - automation_name: str, - automation: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AutomationValidationStatus: - """Validates the security automation model before create or update. Any validation errors are - returned to the client. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The security automation resource. Required. - :type automation: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AutomationValidationStatus or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutomationValidationStatus - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def validate( - self, - resource_group_name: str, - automation_name: str, - automation: Union[_models.Automation, IO[bytes]], - **kwargs: Any - ) -> _models.AutomationValidationStatus: - """Validates the security automation model before create or update. Any validation errors are - returned to the client. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The security automation resource. Is either a Automation type or a IO[bytes] - type. Required. - :type automation: ~azure.mgmt.security.models.Automation or IO[bytes] - :return: AutomationValidationStatus or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutomationValidationStatus - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutomationValidationStatus] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(automation, (IOBase, bytes)): - _content = automation - else: - _json = self._serialize.body(automation, "Automation") - - _request = build_validate_request( - resource_group_name=resource_group_name, - automation_name=automation_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AutomationValidationStatus", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_orgs_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_orgs_operations.py deleted file mode 100644 index 069d296b6d63..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_orgs_operations.py +++ /dev/null @@ -1,709 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._azure_dev_ops_orgs_operations import ( - build_create_or_update_request, - build_get_request, - build_list_available_request, - build_list_request, - build_update_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class AzureDevOpsOrgsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`azure_dev_ops_orgs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def list_available( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> _models.AzureDevOpsOrgListResponse: - """Returns a list of all Azure DevOps organizations accessible by the user token consumed by the - connector. - - Returns a list of all Azure DevOps organizations accessible by the user token consumed by the - connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: AzureDevOpsOrgListResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AzureDevOpsOrgListResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsOrgListResponse] = kwargs.pop("cls", None) - - _request = build_list_available_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AzureDevOpsOrgListResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.AzureDevOpsOrg"]: - """Returns a list of Azure DevOps organizations onboarded to the connector. - - Returns a list of Azure DevOps organizations onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: An iterator like instance of either AzureDevOpsOrg or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsOrgListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AzureDevOpsOrgListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, security_connector_name: str, org_name: str, **kwargs: Any - ) -> _models.AzureDevOpsOrg: - """Returns a monitored Azure DevOps organization resource. - - Returns a monitored Azure DevOps organization resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :return: AzureDevOpsOrg or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AzureDevOpsOrg - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AzureDevOpsOrg", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _create_or_update_initial( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: Union[_models.AzureDevOpsOrg, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(azure_dev_ops_org, (IOBase, bytes)): - _content = azure_dev_ops_org - else: - _json = self._serialize.body(azure_dev_ops_org, "AzureDevOpsOrg") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: _models.AzureDevOpsOrg, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: - """Creates or updates monitored Azure DevOps organization details. - - Creates or updates monitored Azure DevOps organization details. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. - :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either AzureDevOpsOrg or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: - """Creates or updates monitored Azure DevOps organization details. - - Creates or updates monitored Azure DevOps organization details. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. - :type azure_dev_ops_org: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either AzureDevOpsOrg or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: Union[_models.AzureDevOpsOrg, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: - """Creates or updates monitored Azure DevOps organization details. - - Creates or updates monitored Azure DevOps organization details. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param azure_dev_ops_org: The Azure DevOps organization resource payload. Is either a - AzureDevOpsOrg type or a IO[bytes] type. Required. - :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg or IO[bytes] - :return: An instance of AsyncLROPoller that returns either AzureDevOpsOrg or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - azure_dev_ops_org=azure_dev_ops_org, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("AzureDevOpsOrg", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.AzureDevOpsOrg].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.AzureDevOpsOrg]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _update_initial( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: Union[_models.AzureDevOpsOrg, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(azure_dev_ops_org, (IOBase, bytes)): - _content = azure_dev_ops_org - else: - _json = self._serialize.body(azure_dev_ops_org, "AzureDevOpsOrg") - - _request = build_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: _models.AzureDevOpsOrg, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: - """Updates monitored Azure DevOps organization details. - - Updates monitored Azure DevOps organization details. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. - :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either AzureDevOpsOrg or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: - """Updates monitored Azure DevOps organization details. - - Updates monitored Azure DevOps organization details. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. - :type azure_dev_ops_org: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either AzureDevOpsOrg or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: Union[_models.AzureDevOpsOrg, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: - """Updates monitored Azure DevOps organization details. - - Updates monitored Azure DevOps organization details. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param azure_dev_ops_org: The Azure DevOps organization resource payload. Is either a - AzureDevOpsOrg type or a IO[bytes] type. Required. - :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg or IO[bytes] - :return: An instance of AsyncLROPoller that returns either AzureDevOpsOrg or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - azure_dev_ops_org=azure_dev_ops_org, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("AzureDevOpsOrg", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.AzureDevOpsOrg].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.AzureDevOpsOrg]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_projects_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_projects_operations.py deleted file mode 100644 index d975cfbd845e..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_projects_operations.py +++ /dev/null @@ -1,673 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._azure_dev_ops_projects_operations import ( - build_create_or_update_request, - build_get_request, - build_list_request, - build_update_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class AzureDevOpsProjectsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`azure_dev_ops_projects` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, org_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.AzureDevOpsProject"]: - """Returns a list of Azure DevOps projects onboarded to the connector. - - Returns a list of Azure DevOps projects onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :return: An iterator like instance of either AzureDevOpsProject or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsProjectListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AzureDevOpsProjectListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, security_connector_name: str, org_name: str, project_name: str, **kwargs: Any - ) -> _models.AzureDevOpsProject: - """Returns a monitored Azure DevOps project resource. - - Returns a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :return: AzureDevOpsProject or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AzureDevOpsProject - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AzureDevOpsProject", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _create_or_update_initial( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: Union[_models.AzureDevOpsProject, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(azure_dev_ops_project, (IOBase, bytes)): - _content = azure_dev_ops_project - else: - _json = self._serialize.body(azure_dev_ops_project, "AzureDevOpsProject") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: _models.AzureDevOpsProject, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsProject]: - """Creates or updates a monitored Azure DevOps project resource. - - Creates or updates a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. - :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either AzureDevOpsProject or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsProject]: - """Creates or updates a monitored Azure DevOps project resource. - - Creates or updates a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. - :type azure_dev_ops_project: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either AzureDevOpsProject or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: Union[_models.AzureDevOpsProject, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsProject]: - """Creates or updates a monitored Azure DevOps project resource. - - Creates or updates a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param azure_dev_ops_project: The Azure DevOps project resource payload. Is either a - AzureDevOpsProject type or a IO[bytes] type. Required. - :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject or IO[bytes] - :return: An instance of AsyncLROPoller that returns either AzureDevOpsProject or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - azure_dev_ops_project=azure_dev_ops_project, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("AzureDevOpsProject", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.AzureDevOpsProject].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.AzureDevOpsProject]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _update_initial( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: Union[_models.AzureDevOpsProject, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(azure_dev_ops_project, (IOBase, bytes)): - _content = azure_dev_ops_project - else: - _json = self._serialize.body(azure_dev_ops_project, "AzureDevOpsProject") - - _request = build_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: _models.AzureDevOpsProject, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsProject]: - """Updates a monitored Azure DevOps project resource. - - Updates a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. - :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either AzureDevOpsProject or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsProject]: - """Updates a monitored Azure DevOps project resource. - - Updates a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. - :type azure_dev_ops_project: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either AzureDevOpsProject or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: Union[_models.AzureDevOpsProject, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsProject]: - """Updates a monitored Azure DevOps project resource. - - Updates a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param azure_dev_ops_project: The Azure DevOps project resource payload. Is either a - AzureDevOpsProject type or a IO[bytes] type. Required. - :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject or IO[bytes] - :return: An instance of AsyncLROPoller that returns either AzureDevOpsProject or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - azure_dev_ops_project=azure_dev_ops_project, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("AzureDevOpsProject", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.AzureDevOpsProject].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.AzureDevOpsProject]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_repos_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_repos_operations.py deleted file mode 100644 index 7d894ea12bee..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_azure_dev_ops_repos_operations.py +++ /dev/null @@ -1,711 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._azure_dev_ops_repos_operations import ( - build_create_or_update_request, - build_get_request, - build_list_request, - build_update_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class AzureDevOpsReposOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`azure_dev_ops_repos` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, org_name: str, project_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.AzureDevOpsRepository"]: - """Returns a list of Azure DevOps repositories onboarded to the connector. - - Returns a list of Azure DevOps repositories onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :return: An iterator like instance of either AzureDevOpsRepository or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsRepositoryListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AzureDevOpsRepositoryListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - **kwargs: Any - ) -> _models.AzureDevOpsRepository: - """Returns a monitored Azure DevOps repository resource. - - Returns a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :return: AzureDevOpsRepository or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AzureDevOpsRepository - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - repo_name=repo_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AzureDevOpsRepository", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _create_or_update_initial( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(azure_dev_ops_repository, (IOBase, bytes)): - _content = azure_dev_ops_repository - else: - _json = self._serialize.body(azure_dev_ops_repository, "AzureDevOpsRepository") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - repo_name=repo_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: _models.AzureDevOpsRepository, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: - """Creates or updates a monitored Azure DevOps repository resource. - - Creates or updates a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. - :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either AzureDevOpsRepository or the result - of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: - """Creates or updates a monitored Azure DevOps repository resource. - - Creates or updates a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. - :type azure_dev_ops_repository: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either AzureDevOpsRepository or the result - of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: - """Creates or updates a monitored Azure DevOps repository resource. - - Creates or updates a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Is either a - AzureDevOpsRepository type or a IO[bytes] type. Required. - :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository or IO[bytes] - :return: An instance of AsyncLROPoller that returns either AzureDevOpsRepository or the result - of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - repo_name=repo_name, - azure_dev_ops_repository=azure_dev_ops_repository, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("AzureDevOpsRepository", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.AzureDevOpsRepository].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.AzureDevOpsRepository]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _update_initial( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(azure_dev_ops_repository, (IOBase, bytes)): - _content = azure_dev_ops_repository - else: - _json = self._serialize.body(azure_dev_ops_repository, "AzureDevOpsRepository") - - _request = build_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - repo_name=repo_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: _models.AzureDevOpsRepository, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: - """Updates a monitored Azure DevOps repository resource. - - Updates a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. - :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either AzureDevOpsRepository or the result - of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: - """Updates a monitored Azure DevOps repository resource. - - Updates a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. - :type azure_dev_ops_repository: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either AzureDevOpsRepository or the result - of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: - """Updates a monitored Azure DevOps repository resource. - - Updates a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Is either a - AzureDevOpsRepository type or a IO[bytes] type. Required. - :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository or IO[bytes] - :return: An instance of AsyncLROPoller that returns either AzureDevOpsRepository or the result - of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - repo_name=repo_name, - azure_dev_ops_repository=azure_dev_ops_repository, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("AzureDevOpsRepository", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.AzureDevOpsRepository].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.AzureDevOpsRepository]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliance_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliance_results_operations.py deleted file mode 100644 index e1ffab80bf0b..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliance_results_operations.py +++ /dev/null @@ -1,183 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._compliance_results_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class ComplianceResultsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`compliance_results` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.ComplianceResult"]: - """Security compliance results in the subscription. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :return: An iterator like instance of either ComplianceResult or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ComplianceResult] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01")) - cls: ClsType[_models.ComplianceResultList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ComplianceResultList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated12, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, resource_id: str, compliance_result_name: str, **kwargs: Any) -> _models.ComplianceResult: - """Security Compliance Result. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param compliance_result_name: name of the desired assessment compliance result. Required. - :type compliance_result_name: str - :return: ComplianceResult or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ComplianceResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01")) - cls: ClsType[_models.ComplianceResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - compliance_result_name=compliance_result_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated12, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ComplianceResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliances_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliances_operations.py deleted file mode 100644 index 4189819d16e6..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_compliances_operations.py +++ /dev/null @@ -1,185 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._compliances_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class CompliancesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`compliances` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.Compliance"]: - """The Compliance scores of the specific management group. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :return: An iterator like instance of either Compliance or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Compliance] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.ComplianceList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ComplianceList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, scope: str, compliance_name: str, **kwargs: Any) -> _models.Compliance: - """Details of a specific Compliance. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param compliance_name: name of the Compliance. Required. - :type compliance_name: str - :return: Compliance or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Compliance - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.Compliance] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - compliance_name=compliance_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Compliance", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_recommendations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_recommendations_operations.py deleted file mode 100644 index 367277a7cc36..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_custom_recommendations_operations.py +++ /dev/null @@ -1,397 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._custom_recommendations_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class CustomRecommendationsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`custom_recommendations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.CustomRecommendation"]: - """Get a list of all relevant custom recommendations over a scope. - - :param scope: The scope of the custom recommendation. Valid scopes are: management group - (format: 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription - (format: 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :return: An iterator like instance of either CustomRecommendation or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.CustomRecommendation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[_models.CustomRecommendationsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("CustomRecommendationsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, scope: str, custom_recommendation_name: str, **kwargs: Any) -> _models.CustomRecommendation: - """Get a specific custom recommendation for the requested scope by customRecommendationName. - - :param scope: The scope of the custom recommendation. Valid scopes are: management group - (format: 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription - (format: 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param custom_recommendation_name: Name of the Custom Recommendation. Required. - :type custom_recommendation_name: str - :return: CustomRecommendation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomRecommendation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[_models.CustomRecommendation] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - custom_recommendation_name=custom_recommendation_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CustomRecommendation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - scope: str, - custom_recommendation_name: str, - custom_recommendation_body: _models.CustomRecommendation, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CustomRecommendation: - """Creates or updates a custom recommendation over a given scope. - - :param scope: The scope of the custom recommendation. Valid scopes are: management group - (format: 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription - (format: 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param custom_recommendation_name: Name of the Custom Recommendation. Required. - :type custom_recommendation_name: str - :param custom_recommendation_body: Custom Recommendation body. Required. - :type custom_recommendation_body: ~azure.mgmt.security.models.CustomRecommendation - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CustomRecommendation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomRecommendation - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - scope: str, - custom_recommendation_name: str, - custom_recommendation_body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CustomRecommendation: - """Creates or updates a custom recommendation over a given scope. - - :param scope: The scope of the custom recommendation. Valid scopes are: management group - (format: 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription - (format: 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param custom_recommendation_name: Name of the Custom Recommendation. Required. - :type custom_recommendation_name: str - :param custom_recommendation_body: Custom Recommendation body. Required. - :type custom_recommendation_body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CustomRecommendation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomRecommendation - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - scope: str, - custom_recommendation_name: str, - custom_recommendation_body: Union[_models.CustomRecommendation, IO[bytes]], - **kwargs: Any - ) -> _models.CustomRecommendation: - """Creates or updates a custom recommendation over a given scope. - - :param scope: The scope of the custom recommendation. Valid scopes are: management group - (format: 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription - (format: 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param custom_recommendation_name: Name of the Custom Recommendation. Required. - :type custom_recommendation_name: str - :param custom_recommendation_body: Custom Recommendation body. Is either a CustomRecommendation - type or a IO[bytes] type. Required. - :type custom_recommendation_body: ~azure.mgmt.security.models.CustomRecommendation or IO[bytes] - :return: CustomRecommendation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomRecommendation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CustomRecommendation] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(custom_recommendation_body, (IOBase, bytes)): - _content = custom_recommendation_body - else: - _json = self._serialize.body(custom_recommendation_body, "CustomRecommendation") - - _request = build_create_or_update_request( - scope=scope, - custom_recommendation_name=custom_recommendation_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CustomRecommendation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, scope: str, custom_recommendation_name: str, **kwargs: Any) -> None: - """Delete a custom recommendation over a given scope. - - :param scope: The scope of the custom recommendation. Valid scopes are: management group - (format: 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription - (format: 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param custom_recommendation_name: Name of the Custom Recommendation. Required. - :type custom_recommendation_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - scope=scope, - custom_recommendation_name=custom_recommendation_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_defender_for_storage_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_defender_for_storage_operations.py deleted file mode 100644 index 4f3cdf719c63..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_defender_for_storage_operations.py +++ /dev/null @@ -1,508 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._defender_for_storage_operations import ( - build_cancel_malware_scan_request, - build_create_request, - build_get_malware_scan_request, - build_get_request, - build_list_request, - build_start_malware_scan_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class DefenderForStorageOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`defender_for_storage` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, resource_id: str, **kwargs: Any) -> AsyncItemPaged["_models.DefenderForStorageSetting"]: - """Lists the Defender for Storage settings for the specified storage account. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :return: An iterator like instance of either DefenderForStorageSetting or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.DefenderForStorageSetting] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - cls: ClsType[_models.DefenderForStorageSettingList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_id=resource_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("DefenderForStorageSettingList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated20, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any - ) -> _models.DefenderForStorageSetting: - """Gets the Defender for Storage settings for the specified storage account. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :return: DefenderForStorageSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - cls: ClsType[_models.DefenderForStorageSetting] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - setting_name=setting_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated20, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("DefenderForStorageSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create( - self, - resource_id: str, - setting_name: Union[str, _models.SettingNameAutoGenerated], - defender_for_storage_setting: _models.DefenderForStorageSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.DefenderForStorageSetting: - """Creates or updates the Defender for Storage settings on a specified storage account. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :param defender_for_storage_setting: Defender for Storage Settings. Required. - :type defender_for_storage_setting: ~azure.mgmt.security.models.DefenderForStorageSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: DefenderForStorageSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create( - self, - resource_id: str, - setting_name: Union[str, _models.SettingNameAutoGenerated], - defender_for_storage_setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.DefenderForStorageSetting: - """Creates or updates the Defender for Storage settings on a specified storage account. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :param defender_for_storage_setting: Defender for Storage Settings. Required. - :type defender_for_storage_setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: DefenderForStorageSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create( - self, - resource_id: str, - setting_name: Union[str, _models.SettingNameAutoGenerated], - defender_for_storage_setting: Union[_models.DefenderForStorageSetting, IO[bytes]], - **kwargs: Any - ) -> _models.DefenderForStorageSetting: - """Creates or updates the Defender for Storage settings on a specified storage account. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :param defender_for_storage_setting: Defender for Storage Settings. Is either a - DefenderForStorageSetting type or a IO[bytes] type. Required. - :type defender_for_storage_setting: ~azure.mgmt.security.models.DefenderForStorageSetting or - IO[bytes] - :return: DefenderForStorageSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.DefenderForStorageSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(defender_for_storage_setting, (IOBase, bytes)): - _content = defender_for_storage_setting - else: - _json = self._serialize.body(defender_for_storage_setting, "DefenderForStorageSetting") - - _request = build_create_request( - resource_id=resource_id, - setting_name=setting_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated20, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("DefenderForStorageSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def start_malware_scan( - self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any - ) -> _models.MalwareScan: - """Initiate a Defender for Storage malware scan for the specified storage account. Blobs and Files - will be scanned for malware. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :return: MalwareScan or the result of cls(response) - :rtype: ~azure.mgmt.security.models.MalwareScan - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) - - _request = build_start_malware_scan_request( - resource_id=resource_id, - setting_name=setting_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated20, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MalwareScan", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def cancel_malware_scan( - self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], scan_id: str, **kwargs: Any - ) -> _models.MalwareScan: - """Cancels a Defender for Storage malware scan for the specified storage account. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :param scan_id: The identifier of the scan. Can be either 'latest' or a GUID. Required. - :type scan_id: str - :return: MalwareScan or the result of cls(response) - :rtype: ~azure.mgmt.security.models.MalwareScan - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) - - _request = build_cancel_malware_scan_request( - resource_id=resource_id, - setting_name=setting_name, - scan_id=scan_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated20, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MalwareScan", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_malware_scan( - self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], scan_id: str, **kwargs: Any - ) -> _models.MalwareScan: - """Gets the Defender for Storage malware scan for the specified storage resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :param scan_id: The identifier of the scan. Can be either 'latest' or a GUID. Required. - :type scan_id: str - :return: MalwareScan or the result of cls(response) - :rtype: ~azure.mgmt.security.models.MalwareScan - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) - - _request = build_get_malware_scan_request( - resource_id=resource_id, - setting_name=setting_name, - scan_id=scan_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated20, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MalwareScan", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_configurations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_configurations_operations.py deleted file mode 100644 index 0c6ffadfd1fb..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_configurations_operations.py +++ /dev/null @@ -1,729 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._dev_ops_configurations_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, - build_update_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class DevOpsConfigurationsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`dev_ops_configurations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.DevOpsConfiguration"]: - """List DevOps Configurations. - - List DevOps Configurations. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: An iterator like instance of either DevOpsConfiguration or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.DevOpsConfigurationListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("DevOpsConfigurationListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> _models.DevOpsConfiguration: - """Gets a DevOps Configuration. - - Gets a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: DevOpsConfiguration or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DevOpsConfiguration - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("DevOpsConfiguration", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _create_or_update_initial( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: Union[_models.DevOpsConfiguration, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(dev_ops_configuration, (IOBase, bytes)): - _content = dev_ops_configuration - else: - _json = self._serialize.body(dev_ops_configuration, "DevOpsConfiguration") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: _models.DevOpsConfiguration, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.DevOpsConfiguration]: - """Creates or updates a DevOps Configuration. - - Creates or updates a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param dev_ops_configuration: The DevOps configuration resource payload. Required. - :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either DevOpsConfiguration or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.DevOpsConfiguration]: - """Creates or updates a DevOps Configuration. - - Creates or updates a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param dev_ops_configuration: The DevOps configuration resource payload. Required. - :type dev_ops_configuration: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either DevOpsConfiguration or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: Union[_models.DevOpsConfiguration, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.DevOpsConfiguration]: - """Creates or updates a DevOps Configuration. - - Creates or updates a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param dev_ops_configuration: The DevOps configuration resource payload. Is either a - DevOpsConfiguration type or a IO[bytes] type. Required. - :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration or IO[bytes] - :return: An instance of AsyncLROPoller that returns either DevOpsConfiguration or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - dev_ops_configuration=dev_ops_configuration, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("DevOpsConfiguration", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.DevOpsConfiguration].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.DevOpsConfiguration]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _update_initial( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: Union[_models.DevOpsConfiguration, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(dev_ops_configuration, (IOBase, bytes)): - _content = dev_ops_configuration - else: - _json = self._serialize.body(dev_ops_configuration, "DevOpsConfiguration") - - _request = build_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: _models.DevOpsConfiguration, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.DevOpsConfiguration]: - """Updates a DevOps Configuration. - - Updates a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param dev_ops_configuration: The DevOps configuration resource payload. Required. - :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either DevOpsConfiguration or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.DevOpsConfiguration]: - """Updates a DevOps Configuration. - - Updates a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param dev_ops_configuration: The DevOps configuration resource payload. Required. - :type dev_ops_configuration: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either DevOpsConfiguration or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: Union[_models.DevOpsConfiguration, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.DevOpsConfiguration]: - """Updates a DevOps Configuration. - - Updates a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param dev_ops_configuration: The DevOps configuration resource payload. Is either a - DevOpsConfiguration type or a IO[bytes] type. Required. - :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration or IO[bytes] - :return: An instance of AsyncLROPoller that returns either DevOpsConfiguration or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - dev_ops_configuration=dev_ops_configuration, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("DevOpsConfiguration", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.DevOpsConfiguration].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.DevOpsConfiguration]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _delete_initial( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> AsyncLROPoller[None]: - """Deletes a DevOps Connector. - - Deletes a DevOps Connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_operation_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_operation_results_operations.py deleted file mode 100644 index 9bf71271bb33..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_dev_ops_operation_results_operations.py +++ /dev/null @@ -1,119 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._dev_ops_operation_results_operations import build_get_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class DevOpsOperationResultsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`dev_ops_operation_results` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get( - self, resource_group_name: str, security_connector_name: str, operation_result_id: str, **kwargs: Any - ) -> _models.OperationStatusResult: - """Get devops long running operation result. - - Get devops long running operation result. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param operation_result_id: The operation result Id. Required. - :type operation_result_id: str - :return: OperationStatusResult or the result of cls(response) - :rtype: ~azure.mgmt.security.models.OperationStatusResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.OperationStatusResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - operation_result_id=operation_result_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("OperationStatusResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_device_security_groups_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_device_security_groups_operations.py deleted file mode 100644 index f533ff637be4..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_device_security_groups_operations.py +++ /dev/null @@ -1,381 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._device_security_groups_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class DeviceSecurityGroupsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`device_security_groups` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, resource_id: str, **kwargs: Any) -> AsyncItemPaged["_models.DeviceSecurityGroup"]: - """Use this method get the list of device security groups for the specified IoT Hub resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :return: An iterator like instance of either DeviceSecurityGroup or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.DeviceSecurityGroup] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.DeviceSecurityGroupList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_id=resource_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("DeviceSecurityGroupList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_id: str, device_security_group_name: str, **kwargs: Any - ) -> _models.DeviceSecurityGroup: - """Use this method to get the device security group for the specified IoT Hub resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param device_security_group_name: The name of the device security group. Note that the name of - the device security group is case insensitive. Required. - :type device_security_group_name: str - :return: DeviceSecurityGroup or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.DeviceSecurityGroup] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - device_security_group_name=device_security_group_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("DeviceSecurityGroup", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - resource_id: str, - device_security_group_name: str, - device_security_group: _models.DeviceSecurityGroup, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.DeviceSecurityGroup: - """Use this method to creates or updates the device security group on a specified IoT Hub - resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param device_security_group_name: The name of the device security group. Note that the name of - the device security group is case insensitive. Required. - :type device_security_group_name: str - :param device_security_group: Security group object. Required. - :type device_security_group: ~azure.mgmt.security.models.DeviceSecurityGroup - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: DeviceSecurityGroup or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_id: str, - device_security_group_name: str, - device_security_group: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.DeviceSecurityGroup: - """Use this method to creates or updates the device security group on a specified IoT Hub - resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param device_security_group_name: The name of the device security group. Note that the name of - the device security group is case insensitive. Required. - :type device_security_group_name: str - :param device_security_group: Security group object. Required. - :type device_security_group: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: DeviceSecurityGroup or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_id: str, - device_security_group_name: str, - device_security_group: Union[_models.DeviceSecurityGroup, IO[bytes]], - **kwargs: Any - ) -> _models.DeviceSecurityGroup: - """Use this method to creates or updates the device security group on a specified IoT Hub - resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param device_security_group_name: The name of the device security group. Note that the name of - the device security group is case insensitive. Required. - :type device_security_group_name: str - :param device_security_group: Security group object. Is either a DeviceSecurityGroup type or a - IO[bytes] type. Required. - :type device_security_group: ~azure.mgmt.security.models.DeviceSecurityGroup or IO[bytes] - :return: DeviceSecurityGroup or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.DeviceSecurityGroup] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(device_security_group, (IOBase, bytes)): - _content = device_security_group - else: - _json = self._serialize.body(device_security_group, "DeviceSecurityGroup") - - _request = build_create_or_update_request( - resource_id=resource_id, - device_security_group_name=device_security_group_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("DeviceSecurityGroup", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, resource_id: str, device_security_group_name: str, **kwargs: Any) -> None: - """User this method to deletes the device security group. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param device_security_group_name: The name of the device security group. Note that the name of - the device security group is case insensitive. Required. - :type device_security_group_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_id=resource_id, - device_security_group_name=device_security_group_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_discovered_security_solutions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_discovered_security_solutions_operations.py deleted file mode 100644 index bd4b07257b30..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_discovered_security_solutions_operations.py +++ /dev/null @@ -1,268 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._discovered_security_solutions_operations import ( - build_get_request, - build_list_by_home_region_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class DiscoveredSecuritySolutionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`discovered_security_solutions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.DiscoveredSecuritySolution"]: - """Gets a list of discovered Security Solutions for the subscription. - - :return: An iterator like instance of either DiscoveredSecuritySolution or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.DiscoveredSecuritySolution] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.DiscoveredSecuritySolutionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("DiscoveredSecuritySolutionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_home_region( - self, asc_location: str, **kwargs: Any - ) -> AsyncItemPaged["_models.DiscoveredSecuritySolution"]: - """Gets a list of discovered Security Solutions for the subscription and location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either DiscoveredSecuritySolution or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.DiscoveredSecuritySolution] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.DiscoveredSecuritySolutionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_home_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("DiscoveredSecuritySolutionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, asc_location: str, discovered_security_solution_name: str, **kwargs: Any - ) -> _models.DiscoveredSecuritySolution: - """Gets a specific discovered Security Solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param discovered_security_solution_name: Name of a discovered security solution. Required. - :type discovered_security_solution_name: str - :return: DiscoveredSecuritySolution or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DiscoveredSecuritySolution - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.DiscoveredSecuritySolution] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - discovered_security_solution_name=discovered_security_solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("DiscoveredSecuritySolution", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_external_security_solutions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_external_security_solutions_operations.py deleted file mode 100644 index d14ce4df1b32..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_external_security_solutions_operations.py +++ /dev/null @@ -1,268 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._external_security_solutions_operations import ( - build_get_request, - build_list_by_home_region_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class ExternalSecuritySolutionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`external_security_solutions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.ExternalSecuritySolution"]: - """Gets a list of external security solutions for the subscription. - - :return: An iterator like instance of either ExternalSecuritySolution or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ExternalSecuritySolution] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.ExternalSecuritySolutionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ExternalSecuritySolutionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_home_region( - self, asc_location: str, **kwargs: Any - ) -> AsyncItemPaged["_models.ExternalSecuritySolution"]: - """Gets a list of external Security Solutions for the subscription and location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either ExternalSecuritySolution or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ExternalSecuritySolution] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.ExternalSecuritySolutionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_home_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ExternalSecuritySolutionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, asc_location: str, external_security_solutions_name: str, **kwargs: Any - ) -> _models.ExternalSecuritySolution: - """Gets a specific external Security Solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param external_security_solutions_name: Name of an external security solution. Required. - :type external_security_solutions_name: str - :return: ExternalSecuritySolution or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ExternalSecuritySolution - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.ExternalSecuritySolution] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - external_security_solutions_name=external_security_solutions_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ExternalSecuritySolution", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_issues_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_issues_operations.py deleted file mode 100644 index b3333e6aeac0..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_issues_operations.py +++ /dev/null @@ -1,287 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._git_hub_issues_operations import build_create_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class GitHubIssuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`git_hub_issues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - async def _create_initial( - self, - resource_group_name: str, - security_connector_name: str, - owner_name: str, - repo_name: str, - create_issue_request: Optional[Union[_models.IssueCreationRequest, IO[bytes]]] = None, - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if create_issue_request else None - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" if create_issue_request else None - _json = None - _content = None - if isinstance(create_issue_request, (IOBase, bytes)): - _content = create_issue_request - else: - if create_issue_request is not None: - _json = self._serialize.body(create_issue_request, "IssueCreationRequest") - else: - _json = None - - _request = build_create_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - owner_name=owner_name, - repo_name=repo_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create( - self, - resource_group_name: str, - security_connector_name: str, - owner_name: str, - repo_name: str, - create_issue_request: Optional[_models.IssueCreationRequest] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[None]: - """Creates a GitHub issue for the specified repository and assessment. - - Creates a GitHub issue for the specified repository and assessment. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param owner_name: The GitHub owner name. Required. - :type owner_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param create_issue_request: The request model containing details for creating the GitHub - issue. Default value is None. - :type create_issue_request: ~azure.mgmt.security.models.IssueCreationRequest - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create( - self, - resource_group_name: str, - security_connector_name: str, - owner_name: str, - repo_name: str, - create_issue_request: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[None]: - """Creates a GitHub issue for the specified repository and assessment. - - Creates a GitHub issue for the specified repository and assessment. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param owner_name: The GitHub owner name. Required. - :type owner_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param create_issue_request: The request model containing details for creating the GitHub - issue. Default value is None. - :type create_issue_request: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create( - self, - resource_group_name: str, - security_connector_name: str, - owner_name: str, - repo_name: str, - create_issue_request: Optional[Union[_models.IssueCreationRequest, IO[bytes]]] = None, - **kwargs: Any - ) -> AsyncLROPoller[None]: - """Creates a GitHub issue for the specified repository and assessment. - - Creates a GitHub issue for the specified repository and assessment. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param owner_name: The GitHub owner name. Required. - :type owner_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param create_issue_request: The request model containing details for creating the GitHub - issue. Is either a IssueCreationRequest type or a IO[bytes] type. Default value is None. - :type create_issue_request: ~azure.mgmt.security.models.IssueCreationRequest or IO[bytes] - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if create_issue_request else None - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - owner_name=owner_name, - repo_name=repo_name, - create_issue_request=create_issue_request, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_owners_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_owners_operations.py deleted file mode 100644 index 31426ab4c3e2..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_owners_operations.py +++ /dev/null @@ -1,262 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._git_hub_owners_operations import build_get_request, build_list_available_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class GitHubOwnersOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`git_hub_owners` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def list_available( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> _models.GitHubOwnerListResponse: - """Returns a list of all GitHub owners accessible by the user token consumed by the connector. - - Returns a list of all GitHub owners accessible by the user token consumed by the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: GitHubOwnerListResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitHubOwnerListResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitHubOwnerListResponse] = kwargs.pop("cls", None) - - _request = build_list_available_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitHubOwnerListResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.GitHubOwner"]: - """Returns a list of GitHub owners onboarded to the connector. - - Returns a list of GitHub owners onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: An iterator like instance of either GitHubOwner or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GitHubOwner] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitHubOwnerListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("GitHubOwnerListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, security_connector_name: str, owner_name: str, **kwargs: Any - ) -> _models.GitHubOwner: - """Returns a monitored GitHub owner. - - Returns a monitored GitHub owner. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param owner_name: The GitHub owner name. Required. - :type owner_name: str - :return: GitHubOwner or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitHubOwner - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitHubOwner] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - owner_name=owner_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitHubOwner", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_repos_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_repos_operations.py deleted file mode 100644 index d11f0816be95..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_hub_repos_operations.py +++ /dev/null @@ -1,205 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._git_hub_repos_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class GitHubReposOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`git_hub_repos` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, owner_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.GitHubRepository"]: - """Returns a list of GitHub repositories onboarded to the connector. - - Returns a list of GitHub repositories onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param owner_name: The GitHub owner name. Required. - :type owner_name: str - :return: An iterator like instance of either GitHubRepository or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GitHubRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitHubRepositoryListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - owner_name=owner_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("GitHubRepositoryListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, security_connector_name: str, owner_name: str, repo_name: str, **kwargs: Any - ) -> _models.GitHubRepository: - """Returns a monitored GitHub repository. - - Returns a monitored GitHub repository. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param owner_name: The GitHub owner name. Required. - :type owner_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :return: GitHubRepository or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitHubRepository - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitHubRepository] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - owner_name=owner_name, - repo_name=repo_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitHubRepository", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_groups_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_groups_operations.py deleted file mode 100644 index 15bf8d9a56cd..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_groups_operations.py +++ /dev/null @@ -1,262 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._git_lab_groups_operations import build_get_request, build_list_available_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class GitLabGroupsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`git_lab_groups` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def list_available( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> _models.GitLabGroupListResponse: - """Returns a list of all GitLab groups accessible by the user token consumed by the connector. - - Returns a list of all GitLab groups accessible by the user token consumed by the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: GitLabGroupListResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitLabGroupListResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) - - _request = build_list_available_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitLabGroupListResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.GitLabGroup"]: - """Returns a list of GitLab groups onboarded to the connector. - - Returns a list of GitLab groups onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: An iterator like instance of either GitLabGroup or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GitLabGroup] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("GitLabGroupListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, security_connector_name: str, group_fq_name: str, **kwargs: Any - ) -> _models.GitLabGroup: - """Returns a monitored GitLab Group resource for a given fully-qualified name. - - Returns a monitored GitLab Group resource for a given fully-qualified name. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param group_fq_name: The GitLab group fully-qualified name. Required. - :type group_fq_name: str - :return: GitLabGroup or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitLabGroup - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitLabGroup] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - group_fq_name=group_fq_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitLabGroup", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_projects_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_projects_operations.py deleted file mode 100644 index e24f972ed17e..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_projects_operations.py +++ /dev/null @@ -1,214 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._git_lab_projects_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class GitLabProjectsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`git_lab_projects` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, group_fq_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.GitLabProject"]: - """Gets a list of GitLab projects that are directly owned by given group and onboarded to the - connector. - - Gets a list of GitLab projects that are directly owned by given group and onboarded to the - connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param group_fq_name: The GitLab group fully-qualified name. Required. - :type group_fq_name: str - :return: An iterator like instance of either GitLabProject or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GitLabProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitLabProjectListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - group_fq_name=group_fq_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("GitLabProjectListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - security_connector_name: str, - group_fq_name: str, - project_name: str, - **kwargs: Any - ) -> _models.GitLabProject: - """Returns a monitored GitLab Project resource for a given fully-qualified group name and project - name. - - Returns a monitored GitLab Project resource for a given fully-qualified group name and project - name. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param group_fq_name: The GitLab group fully-qualified name. Required. - :type group_fq_name: str - :param project_name: The project name. Required. - :type project_name: str - :return: GitLabProject or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitLabProject - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitLabProject] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - group_fq_name=group_fq_name, - project_name=project_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitLabProject", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_subgroups_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_subgroups_operations.py deleted file mode 100644 index 3155dda09cf5..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_git_lab_subgroups_operations.py +++ /dev/null @@ -1,119 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._git_lab_subgroups_operations import build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class GitLabSubgroupsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`git_lab_subgroups` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def list( - self, resource_group_name: str, security_connector_name: str, group_fq_name: str, **kwargs: Any - ) -> _models.GitLabGroupListResponse: - """Gets nested subgroups of given GitLab Group which are onboarded to the connector. - - Gets nested subgroups of given GitLab Group which are onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param group_fq_name: The GitLab group fully-qualified name. Required. - :type group_fq_name: str - :return: GitLabGroupListResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitLabGroupListResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - group_fq_name=group_fq_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitLabGroupListResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_assignments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_assignments_operations.py deleted file mode 100644 index e7164fb4b754..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_assignments_operations.py +++ /dev/null @@ -1,413 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._governance_assignments_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class GovernanceAssignmentsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`governance_assignments` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, assessment_name: str, **kwargs: Any) -> AsyncItemPaged["_models.GovernanceAssignment"]: - """Get governance assignments on all of your resources inside a scope. - - :param scope: The scope of the Governance assignments. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param assessment_name: The Assessment Key - A unique key for the assessment type. Required. - :type assessment_name: str - :return: An iterator like instance of either GovernanceAssignment or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GovernanceAssignment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[_models.GovernanceAssignmentsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - assessment_name=assessment_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("GovernanceAssignmentsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, scope: str, assessment_name: str, assignment_key: str, **kwargs: Any - ) -> _models.GovernanceAssignment: - """Get a specific governanceAssignment for the requested scope by AssignmentKey. - - :param scope: The scope of the Governance assignments. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param assessment_name: The Assessment Key - A unique key for the assessment type. Required. - :type assessment_name: str - :param assignment_key: The governance assignment key - the assessment key of the required - governance assignment. Required. - :type assignment_key: str - :return: GovernanceAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[_models.GovernanceAssignment] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - assessment_name=assessment_name, - assignment_key=assignment_key, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GovernanceAssignment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - scope: str, - assessment_name: str, - assignment_key: str, - governance_assignment: _models.GovernanceAssignment, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.GovernanceAssignment: - """Creates or updates a governance assignment on the given subscription. - - :param scope: The scope of the Governance assignments. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param assessment_name: The Assessment Key - A unique key for the assessment type. Required. - :type assessment_name: str - :param assignment_key: The governance assignment key - the assessment key of the required - governance assignment. Required. - :type assignment_key: str - :param governance_assignment: Governance assignment over a subscription scope. Required. - :type governance_assignment: ~azure.mgmt.security.models.GovernanceAssignment - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: GovernanceAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - scope: str, - assessment_name: str, - assignment_key: str, - governance_assignment: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.GovernanceAssignment: - """Creates or updates a governance assignment on the given subscription. - - :param scope: The scope of the Governance assignments. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param assessment_name: The Assessment Key - A unique key for the assessment type. Required. - :type assessment_name: str - :param assignment_key: The governance assignment key - the assessment key of the required - governance assignment. Required. - :type assignment_key: str - :param governance_assignment: Governance assignment over a subscription scope. Required. - :type governance_assignment: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: GovernanceAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - scope: str, - assessment_name: str, - assignment_key: str, - governance_assignment: Union[_models.GovernanceAssignment, IO[bytes]], - **kwargs: Any - ) -> _models.GovernanceAssignment: - """Creates or updates a governance assignment on the given subscription. - - :param scope: The scope of the Governance assignments. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param assessment_name: The Assessment Key - A unique key for the assessment type. Required. - :type assessment_name: str - :param assignment_key: The governance assignment key - the assessment key of the required - governance assignment. Required. - :type assignment_key: str - :param governance_assignment: Governance assignment over a subscription scope. Is either a - GovernanceAssignment type or a IO[bytes] type. Required. - :type governance_assignment: ~azure.mgmt.security.models.GovernanceAssignment or IO[bytes] - :return: GovernanceAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.GovernanceAssignment] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(governance_assignment, (IOBase, bytes)): - _content = governance_assignment - else: - _json = self._serialize.body(governance_assignment, "GovernanceAssignment") - - _request = build_create_or_update_request( - scope=scope, - assessment_name=assessment_name, - assignment_key=assignment_key, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GovernanceAssignment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, scope: str, assessment_name: str, assignment_key: str, **kwargs: Any) -> None: - """Delete a GovernanceAssignment over a given scope. - - :param scope: The scope of the Governance assignments. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param assessment_name: The Assessment Key - A unique key for the assessment type. Required. - :type assessment_name: str - :param assignment_key: The governance assignment key - the assessment key of the required - governance assignment. Required. - :type assignment_key: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - scope=scope, - assessment_name=assessment_name, - assignment_key=assignment_key, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_rules_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_rules_operations.py deleted file mode 100644 index 0cf3a2609475..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_governance_rules_operations.py +++ /dev/null @@ -1,741 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._governance_rules_operations import ( - build_create_or_update_request, - build_delete_request, - build_execute_request, - build_get_request, - build_list_request, - build_operation_results_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class GovernanceRulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`governance_rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.GovernanceRule"]: - """Get a list of all relevant governance rules over a scope. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :return: An iterator like instance of either GovernanceRule or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GovernanceRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[_models.GovernanceRuleList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("GovernanceRuleList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, scope: str, rule_id: str, **kwargs: Any) -> _models.GovernanceRule: - """Get a specific governance rule for the requested scope by ruleId. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :return: GovernanceRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[_models.GovernanceRule] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - rule_id=rule_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GovernanceRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - scope: str, - rule_id: str, - governance_rule: _models.GovernanceRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.GovernanceRule: - """Creates or updates a governance rule over a given scope. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param governance_rule: Governance rule over a given scope. Required. - :type governance_rule: ~azure.mgmt.security.models.GovernanceRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: GovernanceRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - scope: str, - rule_id: str, - governance_rule: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.GovernanceRule: - """Creates or updates a governance rule over a given scope. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param governance_rule: Governance rule over a given scope. Required. - :type governance_rule: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: GovernanceRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, scope: str, rule_id: str, governance_rule: Union[_models.GovernanceRule, IO[bytes]], **kwargs: Any - ) -> _models.GovernanceRule: - """Creates or updates a governance rule over a given scope. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param governance_rule: Governance rule over a given scope. Is either a GovernanceRule type or - a IO[bytes] type. Required. - :type governance_rule: ~azure.mgmt.security.models.GovernanceRule or IO[bytes] - :return: GovernanceRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.GovernanceRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(governance_rule, (IOBase, bytes)): - _content = governance_rule - else: - _json = self._serialize.body(governance_rule, "GovernanceRule") - - _request = build_create_or_update_request( - scope=scope, - rule_id=rule_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GovernanceRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _delete_initial(self, scope: str, rule_id: str, **kwargs: Any) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - scope=scope, - rule_id=rule_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["location"] = self._deserialize("str", response.headers.get("location")) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete(self, scope: str, rule_id: str, **kwargs: Any) -> AsyncLROPoller[None]: - """Delete a Governance rule over a given scope. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - scope=scope, - rule_id=rule_id, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, AsyncARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - async def _execute_initial( - self, - scope: str, - rule_id: str, - execute_governance_rule_params: Optional[Union[_models.ExecuteGovernanceRuleParams, IO[bytes]]] = None, - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if execute_governance_rule_params else None - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" if execute_governance_rule_params else None - _json = None - _content = None - if isinstance(execute_governance_rule_params, (IOBase, bytes)): - _content = execute_governance_rule_params - else: - if execute_governance_rule_params is not None: - _json = self._serialize.body(execute_governance_rule_params, "ExecuteGovernanceRuleParams") - else: - _json = None - - _request = build_execute_request( - scope=scope, - rule_id=rule_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - response_headers["location"] = self._deserialize("str", response.headers.get("location")) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_execute( - self, - scope: str, - rule_id: str, - execute_governance_rule_params: Optional[_models.ExecuteGovernanceRuleParams] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[None]: - """Execute a governance rule. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param execute_governance_rule_params: Execute governance rule over a given scope. Default - value is None. - :type execute_governance_rule_params: ~azure.mgmt.security.models.ExecuteGovernanceRuleParams - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_execute( - self, - scope: str, - rule_id: str, - execute_governance_rule_params: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[None]: - """Execute a governance rule. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param execute_governance_rule_params: Execute governance rule over a given scope. Default - value is None. - :type execute_governance_rule_params: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_execute( - self, - scope: str, - rule_id: str, - execute_governance_rule_params: Optional[Union[_models.ExecuteGovernanceRuleParams, IO[bytes]]] = None, - **kwargs: Any - ) -> AsyncLROPoller[None]: - """Execute a governance rule. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param execute_governance_rule_params: Execute governance rule over a given scope. Is either a - ExecuteGovernanceRuleParams type or a IO[bytes] type. Default value is None. - :type execute_governance_rule_params: ~azure.mgmt.security.models.ExecuteGovernanceRuleParams - or IO[bytes] - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if execute_governance_rule_params else None - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._execute_initial( - scope=scope, - rule_id=rule_id, - execute_governance_rule_params=execute_governance_rule_params, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, AsyncARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def operation_results( - self, scope: str, rule_id: str, operation_id: str, **kwargs: Any - ) -> Optional[_models.OperationResultAutoGenerated]: - """Get governance rules long run operation result for the requested scope by ruleId and - operationId. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param operation_id: The governance rule long running operation unique key. Required. - :type operation_id: str - :return: OperationResultAutoGenerated or None or the result of cls(response) - :rtype: ~azure.mgmt.security.models.OperationResultAutoGenerated or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[Optional[_models.OperationResultAutoGenerated]] = kwargs.pop("cls", None) - - _request = build_operation_results_request( - scope=scope, - rule_id=rule_id, - operation_id=operation_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - response_headers = {} - if response.status_code == 200: - deserialized = self._deserialize("OperationResultAutoGenerated", pipeline_response.http_response) - - if response.status_code == 202: - response_headers["location"] = self._deserialize("str", response.headers.get("location")) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_health_reports_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_health_reports_operations.py deleted file mode 100644 index 7d361e668904..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_health_reports_operations.py +++ /dev/null @@ -1,185 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._health_reports_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class HealthReportsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`health_reports` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.HealthReport"]: - """Get a list of all health reports inside a scope. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - - :param scope: The scope at which the operation is performed. Required. - :type scope: str - :return: An iterator like instance of either HealthReport or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.HealthReport] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01-preview")) - cls: ClsType[_models.HealthReportsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("HealthReportsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, resource_id: str, health_report_name: str, **kwargs: Any) -> _models.HealthReport: - """Get health report of resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param health_report_name: The health report Key - Unique key for the health report type. - Required. - :type health_report_name: str - :return: HealthReport or the result of cls(response) - :rtype: ~azure.mgmt.security.models.HealthReport - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01-preview")) - cls: ClsType[_models.HealthReport] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - health_report_name=health_report_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("HealthReport", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_information_protection_policies_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_information_protection_policies_operations.py deleted file mode 100644 index 573a7f42763f..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_information_protection_policies_operations.py +++ /dev/null @@ -1,342 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._information_protection_policies_operations import ( - build_create_or_update_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class InformationProtectionPoliciesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`information_protection_policies` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get( - self, - scope: str, - information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], - **kwargs: Any - ) -> _models.InformationProtectionPolicy: - """Details of the information protection policy. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param information_protection_policy_name: Name of the information protection policy. Known - values are: "effective" and "custom". Required. - :type information_protection_policy_name: str or - ~azure.mgmt.security.models.InformationProtectionPolicyName - :return: InformationProtectionPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.InformationProtectionPolicy] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - information_protection_policy_name=information_protection_policy_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("InformationProtectionPolicy", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - scope: str, - information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], - information_protection_policy: _models.InformationProtectionPolicy, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.InformationProtectionPolicy: - """Details of the information protection policy. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param information_protection_policy_name: Name of the information protection policy. Known - values are: "effective" and "custom". Required. - :type information_protection_policy_name: str or - ~azure.mgmt.security.models.InformationProtectionPolicyName - :param information_protection_policy: Information protection policy. Required. - :type information_protection_policy: ~azure.mgmt.security.models.InformationProtectionPolicy - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: InformationProtectionPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - scope: str, - information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], - information_protection_policy: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.InformationProtectionPolicy: - """Details of the information protection policy. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param information_protection_policy_name: Name of the information protection policy. Known - values are: "effective" and "custom". Required. - :type information_protection_policy_name: str or - ~azure.mgmt.security.models.InformationProtectionPolicyName - :param information_protection_policy: Information protection policy. Required. - :type information_protection_policy: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: InformationProtectionPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - scope: str, - information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], - information_protection_policy: Union[_models.InformationProtectionPolicy, IO[bytes]], - **kwargs: Any - ) -> _models.InformationProtectionPolicy: - """Details of the information protection policy. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param information_protection_policy_name: Name of the information protection policy. Known - values are: "effective" and "custom". Required. - :type information_protection_policy_name: str or - ~azure.mgmt.security.models.InformationProtectionPolicyName - :param information_protection_policy: Information protection policy. Is either a - InformationProtectionPolicy type or a IO[bytes] type. Required. - :type information_protection_policy: ~azure.mgmt.security.models.InformationProtectionPolicy or - IO[bytes] - :return: InformationProtectionPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.InformationProtectionPolicy] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(information_protection_policy, (IOBase, bytes)): - _content = information_protection_policy - else: - _json = self._serialize.body(information_protection_policy, "InformationProtectionPolicy") - - _request = build_create_or_update_request( - scope=scope, - information_protection_policy_name=information_protection_policy_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("InformationProtectionPolicy", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.InformationProtectionPolicy"]: - """Information protection policies of a specific management group. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :return: An iterator like instance of either InformationProtectionPolicy or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.InformationProtectionPolicy] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.InformationProtectionPolicyList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("InformationProtectionPolicyList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_analytics_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_analytics_operations.py deleted file mode 100644 index 592551c7e17e..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_analytics_operations.py +++ /dev/null @@ -1,175 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._iot_security_solution_analytics_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class IotSecuritySolutionAnalyticsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`iot_security_solution_analytics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def list( - self, resource_group_name: str, solution_name: str, **kwargs: Any - ) -> _models.IoTSecuritySolutionAnalyticsModelList: - """Use this method to get IoT security Analytics metrics in an array. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :return: IoTSecuritySolutionAnalyticsModelList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModelList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecuritySolutionAnalyticsModelList] = kwargs.pop("cls", None) - - _request = build_list_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecuritySolutionAnalyticsModelList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, solution_name: str, **kwargs: Any - ) -> _models.IoTSecuritySolutionAnalyticsModel: - """Use this method to get IoT Security Analytics metrics. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :return: IoTSecuritySolutionAnalyticsModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecuritySolutionAnalyticsModel] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecuritySolutionAnalyticsModel", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_operations.py deleted file mode 100644 index ada5c6eaaf4d..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solution_operations.py +++ /dev/null @@ -1,607 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._iot_security_solution_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_resource_group_request, - build_list_by_subscription_request, - build_update_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class IotSecuritySolutionOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`iot_security_solution` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription( - self, filter: Optional[str] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.IoTSecuritySolutionModel"]: - """Use this method to get the list of IoT Security solutions by subscription. - - :param filter: Filter the IoT Security solution with OData syntax. Supports filtering by - iotHubs. Default value is None. - :type filter: str - :return: An iterator like instance of either IoTSecuritySolutionModel or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.IoTSecuritySolutionModel] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecuritySolutionsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("IoTSecuritySolutionsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, filter: Optional[str] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.IoTSecuritySolutionModel"]: - """Use this method to get the list IoT Security solutions organized by resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param filter: Filter the IoT Security solution with OData syntax. Supports filtering by - iotHubs. Default value is None. - :type filter: str - :return: An iterator like instance of either IoTSecuritySolutionModel or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.IoTSecuritySolutionModel] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecuritySolutionsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("IoTSecuritySolutionsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, solution_name: str, **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """User this method to get details of a specific IoT Security solution based on solution name. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecuritySolutionModel] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecuritySolutionModel", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - resource_group_name: str, - solution_name: str, - iot_security_solution_data: _models.IoTSecuritySolutionModel, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """Use this method to create or update yours IoT Security solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param iot_security_solution_data: The security solution data. Required. - :type iot_security_solution_data: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - solution_name: str, - iot_security_solution_data: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """Use this method to create or update yours IoT Security solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param iot_security_solution_data: The security solution data. Required. - :type iot_security_solution_data: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - solution_name: str, - iot_security_solution_data: Union[_models.IoTSecuritySolutionModel, IO[bytes]], - **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """Use this method to create or update yours IoT Security solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param iot_security_solution_data: The security solution data. Is either a - IoTSecuritySolutionModel type or a IO[bytes] type. Required. - :type iot_security_solution_data: ~azure.mgmt.security.models.IoTSecuritySolutionModel or - IO[bytes] - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.IoTSecuritySolutionModel] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(iot_security_solution_data, (IOBase, bytes)): - _content = iot_security_solution_data - else: - _json = self._serialize.body(iot_security_solution_data, "IoTSecuritySolutionModel") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecuritySolutionModel", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - resource_group_name: str, - solution_name: str, - update_iot_security_solution_data: _models.UpdateIotSecuritySolutionData, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """Use this method to update existing IoT Security solution tags or user defined resources. To - update other fields use the CreateOrUpdate method. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param update_iot_security_solution_data: The security solution data. Required. - :type update_iot_security_solution_data: - ~azure.mgmt.security.models.UpdateIotSecuritySolutionData - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - resource_group_name: str, - solution_name: str, - update_iot_security_solution_data: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """Use this method to update existing IoT Security solution tags or user defined resources. To - update other fields use the CreateOrUpdate method. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param update_iot_security_solution_data: The security solution data. Required. - :type update_iot_security_solution_data: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - resource_group_name: str, - solution_name: str, - update_iot_security_solution_data: Union[_models.UpdateIotSecuritySolutionData, IO[bytes]], - **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """Use this method to update existing IoT Security solution tags or user defined resources. To - update other fields use the CreateOrUpdate method. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param update_iot_security_solution_data: The security solution data. Is either a - UpdateIotSecuritySolutionData type or a IO[bytes] type. Required. - :type update_iot_security_solution_data: - ~azure.mgmt.security.models.UpdateIotSecuritySolutionData or IO[bytes] - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.IoTSecuritySolutionModel] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(update_iot_security_solution_data, (IOBase, bytes)): - _content = update_iot_security_solution_data - else: - _json = self._serialize.body(update_iot_security_solution_data, "UpdateIotSecuritySolutionData") - - _request = build_update_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecuritySolutionModel", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, resource_group_name: str, solution_name: str, **kwargs: Any) -> None: - """Use this method to delete yours IoT Security solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py deleted file mode 100644 index 74582d9c65e2..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py +++ /dev/null @@ -1,265 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._iot_security_solutions_analytics_aggregated_alert_operations import ( - build_dismiss_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class IotSecuritySolutionsAnalyticsAggregatedAlertOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`iot_security_solutions_analytics_aggregated_alert` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, solution_name: str, top: Optional[int] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.IoTSecurityAggregatedAlert"]: - """Use this method to get the aggregated alert list of yours IoT Security solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param top: Number of results to retrieve. Default value is None. - :type top: int - :return: An iterator like instance of either IoTSecurityAggregatedAlert or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.IoTSecurityAggregatedAlert] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecurityAggregatedAlertList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("IoTSecurityAggregatedAlertList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, solution_name: str, aggregated_alert_name: str, **kwargs: Any - ) -> _models.IoTSecurityAggregatedAlert: - """Use this method to get a single the aggregated alert of yours IoT Security solution. This - aggregation is performed by alert name. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param aggregated_alert_name: Identifier of the aggregated alert. Required. - :type aggregated_alert_name: str - :return: IoTSecurityAggregatedAlert or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecurityAggregatedAlert - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecurityAggregatedAlert] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - aggregated_alert_name=aggregated_alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecurityAggregatedAlert", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def dismiss( - self, resource_group_name: str, solution_name: str, aggregated_alert_name: str, **kwargs: Any - ) -> None: - """Use this method to dismiss an aggregated IoT Security Solution Alert. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param aggregated_alert_name: Identifier of the aggregated alert. Required. - :type aggregated_alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_dismiss_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - aggregated_alert_name=aggregated_alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_recommendation_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_recommendation_operations.py deleted file mode 100644 index 3db996b68c99..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_iot_security_solutions_analytics_recommendation_operations.py +++ /dev/null @@ -1,206 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._iot_security_solutions_analytics_recommendation_operations import ( - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class IotSecuritySolutionsAnalyticsRecommendationOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`iot_security_solutions_analytics_recommendation` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get( - self, resource_group_name: str, solution_name: str, aggregated_recommendation_name: str, **kwargs: Any - ) -> _models.IoTSecurityAggregatedRecommendation: - """Use this method to get the aggregated security analytics recommendation of yours IoT Security - solution. This aggregation is performed by recommendation name. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param aggregated_recommendation_name: Name of the recommendation aggregated for this query. - Required. - :type aggregated_recommendation_name: str - :return: IoTSecurityAggregatedRecommendation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecurityAggregatedRecommendation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecurityAggregatedRecommendation] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - aggregated_recommendation_name=aggregated_recommendation_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecurityAggregatedRecommendation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, solution_name: str, top: Optional[int] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.IoTSecurityAggregatedRecommendation"]: - """Use this method to get the list of aggregated security analytics recommendations of yours IoT - Security solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param top: Number of results to retrieve. Default value is None. - :type top: int - :return: An iterator like instance of either IoTSecurityAggregatedRecommendation or the result - of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.IoTSecurityAggregatedRecommendation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecurityAggregatedRecommendationList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("IoTSecurityAggregatedRecommendationList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_jit_network_access_policies_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_jit_network_access_policies_operations.py deleted file mode 100644 index a0b912a9aa8a..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_jit_network_access_policies_operations.py +++ /dev/null @@ -1,796 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Literal, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._jit_network_access_policies_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_initiate_request, - build_list_by_region_request, - build_list_by_resource_group_and_region_request, - build_list_by_resource_group_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class JitNetworkAccessPoliciesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`jit_network_access_policies` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.JitNetworkAccessPolicy"]: - """Policies for protecting resources using Just-in-Time access control. - - :return: An iterator like instance of either JitNetworkAccessPolicy or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.JitNetworkAccessPoliciesList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("JitNetworkAccessPoliciesList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_region(self, asc_location: str, **kwargs: Any) -> AsyncItemPaged["_models.JitNetworkAccessPolicy"]: - """Policies for protecting resources using Just-in-Time access control for the subscription, - location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either JitNetworkAccessPolicy or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.JitNetworkAccessPoliciesList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("JitNetworkAccessPoliciesList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.JitNetworkAccessPolicy"]: - """Policies for protecting resources using Just-in-Time access control for the subscription, - location. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either JitNetworkAccessPolicy or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.JitNetworkAccessPoliciesList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("JitNetworkAccessPoliciesList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group_and_region( - self, resource_group_name: str, asc_location: str, **kwargs: Any - ) -> AsyncItemPaged["_models.JitNetworkAccessPolicy"]: - """Policies for protecting resources using Just-in-Time access control for the subscription, - location. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either JitNetworkAccessPolicy or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.JitNetworkAccessPoliciesList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_and_region_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("JitNetworkAccessPoliciesList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, asc_location: str, jit_network_access_policy_name: str, **kwargs: Any - ) -> _models.JitNetworkAccessPolicy: - """Policies for protecting resources using Just-in-Time access control for the subscription, - location. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :return: JitNetworkAccessPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.JitNetworkAccessPolicy] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - jit_network_access_policy_name=jit_network_access_policy_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("JitNetworkAccessPolicy", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - body: _models.JitNetworkAccessPolicy, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.JitNetworkAccessPolicy: - """Create a policy for protecting resources using Just-in-Time access control. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :param body: Required. - :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicy - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: JitNetworkAccessPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.JitNetworkAccessPolicy: - """Create a policy for protecting resources using Just-in-Time access control. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :param body: Required. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: JitNetworkAccessPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - body: Union[_models.JitNetworkAccessPolicy, IO[bytes]], - **kwargs: Any - ) -> _models.JitNetworkAccessPolicy: - """Create a policy for protecting resources using Just-in-Time access control. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :param body: Is either a JitNetworkAccessPolicy type or a IO[bytes] type. Required. - :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicy or IO[bytes] - :return: JitNetworkAccessPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.JitNetworkAccessPolicy] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - _json = self._serialize.body(body, "JitNetworkAccessPolicy") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - jit_network_access_policy_name=jit_network_access_policy_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("JitNetworkAccessPolicy", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( - self, resource_group_name: str, asc_location: str, jit_network_access_policy_name: str, **kwargs: Any - ) -> None: - """Delete a Just-in-Time access control policy. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - jit_network_access_policy_name=jit_network_access_policy_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - async def initiate( - self, - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - body: _models.JitNetworkAccessPolicyInitiateRequest, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.JitNetworkAccessRequest: - """Initiate a JIT access from a specific Just-in-Time policy configuration. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :param body: Required. - :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateRequest - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: JitNetworkAccessRequest or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def initiate( - self, - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.JitNetworkAccessRequest: - """Initiate a JIT access from a specific Just-in-Time policy configuration. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :param body: Required. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: JitNetworkAccessRequest or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def initiate( - self, - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - body: Union[_models.JitNetworkAccessPolicyInitiateRequest, IO[bytes]], - **kwargs: Any - ) -> _models.JitNetworkAccessRequest: - """Initiate a JIT access from a specific Just-in-Time policy configuration. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :param body: Is either a JitNetworkAccessPolicyInitiateRequest type or a IO[bytes] type. - Required. - :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateRequest or IO[bytes] - :return: JitNetworkAccessRequest or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - jit_network_access_policy_initiate_type: Literal["initiate"] = kwargs.pop( - "jit_network_access_policy_initiate_type", "initiate" - ) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.JitNetworkAccessRequest] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - _json = self._serialize.body(body, "JitNetworkAccessPolicyInitiateRequest") - - _request = build_initiate_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - jit_network_access_policy_name=jit_network_access_policy_name, - subscription_id=self._config.subscription_id, - jit_network_access_policy_initiate_type=jit_network_access_policy_initiate_type, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("JitNetworkAccessRequest", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_locations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_locations_operations.py deleted file mode 100644 index 23246874d7b8..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_locations_operations.py +++ /dev/null @@ -1,172 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._locations_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class LocationsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`locations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.AscLocation"]: - """The location of the responsible ASC of the specific subscription (home region). For each - subscription there is only one responsible location. The location in the response should be - used to read or write other resources in ASC according to their ID. - - :return: An iterator like instance of either AscLocation or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AscLocation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.AscLocationList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("AscLocationList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, asc_location: str, **kwargs: Any) -> _models.AscLocation: - """Details of a specific location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: AscLocation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AscLocation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.AscLocation] = kwargs.pop("cls", None) - - _request = build_get_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AscLocation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_mde_onboardings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_mde_onboardings_operations.py deleted file mode 100644 index 30388c0cde3b..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_mde_onboardings_operations.py +++ /dev/null @@ -1,157 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._mde_onboardings_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class MdeOnboardingsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`mde_onboardings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def list(self, **kwargs: Any) -> _models.MdeOnboardingDataList: - """The configuration or data needed to onboard the machine to MDE. - - :return: MdeOnboardingDataList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.MdeOnboardingDataList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-10-01-preview")) - cls: ClsType[_models.MdeOnboardingDataList] = kwargs.pop("cls", None) - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated3, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MdeOnboardingDataList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get(self, **kwargs: Any) -> _models.MdeOnboardingData: - """The default configuration or data needed to onboard the machine to MDE. - - :return: MdeOnboardingData or the result of cls(response) - :rtype: ~azure.mgmt.security.models.MdeOnboardingData - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-10-01-preview")) - cls: ClsType[_models.MdeOnboardingData] = kwargs.pop("cls", None) - - _request = build_get_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated3, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MdeOnboardingData", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_results_operations.py deleted file mode 100644 index 15d3999b8fb2..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_results_operations.py +++ /dev/null @@ -1,112 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._operation_results_operations import build_get_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class OperationResultsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`operation_results` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get(self, location: str, operation_id: str, **kwargs: Any) -> None: - """Returns operation results for long running operations. - - :param location: The name of the Azure region. Required. - :type location: str - :param operation_id: The ID of an ongoing async operation. Required. - :type operation_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_get_request( - location=location, - operation_id=operation_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - if cls: - return cls(pipeline_response, None, response_headers) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_statuses_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_statuses_operations.py deleted file mode 100644 index d98e3ee814a9..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operation_statuses_operations.py +++ /dev/null @@ -1,111 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._operation_statuses_operations import build_get_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class OperationStatusesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`operation_statuses` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get(self, location: str, operation_id: str, **kwargs: Any) -> _models.OperationStatusResultAutoGenerated: - """Get the status of a long running azure asynchronous operation. - - :param location: The name of the Azure region. Required. - :type location: str - :param operation_id: The ID of an ongoing async operation. Required. - :type operation_id: str - :return: OperationStatusResultAutoGenerated or the result of cls(response) - :rtype: ~azure.mgmt.security.models.OperationStatusResultAutoGenerated - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) - cls: ClsType[_models.OperationStatusResultAutoGenerated] = kwargs.pop("cls", None) - - _request = build_get_request( - location=location, - operation_id=operation_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("OperationStatusResultAutoGenerated", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operations.py index 9f65e4deb0d6..d670085b57e4 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_operations.py @@ -1,12 +1,15 @@ +# pylint: disable=line-too-long,useless-suppression,too-many-lines # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar +from io import IOBase +import json +from typing import Any, AsyncIterator, Callable, IO, Literal, Optional, TypeVar, Union, cast, overload from azure.core import AsyncPipelineClient from azure.core.async_paging import AsyncItemPaged, AsyncList @@ -16,56 +19,811 @@ ResourceExistsError, ResourceNotFoundError, ResourceNotModifiedError, + StreamClosedError, + StreamConsumedError, map_error, ) from azure.core.pipeline import PipelineResponse +from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod from azure.core.rest import AsyncHttpResponse, HttpRequest from azure.core.tracing.decorator import distributed_trace +from azure.core.tracing.decorator_async import distributed_trace_async from azure.core.utils import case_insensitive_dict from azure.mgmt.core.exceptions import ARMErrorFormat +from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling from ... import models as _models +from ..._utils.model_base import SdkJSONEncoder, _deserialize, _failsafe_deserialize from ..._utils.serialization import Deserializer, Serializer -from ...operations._operations import build_list_request -from .._configuration import SecurityCenterConfiguration +from ...operations._operations import ( + build_advanced_threat_protection_create_request, + build_advanced_threat_protection_get_request, + build_alerts_get_resource_group_level_request, + build_alerts_get_subscription_level_request, + build_alerts_list_by_resource_group_request, + build_alerts_list_request, + build_alerts_list_resource_group_level_by_region_request, + build_alerts_list_subscription_level_by_region_request, + build_alerts_simulate_request, + build_alerts_suppression_rules_delete_request, + build_alerts_suppression_rules_get_request, + build_alerts_suppression_rules_list_request, + build_alerts_suppression_rules_update_request, + build_alerts_update_resource_group_level_state_to_activate_request, + build_alerts_update_resource_group_level_state_to_dismiss_request, + build_alerts_update_resource_group_level_state_to_in_progress_request, + build_alerts_update_resource_group_level_state_to_resolve_request, + build_alerts_update_subscription_level_state_to_activate_request, + build_alerts_update_subscription_level_state_to_dismiss_request, + build_alerts_update_subscription_level_state_to_in_progress_request, + build_alerts_update_subscription_level_state_to_resolve_request, + build_allowed_connections_get_request, + build_allowed_connections_list_by_home_region_request, + build_allowed_connections_list_request, + build_api_collections_get_by_azure_api_management_service_request, + build_api_collections_list_by_azure_api_management_service_request, + build_api_collections_list_by_resource_group_request, + build_api_collections_list_by_subscription_request, + build_api_collections_offboard_azure_api_management_api_request, + build_api_collections_onboard_azure_api_management_api_request, + build_application_create_or_update_request, + build_application_delete_request, + build_application_get_request, + build_applications_list_request, + build_assessments_create_or_update_request, + build_assessments_delete_request, + build_assessments_get_request, + build_assessments_list_request, + build_assessments_metadata_create_in_subscription_request, + build_assessments_metadata_delete_in_subscription_request, + build_assessments_metadata_get_in_subscription_request, + build_assessments_metadata_get_request, + build_assessments_metadata_list_by_subscription_request, + build_assessments_metadata_list_request, + build_assignments_create_or_update_request, + build_assignments_delete_request, + build_assignments_get_request, + build_assignments_list_by_subscription_request, + build_assignments_list_request, + build_auto_provisioning_settings_create_request, + build_auto_provisioning_settings_get_request, + build_auto_provisioning_settings_list_request, + build_automations_create_or_update_request, + build_automations_delete_request, + build_automations_get_request, + build_automations_list_by_resource_group_request, + build_automations_list_request, + build_automations_update_request, + build_automations_validate_request, + build_azure_dev_ops_orgs_create_or_update_request, + build_azure_dev_ops_orgs_get_request, + build_azure_dev_ops_orgs_list_available_request, + build_azure_dev_ops_orgs_list_request, + build_azure_dev_ops_orgs_update_request, + build_azure_dev_ops_projects_create_or_update_request, + build_azure_dev_ops_projects_get_request, + build_azure_dev_ops_projects_list_request, + build_azure_dev_ops_projects_update_request, + build_azure_dev_ops_repos_create_or_update_request, + build_azure_dev_ops_repos_get_request, + build_azure_dev_ops_repos_list_request, + build_azure_dev_ops_repos_update_request, + build_compliance_results_get_request, + build_compliance_results_list_request, + build_compliances_get_request, + build_compliances_list_request, + build_custom_recommendations_create_or_update_request, + build_custom_recommendations_delete_request, + build_custom_recommendations_get_request, + build_custom_recommendations_list_request, + build_defender_for_storage_cancel_malware_scan_request, + build_defender_for_storage_create_request, + build_defender_for_storage_get_malware_scan_request, + build_defender_for_storage_get_request, + build_defender_for_storage_list_request, + build_defender_for_storage_start_malware_scan_request, + build_dev_ops_configurations_create_or_update_request, + build_dev_ops_configurations_delete_request, + build_dev_ops_configurations_get_request, + build_dev_ops_configurations_list_request, + build_dev_ops_configurations_update_request, + build_dev_ops_operation_results_get_request, + build_device_security_groups_create_or_update_request, + build_device_security_groups_delete_request, + build_device_security_groups_get_request, + build_device_security_groups_list_request, + build_discovered_security_solutions_get_request, + build_discovered_security_solutions_list_by_home_region_request, + build_discovered_security_solutions_list_request, + build_external_security_solutions_get_request, + build_external_security_solutions_list_by_home_region_request, + build_external_security_solutions_list_request, + build_git_hub_issues_create_request, + build_git_hub_owners_get_request, + build_git_hub_owners_list_available_request, + build_git_hub_owners_list_request, + build_git_hub_repos_get_request, + build_git_hub_repos_list_request, + build_git_lab_groups_get_request, + build_git_lab_groups_list_available_request, + build_git_lab_groups_list_request, + build_git_lab_projects_get_request, + build_git_lab_projects_list_request, + build_git_lab_subgroups_list_request, + build_governance_assignments_create_or_update_request, + build_governance_assignments_delete_request, + build_governance_assignments_get_request, + build_governance_assignments_list_request, + build_governance_rules_create_or_update_request, + build_governance_rules_delete_request, + build_governance_rules_execute_request, + build_governance_rules_get_request, + build_governance_rules_list_request, + build_governance_rules_operation_results_request, + build_health_reports_get_request, + build_health_reports_list_request, + build_information_protection_policies_create_or_update_request, + build_information_protection_policies_get_request, + build_information_protection_policies_list_request, + build_iot_security_solution_analytics_get_request, + build_iot_security_solution_analytics_list_request, + build_iot_security_solution_create_or_update_request, + build_iot_security_solution_delete_request, + build_iot_security_solution_get_request, + build_iot_security_solution_list_by_resource_group_request, + build_iot_security_solution_list_by_subscription_request, + build_iot_security_solution_update_request, + build_iot_security_solutions_analytics_aggregated_alert_dismiss_request, + build_iot_security_solutions_analytics_aggregated_alert_get_request, + build_iot_security_solutions_analytics_aggregated_alert_list_request, + build_iot_security_solutions_analytics_recommendation_get_request, + build_iot_security_solutions_analytics_recommendation_list_request, + build_jit_network_access_policies_create_or_update_request, + build_jit_network_access_policies_delete_request, + build_jit_network_access_policies_get_request, + build_jit_network_access_policies_initiate_request, + build_jit_network_access_policies_list_by_region_request, + build_jit_network_access_policies_list_by_resource_group_and_region_request, + build_jit_network_access_policies_list_by_resource_group_request, + build_jit_network_access_policies_list_request, + build_locations_get_request, + build_locations_list_request, + build_mde_onboardings_get_request, + build_mde_onboardings_list_request, + build_operation_results_get_request, + build_operation_statuses_get_request, + build_operations_list_request, + build_pricings_delete_request, + build_pricings_get_request, + build_pricings_list_request, + build_pricings_update_request, + build_private_endpoint_connections_create_or_update_request, + build_private_endpoint_connections_delete_request, + build_private_endpoint_connections_get_request, + build_private_endpoint_connections_list_request, + build_private_link_resources_get_request, + build_private_link_resources_list_request, + build_private_links_create_request, + build_private_links_delete_request, + build_private_links_get_request, + build_private_links_head_request, + build_private_links_list_by_subscription_request, + build_private_links_list_request, + build_private_links_update_request, + build_regulatory_compliance_assessments_get_request, + build_regulatory_compliance_assessments_list_request, + build_regulatory_compliance_controls_get_request, + build_regulatory_compliance_controls_list_request, + build_regulatory_compliance_standards_get_request, + build_regulatory_compliance_standards_list_request, + build_secure_score_control_definitions_list_by_subscription_request, + build_secure_score_control_definitions_list_request, + build_secure_score_controls_list_by_secure_score_request, + build_secure_score_controls_list_request, + build_secure_scores_get_request, + build_secure_scores_list_request, + build_security_connector_application_create_or_update_request, + build_security_connector_application_delete_request, + build_security_connector_application_get_request, + build_security_connector_applications_list_request, + build_security_connectors_create_or_update_request, + build_security_connectors_delete_request, + build_security_connectors_get_request, + build_security_connectors_list_by_resource_group_request, + build_security_connectors_list_request, + build_security_connectors_update_request, + build_security_contacts_create_request, + build_security_contacts_delete_request, + build_security_contacts_get_request, + build_security_contacts_list_request, + build_security_operators_create_or_update_request, + build_security_operators_delete_request, + build_security_operators_get_request, + build_security_operators_list_request, + build_security_solutions_get_request, + build_security_solutions_list_request, + build_security_solutions_reference_data_list_by_home_region_request, + build_security_solutions_reference_data_list_request, + build_security_standards_create_or_update_request, + build_security_standards_delete_request, + build_security_standards_get_request, + build_security_standards_list_request, + build_sensitivity_settings_create_or_update_request, + build_sensitivity_settings_get_request, + build_sensitivity_settings_list_request, + build_server_vulnerability_assessment_create_or_update_request, + build_server_vulnerability_assessment_delete_request, + build_server_vulnerability_assessment_get_request, + build_server_vulnerability_assessment_list_by_extended_resource_request, + build_server_vulnerability_assessments_settings_create_or_update_request, + build_server_vulnerability_assessments_settings_delete_request, + build_server_vulnerability_assessments_settings_get_request, + build_server_vulnerability_assessments_settings_list_by_subscription_request, + build_settings_get_request, + build_settings_list_request, + build_settings_update_request, + build_sql_vulnerability_assessment_baseline_rules_add_request, + build_sql_vulnerability_assessment_baseline_rules_create_or_update_request, + build_sql_vulnerability_assessment_baseline_rules_delete_request, + build_sql_vulnerability_assessment_baseline_rules_get_request, + build_sql_vulnerability_assessment_baseline_rules_list_request, + build_sql_vulnerability_assessment_scan_results_get_request, + build_sql_vulnerability_assessment_scan_results_list_request, + build_sql_vulnerability_assessment_scans_get_request, + build_sql_vulnerability_assessment_scans_get_scan_operation_result_request, + build_sql_vulnerability_assessment_scans_initiate_scan_request, + build_sql_vulnerability_assessment_scans_list_request, + build_sql_vulnerability_assessment_settings_create_or_update_request, + build_sql_vulnerability_assessment_settings_delete_request, + build_sql_vulnerability_assessment_settings_get_request, + build_standard_assignments_create_request, + build_standard_assignments_delete_request, + build_standard_assignments_get_request, + build_standard_assignments_list_request, + build_standards_create_or_update_request, + build_standards_delete_request, + build_standards_get_request, + build_standards_list_by_subscription_request, + build_standards_list_request, + build_sub_assessments_get_request, + build_sub_assessments_list_all_request, + build_sub_assessments_list_request, + build_tasks_get_resource_group_level_task_request, + build_tasks_get_subscription_level_task_request, + build_tasks_list_by_home_region_request, + build_tasks_list_by_resource_group_request, + build_tasks_list_request, + build_tasks_update_resource_group_level_task_state_request, + build_tasks_update_subscription_level_task_state_request, + build_topology_get_request, + build_topology_list_by_home_region_request, + build_topology_list_request, + build_workspace_settings_create_request, + build_workspace_settings_delete_request, + build_workspace_settings_get_request, + build_workspace_settings_list_request, + build_workspace_settings_update_request, +) +from .._configuration import SecurityManagementClientConfiguration +JSON = MutableMapping[str, Any] T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] List = list -class Operations: +class AlertsOperations: """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`operations` attribute. + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`alerts` attribute. """ - models = _models - def __init__(self, *args, **kwargs) -> None: input_args = list(args) self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + @distributed_trace_async + async def get_subscription_level(self, asc_location: str, alert_name: str, **kwargs: Any) -> _models.Alert: + """Get an alert that is associated with a subscription. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: Alert. The Alert is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Alert + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[_models.Alert] = kwargs.pop("cls", None) + + _request = build_alerts_get_subscription_level_request( + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Alert, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.Operation"]: - """Exposes all available operations for discovery purposes. + def list_subscription_level_by_region(self, asc_location: str, **kwargs: Any) -> AsyncItemPaged["_models.Alert"]: + """List all the alerts that are associated with the subscription that are stored in a specific + location. - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Operation] + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of Alert + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Alert] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[List[_models.Alert]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_alerts_list_subscription_level_by_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Alert], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + async def update_subscription_level_state_to_dismiss( # pylint: disable=name-too-long + self, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_subscription_level_state_to_dismiss_request( + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace_async + async def update_subscription_level_state_to_resolve( # pylint: disable=name-too-long + self, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_subscription_level_state_to_resolve_request( + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace_async + async def update_subscription_level_state_to_activate( # pylint: disable=name-too-long + self, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_subscription_level_state_to_activate_request( + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace_async + async def update_subscription_level_state_to_in_progress( # pylint: disable=name-too-long + self, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_subscription_level_state_to_in_progress_request( + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace_async + async def get_resource_group_level( + self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any + ) -> _models.Alert: + """Get an alert that is associated a resource group or a resource in a resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: Alert. The Alert is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Alert + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[_models.Alert] = kwargs.pop("cls", None) + + _request = build_alerts_get_resource_group_level_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Alert, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_resource_group_level_by_region( + self, resource_group_name: str, asc_location: str, **kwargs: Any + ) -> AsyncItemPaged["_models.Alert"]: + """List all the alerts that are associated with the resource group that are stored in a specific + location. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of Alert + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Alert] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[List[_models.Alert]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -78,25 +836,27668 @@ def list(self, **kwargs: Any) -> AsyncItemPaged["_models.Operation"]: def prepare_request(next_link=None): if not next_link: - _request = build_list_request( + _request = build_alerts_list_resource_group_level_by_region_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + subscription_id=self._config.subscription_id, api_version=api_version, headers=_headers, params=_params, ) - _request.url = self._client.format_url(_request.url) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) else: _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + return _request async def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Alert], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + async def update_resource_group_level_state_to_resolve( # pylint: disable=name-too-long + self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_resource_group_level_state_to_resolve_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace_async + async def update_resource_group_level_state_to_dismiss( # pylint: disable=name-too-long + self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_resource_group_level_state_to_dismiss_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace_async + async def update_resource_group_level_state_to_activate( # pylint: disable=name-too-long + self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_resource_group_level_state_to_activate_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace_async + async def update_resource_group_level_state_to_in_progress( # pylint: disable=name-too-long + self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_resource_group_level_state_to_in_progress_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.Alert"]: + """List all the alerts that are associated with the subscription. + + :return: An iterator like instance of Alert + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Alert] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[List[_models.Alert]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_alerts_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Alert], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.Alert"]: + """List all the alerts that are associated with the resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of Alert + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Alert] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[List[_models.Alert]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_alerts_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Alert], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + async def _simulate_initial( + self, + asc_location: str, + alert_simulator_request_body: Union[_models.AlertSimulatorRequestBody, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(alert_simulator_request_body, (IOBase, bytes)): + _content = alert_simulator_request_body + else: + _content = json.dumps(alert_simulator_request_body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_alerts_simulate_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_simulate( + self, + asc_location: str, + alert_simulator_request_body: _models.AlertSimulatorRequestBody, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Simulate security alerts. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_simulator_request_body: The request body. Required. + :type alert_simulator_request_body: ~azure.mgmt.security.models.AlertSimulatorRequestBody + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_simulate( + self, + asc_location: str, + alert_simulator_request_body: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Simulate security alerts. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_simulator_request_body: The request body. Required. + :type alert_simulator_request_body: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_simulate( + self, + asc_location: str, + alert_simulator_request_body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Simulate security alerts. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_simulator_request_body: The request body. Required. + :type alert_simulator_request_body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_simulate( + self, + asc_location: str, + alert_simulator_request_body: Union[_models.AlertSimulatorRequestBody, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Simulate security alerts. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_simulator_request_body: The request body. Is one of the following types: + AlertSimulatorRequestBody, JSON, IO[bytes] Required. + :type alert_simulator_request_body: ~azure.mgmt.security.models.AlertSimulatorRequestBody or + JSON or IO[bytes] + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._simulate_initial( + asc_location=asc_location, + alert_simulator_request_body=alert_simulator_request_body, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + +class AlertsSuppressionRulesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`alerts_suppression_rules` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, alerts_suppression_rule_name: str, **kwargs: Any) -> _models.AlertsSuppressionRule: + """Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription. + + :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. + :type alerts_suppression_rule_name: str + :return: AlertsSuppressionRule. The AlertsSuppressionRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[_models.AlertsSuppressionRule] = kwargs.pop("cls", None) + + _request = build_alerts_suppression_rules_get_request( + alerts_suppression_rule_name=alerts_suppression_rule_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AlertsSuppressionRule, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def update( + self, + alerts_suppression_rule_name: str, + alerts_suppression_rule: _models.AlertsSuppressionRule, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AlertsSuppressionRule: + """Update existing rule or create new rule if it doesn't exist. + + :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. + :type alerts_suppression_rule_name: str + :param alerts_suppression_rule: Suppression rule object. Required. + :type alerts_suppression_rule: ~azure.mgmt.security.models.AlertsSuppressionRule + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AlertsSuppressionRule. The AlertsSuppressionRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + alerts_suppression_rule_name: str, + alerts_suppression_rule: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AlertsSuppressionRule: + """Update existing rule or create new rule if it doesn't exist. + + :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. + :type alerts_suppression_rule_name: str + :param alerts_suppression_rule: Suppression rule object. Required. + :type alerts_suppression_rule: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AlertsSuppressionRule. The AlertsSuppressionRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + alerts_suppression_rule_name: str, + alerts_suppression_rule: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AlertsSuppressionRule: + """Update existing rule or create new rule if it doesn't exist. + + :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. + :type alerts_suppression_rule_name: str + :param alerts_suppression_rule: Suppression rule object. Required. + :type alerts_suppression_rule: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: AlertsSuppressionRule. The AlertsSuppressionRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def update( + self, + alerts_suppression_rule_name: str, + alerts_suppression_rule: Union[_models.AlertsSuppressionRule, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.AlertsSuppressionRule: + """Update existing rule or create new rule if it doesn't exist. + + :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. + :type alerts_suppression_rule_name: str + :param alerts_suppression_rule: Suppression rule object. Is one of the following types: + AlertsSuppressionRule, JSON, IO[bytes] Required. + :type alerts_suppression_rule: ~azure.mgmt.security.models.AlertsSuppressionRule or JSON or + IO[bytes] + :return: AlertsSuppressionRule. The AlertsSuppressionRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AlertsSuppressionRule] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(alerts_suppression_rule, (IOBase, bytes)): + _content = alerts_suppression_rule + else: + _content = json.dumps(alerts_suppression_rule, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_alerts_suppression_rules_update_request( + alerts_suppression_rule_name=alerts_suppression_rule_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AlertsSuppressionRule, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, alerts_suppression_rule_name: str, **kwargs: Any) -> None: + """Delete dismiss alert rule for this subscription. + + :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. + :type alerts_suppression_rule_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_suppression_rules_delete_request( + alerts_suppression_rule_name=alerts_suppression_rule_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list( + self, *, alert_type: Optional[str] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.AlertsSuppressionRule"]: + """List of all the dismiss rules for the given subscription. + + :keyword alert_type: Type of the alert to get rules for. Default value is None. + :paramtype alert_type: str + :return: An iterator like instance of AlertsSuppressionRule + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AlertsSuppressionRule] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[List[_models.AlertsSuppressionRule]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_alerts_suppression_rules_list_request( + subscription_id=self._config.subscription_id, + alert_type=alert_type, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AlertsSuppressionRule], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class ApplicationsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`applications` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.Application"]: + """Get a list of all relevant applications over a subscription level scope. + + :return: An iterator like instance of Application + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Application] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + cls: ClsType[List[_models.Application]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_applications_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Application], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SecurityConnectorApplicationOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`security_connector_application` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, security_connector_name: str, application_id: str, **kwargs: Any + ) -> _models.Application: + """Get a specific application for the requested scope by applicationId. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + cls: ClsType[_models.Application] = kwargs.pop("cls", None) + + _request = build_security_connector_application_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + application_id=application_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Application, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + application_id: str, + application: _models.Application, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Application: + """Creates or update a security Application on the given security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Required. + :type application: ~azure.mgmt.security.models.Application + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + application_id: str, + application: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Application: + """Creates or update a security Application on the given security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Required. + :type application: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + application_id: str, + application: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Application: + """Creates or update a security Application on the given security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Required. + :type application: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + application_id: str, + application: Union[_models.Application, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.Application: + """Creates or update a security Application on the given security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Is one of the following types: + Application, JSON, IO[bytes] Required. + :type application: ~azure.mgmt.security.models.Application or JSON or IO[bytes] + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Application] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(application, (IOBase, bytes)): + _content = application + else: + _content = json.dumps(application, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_security_connector_application_create_or_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + application_id=application_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Application, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete( + self, resource_group_name: str, security_connector_name: str, application_id: str, **kwargs: Any + ) -> None: + """Delete an Application over a given scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_security_connector_application_delete_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + application_id=application_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + +class AssessmentsMetadataOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`assessments_metadata` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get_in_subscription( + self, assessment_metadata_name: str, **kwargs: Any + ) -> _models.SecurityAssessmentMetadataResponse: + """Get metadata information on an assessment type in a specific subscription. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :return: SecurityAssessmentMetadataResponse. The SecurityAssessmentMetadataResponse is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) + + _request = build_assessments_metadata_get_in_subscription_request( + assessment_metadata_name=assessment_metadata_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityAssessmentMetadataResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_in_subscription( + self, + assessment_metadata_name: str, + assessment_metadata: _models.SecurityAssessmentMetadataResponse, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityAssessmentMetadataResponse: + """Create metadata information on an assessment type in a specific subscription. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :param assessment_metadata: AssessmentMetadata object. Required. + :type assessment_metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityAssessmentMetadataResponse. The SecurityAssessmentMetadataResponse is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_in_subscription( + self, + assessment_metadata_name: str, + assessment_metadata: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityAssessmentMetadataResponse: + """Create metadata information on an assessment type in a specific subscription. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :param assessment_metadata: AssessmentMetadata object. Required. + :type assessment_metadata: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityAssessmentMetadataResponse. The SecurityAssessmentMetadataResponse is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_in_subscription( + self, + assessment_metadata_name: str, + assessment_metadata: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityAssessmentMetadataResponse: + """Create metadata information on an assessment type in a specific subscription. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :param assessment_metadata: AssessmentMetadata object. Required. + :type assessment_metadata: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityAssessmentMetadataResponse. The SecurityAssessmentMetadataResponse is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_in_subscription( + self, + assessment_metadata_name: str, + assessment_metadata: Union[_models.SecurityAssessmentMetadataResponse, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.SecurityAssessmentMetadataResponse: + """Create metadata information on an assessment type in a specific subscription. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :param assessment_metadata: AssessmentMetadata object. Is one of the following types: + SecurityAssessmentMetadataResponse, JSON, IO[bytes] Required. + :type assessment_metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse or + JSON or IO[bytes] + :return: SecurityAssessmentMetadataResponse. The SecurityAssessmentMetadataResponse is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(assessment_metadata, (IOBase, bytes)): + _content = assessment_metadata + else: + _content = json.dumps(assessment_metadata, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_assessments_metadata_create_in_subscription_request( + assessment_metadata_name=assessment_metadata_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityAssessmentMetadataResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete_in_subscription(self, assessment_metadata_name: str, **kwargs: Any) -> None: + """Delete metadata information on an assessment type in a specific subscription, will cause the + deletion of all the assessments of that type in that subscription. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_assessments_metadata_delete_in_subscription_request( + assessment_metadata_name=assessment_metadata_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.SecurityAssessmentMetadataResponse"]: + """Get metadata information on all assessment types in a specific subscription. + + :return: An iterator like instance of SecurityAssessmentMetadataResponse + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityAssessmentMetadataResponse] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[List[_models.SecurityAssessmentMetadataResponse]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_assessments_metadata_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityAssessmentMetadataResponse], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + async def get(self, assessment_metadata_name: str, **kwargs: Any) -> _models.SecurityAssessmentMetadataResponse: + """Get metadata information on an assessment type. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :return: SecurityAssessmentMetadataResponse. The SecurityAssessmentMetadataResponse is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) + + _request = build_assessments_metadata_get_request( + assessment_metadata_name=assessment_metadata_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityAssessmentMetadataResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecurityAssessmentMetadataResponse"]: + """Get metadata information on all assessment types. + + :return: An iterator like instance of SecurityAssessmentMetadataResponse + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityAssessmentMetadataResponse] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[List[_models.SecurityAssessmentMetadataResponse]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_assessments_metadata_list_request( + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityAssessmentMetadataResponse], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class AutomationsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`automations` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, resource_group_name: str, automation_name: str, **kwargs: Any) -> _models.Automation: + """Retrieves information about the model of a security automation. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[_models.Automation] = kwargs.pop("cls", None) + + _request = build_automations_get_request( + resource_group_name=resource_group_name, + automation_name=automation_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Automation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + resource_group_name: str, + automation_name: str, + automation: _models.Automation, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Automation: + """Creates or updates a security automation. If a security automation is already created and a + subsequent request is issued for the same automation id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Required. + :type automation: ~azure.mgmt.security.models.Automation + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + automation_name: str, + automation: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Automation: + """Creates or updates a security automation. If a security automation is already created and a + subsequent request is issued for the same automation id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Required. + :type automation: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + automation_name: str, + automation: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Automation: + """Creates or updates a security automation. If a security automation is already created and a + subsequent request is issued for the same automation id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Required. + :type automation: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_group_name: str, + automation_name: str, + automation: Union[_models.Automation, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.Automation: + """Creates or updates a security automation. If a security automation is already created and a + subsequent request is issued for the same automation id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Is one of the following types: Automation, + JSON, IO[bytes] Required. + :type automation: ~azure.mgmt.security.models.Automation or JSON or IO[bytes] + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Automation] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(automation, (IOBase, bytes)): + _content = automation + else: + _content = json.dumps(automation, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_automations_create_or_update_request( + resource_group_name=resource_group_name, + automation_name=automation_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Automation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def update( + self, + resource_group_name: str, + automation_name: str, + automation: _models.AutomationUpdateModel, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Automation: + """Updates a security automation. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The update model of security automation resource. Required. + :type automation: ~azure.mgmt.security.models.AutomationUpdateModel + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + resource_group_name: str, + automation_name: str, + automation: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Automation: + """Updates a security automation. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The update model of security automation resource. Required. + :type automation: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + resource_group_name: str, + automation_name: str, + automation: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Automation: + """Updates a security automation. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The update model of security automation resource. Required. + :type automation: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def update( + self, + resource_group_name: str, + automation_name: str, + automation: Union[_models.AutomationUpdateModel, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.Automation: + """Updates a security automation. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The update model of security automation resource. Is one of the following + types: AutomationUpdateModel, JSON, IO[bytes] Required. + :type automation: ~azure.mgmt.security.models.AutomationUpdateModel or JSON or IO[bytes] + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Automation] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(automation, (IOBase, bytes)): + _content = automation + else: + _content = json.dumps(automation, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_automations_update_request( + resource_group_name=resource_group_name, + automation_name=automation_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Automation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, resource_group_name: str, automation_name: str, **kwargs: Any) -> None: + """Deletes a security automation. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_automations_delete_request( + resource_group_name=resource_group_name, + automation_name=automation_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.Automation"]: + """Lists all the security automations in the specified resource group. Use the 'nextLink' property + in the response to get the next page of security automations for the specified resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of Automation + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Automation] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[List[_models.Automation]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_automations_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Automation], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.Automation"]: + """Lists all the security automations in the specified subscription. Use the 'nextLink' property + in the response to get the next page of security automations for the specified subscription. + + :return: An iterator like instance of Automation + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Automation] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[List[_models.Automation]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_automations_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Automation], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @overload + async def validate( + self, + resource_group_name: str, + automation_name: str, + automation: _models.Automation, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AutomationValidationStatus: + """Validates the security automation model before create or update. Any validation errors are + returned to the client. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Required. + :type automation: ~azure.mgmt.security.models.Automation + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AutomationValidationStatus. The AutomationValidationStatus is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.AutomationValidationStatus + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def validate( + self, + resource_group_name: str, + automation_name: str, + automation: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AutomationValidationStatus: + """Validates the security automation model before create or update. Any validation errors are + returned to the client. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Required. + :type automation: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AutomationValidationStatus. The AutomationValidationStatus is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.AutomationValidationStatus + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def validate( + self, + resource_group_name: str, + automation_name: str, + automation: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AutomationValidationStatus: + """Validates the security automation model before create or update. Any validation errors are + returned to the client. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Required. + :type automation: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: AutomationValidationStatus. The AutomationValidationStatus is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.AutomationValidationStatus + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def validate( + self, + resource_group_name: str, + automation_name: str, + automation: Union[_models.Automation, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.AutomationValidationStatus: + """Validates the security automation model before create or update. Any validation errors are + returned to the client. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Is one of the following types: Automation, + JSON, IO[bytes] Required. + :type automation: ~azure.mgmt.security.models.Automation or JSON or IO[bytes] + :return: AutomationValidationStatus. The AutomationValidationStatus is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.AutomationValidationStatus + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutomationValidationStatus] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(automation, (IOBase, bytes)): + _content = automation + else: + _content = json.dumps(automation, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_automations_validate_request( + resource_group_name=resource_group_name, + automation_name=automation_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AutomationValidationStatus, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class SecurityContactsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`security_contacts` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, security_contact_name: Union[str, _models.SecurityContactName], **kwargs: Any + ) -> _models.SecurityContact: + """Get Default Security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object. "default" Required. + :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName + :return: SecurityContact. The SecurityContact is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityContact + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[_models.SecurityContact] = kwargs.pop("cls", None) + + _request = build_security_contacts_get_request( + security_contact_name=security_contact_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityContact, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create( + self, + security_contact_name: Union[str, _models.SecurityContactName], + security_contact: _models.SecurityContact, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityContact: + """Create security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object. "default" Required. + :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName + :param security_contact: Security contact object. Required. + :type security_contact: ~azure.mgmt.security.models.SecurityContact + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityContact. The SecurityContact is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityContact + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create( + self, + security_contact_name: Union[str, _models.SecurityContactName], + security_contact: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityContact: + """Create security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object. "default" Required. + :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName + :param security_contact: Security contact object. Required. + :type security_contact: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityContact. The SecurityContact is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityContact + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create( + self, + security_contact_name: Union[str, _models.SecurityContactName], + security_contact: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityContact: + """Create security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object. "default" Required. + :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName + :param security_contact: Security contact object. Required. + :type security_contact: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityContact. The SecurityContact is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityContact + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create( + self, + security_contact_name: Union[str, _models.SecurityContactName], + security_contact: Union[_models.SecurityContact, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.SecurityContact: + """Create security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object. "default" Required. + :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName + :param security_contact: Security contact object. Is one of the following types: + SecurityContact, JSON, IO[bytes] Required. + :type security_contact: ~azure.mgmt.security.models.SecurityContact or JSON or IO[bytes] + :return: SecurityContact. The SecurityContact is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityContact + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.SecurityContact] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(security_contact, (IOBase, bytes)): + _content = security_contact + else: + _content = json.dumps(security_contact, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_security_contacts_create_request( + security_contact_name=security_contact_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityContact, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, security_contact_name: Union[str, _models.SecurityContactName], **kwargs: Any) -> None: + """Delete security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object. "default" Required. + :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_security_contacts_delete_request( + security_contact_name=security_contact_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecurityContact"]: + """List all security contact configurations for the subscription. + + :return: An iterator like instance of SecurityContact + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityContact] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[List[_models.SecurityContact]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_contacts_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityContact], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class ComplianceResultsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`compliance_results` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, resource_id: str, compliance_result_name: str, **kwargs: Any) -> _models.ComplianceResult: + """Security Compliance Result. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param compliance_result_name: The compliance result key. Required. + :type compliance_result_name: str + :return: ComplianceResult. The ComplianceResult is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ComplianceResult + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01")) + cls: ClsType[_models.ComplianceResult] = kwargs.pop("cls", None) + + _request = build_compliance_results_get_request( + resource_id=resource_id, + compliance_result_name=compliance_result_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ComplianceResult, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.ComplianceResult"]: + """Security compliance results in the subscription. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of ComplianceResult + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ComplianceResult] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01")) + cls: ClsType[List[_models.ComplianceResult]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_compliance_results_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ComplianceResult], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class GovernanceAssignmentsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`governance_assignments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, scope: str, assessment_name: str, assignment_key: str, **kwargs: Any + ) -> _models.GovernanceAssignment: + """Get a specific governanceAssignment for the requested scope by AssignmentKey. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :param assignment_key: The governance assignment key. Required. + :type assignment_key: str + :return: GovernanceAssignment. The GovernanceAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[_models.GovernanceAssignment] = kwargs.pop("cls", None) + + _request = build_governance_assignments_get_request( + scope=scope, + assessment_name=assessment_name, + assignment_key=assignment_key, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GovernanceAssignment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + scope: str, + assessment_name: str, + assignment_key: str, + governance_assignment: _models.GovernanceAssignment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.GovernanceAssignment: + """Creates or updates a governance assignment on the given subscription. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :param assignment_key: The governance assignment key. Required. + :type assignment_key: str + :param governance_assignment: Governance assignment over a subscription scope. Required. + :type governance_assignment: ~azure.mgmt.security.models.GovernanceAssignment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: GovernanceAssignment. The GovernanceAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + scope: str, + assessment_name: str, + assignment_key: str, + governance_assignment: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.GovernanceAssignment: + """Creates or updates a governance assignment on the given subscription. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :param assignment_key: The governance assignment key. Required. + :type assignment_key: str + :param governance_assignment: Governance assignment over a subscription scope. Required. + :type governance_assignment: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: GovernanceAssignment. The GovernanceAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + scope: str, + assessment_name: str, + assignment_key: str, + governance_assignment: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.GovernanceAssignment: + """Creates or updates a governance assignment on the given subscription. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :param assignment_key: The governance assignment key. Required. + :type assignment_key: str + :param governance_assignment: Governance assignment over a subscription scope. Required. + :type governance_assignment: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: GovernanceAssignment. The GovernanceAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + scope: str, + assessment_name: str, + assignment_key: str, + governance_assignment: Union[_models.GovernanceAssignment, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.GovernanceAssignment: + """Creates or updates a governance assignment on the given subscription. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :param assignment_key: The governance assignment key. Required. + :type assignment_key: str + :param governance_assignment: Governance assignment over a subscription scope. Is one of the + following types: GovernanceAssignment, JSON, IO[bytes] Required. + :type governance_assignment: ~azure.mgmt.security.models.GovernanceAssignment or JSON or + IO[bytes] + :return: GovernanceAssignment. The GovernanceAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.GovernanceAssignment] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(governance_assignment, (IOBase, bytes)): + _content = governance_assignment + else: + _content = json.dumps(governance_assignment, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_governance_assignments_create_or_update_request( + scope=scope, + assessment_name=assessment_name, + assignment_key=assignment_key, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GovernanceAssignment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, scope: str, assessment_name: str, assignment_key: str, **kwargs: Any) -> None: + """Delete a GovernanceAssignment over a given scope. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :param assignment_key: The governance assignment key. Required. + :type assignment_key: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_governance_assignments_delete_request( + scope=scope, + assessment_name=assessment_name, + assignment_key=assignment_key, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, scope: str, assessment_name: str, **kwargs: Any) -> AsyncItemPaged["_models.GovernanceAssignment"]: + """Get governance assignments on all of your resources inside a scope. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :return: An iterator like instance of GovernanceAssignment + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GovernanceAssignment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[List[_models.GovernanceAssignment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_governance_assignments_list_request( + scope=scope, + assessment_name=assessment_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GovernanceAssignment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class GovernanceRulesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`governance_rules` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, scope: str, rule_id: str, **kwargs: Any) -> _models.GovernanceRule: + """Get a specific governance rule for the requested scope by ruleId. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :return: GovernanceRule. The GovernanceRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[_models.GovernanceRule] = kwargs.pop("cls", None) + + _request = build_governance_rules_get_request( + scope=scope, + rule_id=rule_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GovernanceRule, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + scope: str, + rule_id: str, + governance_rule: _models.GovernanceRule, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.GovernanceRule: + """Creates or updates a governance rule over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param governance_rule: Governance rule over a given scope. Required. + :type governance_rule: ~azure.mgmt.security.models.GovernanceRule + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: GovernanceRule. The GovernanceRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, scope: str, rule_id: str, governance_rule: JSON, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.GovernanceRule: + """Creates or updates a governance rule over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param governance_rule: Governance rule over a given scope. Required. + :type governance_rule: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: GovernanceRule. The GovernanceRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + scope: str, + rule_id: str, + governance_rule: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.GovernanceRule: + """Creates or updates a governance rule over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param governance_rule: Governance rule over a given scope. Required. + :type governance_rule: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: GovernanceRule. The GovernanceRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, scope: str, rule_id: str, governance_rule: Union[_models.GovernanceRule, JSON, IO[bytes]], **kwargs: Any + ) -> _models.GovernanceRule: + """Creates or updates a governance rule over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param governance_rule: Governance rule over a given scope. Is one of the following types: + GovernanceRule, JSON, IO[bytes] Required. + :type governance_rule: ~azure.mgmt.security.models.GovernanceRule or JSON or IO[bytes] + :return: GovernanceRule. The GovernanceRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.GovernanceRule] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(governance_rule, (IOBase, bytes)): + _content = governance_rule + else: + _content = json.dumps(governance_rule, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_governance_rules_create_or_update_request( + scope=scope, + rule_id=rule_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GovernanceRule, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + async def _delete_initial(self, scope: str, rule_id: str, **kwargs: Any) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + _request = build_governance_rules_delete_request( + scope=scope, + rule_id=rule_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202, 204]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def begin_delete(self, scope: str, rule_id: str, **kwargs: Any) -> AsyncLROPoller[None]: + """Delete a Governance rule over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._delete_initial( + scope=scope, + rule_id=rule_id, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.GovernanceRule"]: + """Get a list of all relevant governance rules over a scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of GovernanceRule + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GovernanceRule] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[List[_models.GovernanceRule]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_governance_rules_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GovernanceRule], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + async def _execute_initial( + self, + scope: str, + rule_id: str, + execute_governance_rule_params: Optional[Union[_models.ExecuteGovernanceRuleParams, JSON, IO[bytes]]] = None, + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if execute_governance_rule_params else None + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if execute_governance_rule_params else None + _content = None + if isinstance(execute_governance_rule_params, (IOBase, bytes)): + _content = execute_governance_rule_params + else: + if execute_governance_rule_params is not None: + _content = json.dumps(execute_governance_rule_params, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + else: + _content = None + + _request = build_governance_rules_execute_request( + scope=scope, + rule_id=rule_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_execute( + self, + scope: str, + rule_id: str, + execute_governance_rule_params: Optional[_models.ExecuteGovernanceRuleParams] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Execute a governance rule. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param execute_governance_rule_params: Execute governance rule over a given scope. Default + value is None. + :type execute_governance_rule_params: ~azure.mgmt.security.models.ExecuteGovernanceRuleParams + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_execute( + self, + scope: str, + rule_id: str, + execute_governance_rule_params: Optional[JSON] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Execute a governance rule. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param execute_governance_rule_params: Execute governance rule over a given scope. Default + value is None. + :type execute_governance_rule_params: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_execute( + self, + scope: str, + rule_id: str, + execute_governance_rule_params: Optional[IO[bytes]] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Execute a governance rule. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param execute_governance_rule_params: Execute governance rule over a given scope. Default + value is None. + :type execute_governance_rule_params: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_execute( + self, + scope: str, + rule_id: str, + execute_governance_rule_params: Optional[Union[_models.ExecuteGovernanceRuleParams, JSON, IO[bytes]]] = None, + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Execute a governance rule. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param execute_governance_rule_params: Execute governance rule over a given scope. Is one of + the following types: ExecuteGovernanceRuleParams, JSON, IO[bytes] Default value is None. + :type execute_governance_rule_params: ~azure.mgmt.security.models.ExecuteGovernanceRuleParams + or JSON or IO[bytes] + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if execute_governance_rule_params else None + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._execute_initial( + scope=scope, + rule_id=rule_id, + execute_governance_rule_params=execute_governance_rule_params, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace_async + async def operation_results( + self, scope: str, rule_id: str, operation_id: str, **kwargs: Any + ) -> Optional[_models.OperationResultAutoGenerated]: + """Get governance rules long run operation result for the requested scope by ruleId and + operationId. + + :param scope: The scope of the governance rule. Required. + :type scope: str + :param rule_id: The governance rule key. Required. + :type rule_id: str + :param operation_id: The governance rule long running operation unique key. Required. + :type operation_id: str + :return: OperationResultAutoGenerated or None. The OperationResultAutoGenerated is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.OperationResultAutoGenerated or None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[Optional[_models.OperationResultAutoGenerated]] = kwargs.pop("cls", None) + + _request = build_governance_rules_operation_results_request( + scope=scope, + rule_id=rule_id, + operation_id=operation_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = None + response_headers = {} + if response.status_code == 200: + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.OperationResultAutoGenerated, response.json()) + + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + +class HealthReportsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`health_reports` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, resource_id: str, health_report_name: str, **kwargs: Any) -> _models.HealthReport: + """Get health report of resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param health_report_name: The health report key. Required. + :type health_report_name: str + :return: HealthReport. The HealthReport is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.HealthReport + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01-preview")) + cls: ClsType[_models.HealthReport] = kwargs.pop("cls", None) + + _request = build_health_reports_get_request( + resource_id=resource_id, + health_report_name=health_report_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.HealthReport, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.HealthReport"]: + """Get a list of all health reports inside a scope. Valid scopes are: subscription (format: + 'subscriptions/{subscriptionId}'), or security connector (format: + 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of HealthReport + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.HealthReport] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01-preview")) + cls: ClsType[List[_models.HealthReport]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_health_reports_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.HealthReport], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class DeviceSecurityGroupsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`device_security_groups` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_id: str, device_security_group_name: str, **kwargs: Any + ) -> _models.DeviceSecurityGroup: + """Use this method to get the device security group for the specified IoT Hub resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param device_security_group_name: The name of the device security group. Note that the name of + the device security group is case insensitive. Required. + :type device_security_group_name: str + :return: DeviceSecurityGroup. The DeviceSecurityGroup is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[_models.DeviceSecurityGroup] = kwargs.pop("cls", None) + + _request = build_device_security_groups_get_request( + resource_id=resource_id, + device_security_group_name=device_security_group_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DeviceSecurityGroup, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + resource_id: str, + device_security_group_name: str, + device_security_group: _models.DeviceSecurityGroup, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DeviceSecurityGroup: + """Use this method to creates or updates the device security group on a specified IoT Hub + resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param device_security_group_name: The name of the device security group. Note that the name of + the device security group is case insensitive. Required. + :type device_security_group_name: str + :param device_security_group: Security group object. Required. + :type device_security_group: ~azure.mgmt.security.models.DeviceSecurityGroup + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: DeviceSecurityGroup. The DeviceSecurityGroup is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_id: str, + device_security_group_name: str, + device_security_group: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DeviceSecurityGroup: + """Use this method to creates or updates the device security group on a specified IoT Hub + resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param device_security_group_name: The name of the device security group. Note that the name of + the device security group is case insensitive. Required. + :type device_security_group_name: str + :param device_security_group: Security group object. Required. + :type device_security_group: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: DeviceSecurityGroup. The DeviceSecurityGroup is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_id: str, + device_security_group_name: str, + device_security_group: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DeviceSecurityGroup: + """Use this method to creates or updates the device security group on a specified IoT Hub + resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param device_security_group_name: The name of the device security group. Note that the name of + the device security group is case insensitive. Required. + :type device_security_group_name: str + :param device_security_group: Security group object. Required. + :type device_security_group: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: DeviceSecurityGroup. The DeviceSecurityGroup is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_id: str, + device_security_group_name: str, + device_security_group: Union[_models.DeviceSecurityGroup, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.DeviceSecurityGroup: + """Use this method to creates or updates the device security group on a specified IoT Hub + resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param device_security_group_name: The name of the device security group. Note that the name of + the device security group is case insensitive. Required. + :type device_security_group_name: str + :param device_security_group: Security group object. Is one of the following types: + DeviceSecurityGroup, JSON, IO[bytes] Required. + :type device_security_group: ~azure.mgmt.security.models.DeviceSecurityGroup or JSON or + IO[bytes] + :return: DeviceSecurityGroup. The DeviceSecurityGroup is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.DeviceSecurityGroup] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(device_security_group, (IOBase, bytes)): + _content = device_security_group + else: + _content = json.dumps(device_security_group, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_device_security_groups_create_or_update_request( + resource_id=resource_id, + device_security_group_name=device_security_group_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DeviceSecurityGroup, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, resource_id: str, device_security_group_name: str, **kwargs: Any) -> None: + """User this method to deletes the device security group. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param device_security_group_name: The name of the device security group. Note that the name of + the device security group is case insensitive. Required. + :type device_security_group_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_device_security_groups_delete_request( + resource_id=resource_id, + device_security_group_name=device_security_group_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, resource_id: str, **kwargs: Any) -> AsyncItemPaged["_models.DeviceSecurityGroup"]: + """Use this method get the list of device security groups for the specified IoT Hub resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :return: An iterator like instance of DeviceSecurityGroup + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.DeviceSecurityGroup] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[List[_models.DeviceSecurityGroup]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_device_security_groups_list_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DeviceSecurityGroup], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class AutoProvisioningSettingsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`auto_provisioning_settings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, setting_name: str, **kwargs: Any) -> _models.AutoProvisioningSetting: + """Details of a specific setting. + + :param setting_name: Auto provisioning setting key. Required. + :type setting_name: str + :return: AutoProvisioningSetting. The AutoProvisioningSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[_models.AutoProvisioningSetting] = kwargs.pop("cls", None) + + _request = build_auto_provisioning_settings_get_request( + setting_name=setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AutoProvisioningSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create( + self, + setting_name: str, + setting: _models.AutoProvisioningSetting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AutoProvisioningSetting: + """Details of a specific setting. + + :param setting_name: Auto provisioning setting key. Required. + :type setting_name: str + :param setting: Auto provisioning setting key. Required. + :type setting: ~azure.mgmt.security.models.AutoProvisioningSetting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AutoProvisioningSetting. The AutoProvisioningSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create( + self, setting_name: str, setting: JSON, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.AutoProvisioningSetting: + """Details of a specific setting. + + :param setting_name: Auto provisioning setting key. Required. + :type setting_name: str + :param setting: Auto provisioning setting key. Required. + :type setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AutoProvisioningSetting. The AutoProvisioningSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create( + self, setting_name: str, setting: IO[bytes], *, content_type: str = "application/json", **kwargs: Any + ) -> _models.AutoProvisioningSetting: + """Details of a specific setting. + + :param setting_name: Auto provisioning setting key. Required. + :type setting_name: str + :param setting: Auto provisioning setting key. Required. + :type setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: AutoProvisioningSetting. The AutoProvisioningSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create( + self, setting_name: str, setting: Union[_models.AutoProvisioningSetting, JSON, IO[bytes]], **kwargs: Any + ) -> _models.AutoProvisioningSetting: + """Details of a specific setting. + + :param setting_name: Auto provisioning setting key. Required. + :type setting_name: str + :param setting: Auto provisioning setting key. Is one of the following types: + AutoProvisioningSetting, JSON, IO[bytes] Required. + :type setting: ~azure.mgmt.security.models.AutoProvisioningSetting or JSON or IO[bytes] + :return: AutoProvisioningSetting. The AutoProvisioningSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutoProvisioningSetting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(setting, (IOBase, bytes)): + _content = setting + else: + _content = json.dumps(setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_auto_provisioning_settings_create_request( + setting_name=setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AutoProvisioningSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.AutoProvisioningSetting"]: + """Exposes the auto provisioning settings of the subscriptions. + + :return: An iterator like instance of AutoProvisioningSetting + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AutoProvisioningSetting] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[List[_models.AutoProvisioningSetting]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_auto_provisioning_settings_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AutoProvisioningSetting], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class CompliancesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`compliances` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, scope: str, compliance_name: str, **kwargs: Any) -> _models.Compliance: + """Details of a specific Compliance. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param compliance_name: name of the Compliance. Required. + :type compliance_name: str + :return: Compliance. The Compliance is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Compliance + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[_models.Compliance] = kwargs.pop("cls", None) + + _request = build_compliances_get_request( + scope=scope, + compliance_name=compliance_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Compliance, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.Compliance"]: + """The Compliance scores of the specific management group. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of Compliance + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Compliance] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[List[_models.Compliance]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_compliances_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Compliance], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class InformationProtectionPoliciesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`information_protection_policies` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, + scope: str, + information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], + **kwargs: Any + ) -> _models.InformationProtectionPolicy: + """Details of the information protection policy. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param information_protection_policy_name: Name of the information protection policy. Known + values are: "effective" and "custom". Required. + :type information_protection_policy_name: str or + ~azure.mgmt.security.models.InformationProtectionPolicyName + :return: InformationProtectionPolicy. The InformationProtectionPolicy is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[_models.InformationProtectionPolicy] = kwargs.pop("cls", None) + + _request = build_information_protection_policies_get_request( + scope=scope, + information_protection_policy_name=information_protection_policy_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.InformationProtectionPolicy, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + scope: str, + information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], + information_protection_policy: _models.InformationProtectionPolicy, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.InformationProtectionPolicy: + """Details of the information protection policy. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param information_protection_policy_name: Name of the information protection policy. Known + values are: "effective" and "custom". Required. + :type information_protection_policy_name: str or + ~azure.mgmt.security.models.InformationProtectionPolicyName + :param information_protection_policy: Information protection policy. Required. + :type information_protection_policy: ~azure.mgmt.security.models.InformationProtectionPolicy + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: InformationProtectionPolicy. The InformationProtectionPolicy is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + scope: str, + information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], + information_protection_policy: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.InformationProtectionPolicy: + """Details of the information protection policy. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param information_protection_policy_name: Name of the information protection policy. Known + values are: "effective" and "custom". Required. + :type information_protection_policy_name: str or + ~azure.mgmt.security.models.InformationProtectionPolicyName + :param information_protection_policy: Information protection policy. Required. + :type information_protection_policy: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: InformationProtectionPolicy. The InformationProtectionPolicy is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + scope: str, + information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], + information_protection_policy: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.InformationProtectionPolicy: + """Details of the information protection policy. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param information_protection_policy_name: Name of the information protection policy. Known + values are: "effective" and "custom". Required. + :type information_protection_policy_name: str or + ~azure.mgmt.security.models.InformationProtectionPolicyName + :param information_protection_policy: Information protection policy. Required. + :type information_protection_policy: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: InformationProtectionPolicy. The InformationProtectionPolicy is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + scope: str, + information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], + information_protection_policy: Union[_models.InformationProtectionPolicy, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.InformationProtectionPolicy: + """Details of the information protection policy. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param information_protection_policy_name: Name of the information protection policy. Known + values are: "effective" and "custom". Required. + :type information_protection_policy_name: str or + ~azure.mgmt.security.models.InformationProtectionPolicyName + :param information_protection_policy: Information protection policy. Is one of the following + types: InformationProtectionPolicy, JSON, IO[bytes] Required. + :type information_protection_policy: ~azure.mgmt.security.models.InformationProtectionPolicy or + JSON or IO[bytes] + :return: InformationProtectionPolicy. The InformationProtectionPolicy is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.InformationProtectionPolicy] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(information_protection_policy, (IOBase, bytes)): + _content = information_protection_policy + else: + _content = json.dumps(information_protection_policy, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_information_protection_policies_create_or_update_request( + scope=scope, + information_protection_policy_name=information_protection_policy_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.InformationProtectionPolicy, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.InformationProtectionPolicy"]: + """Information protection policies of a specific management group. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of InformationProtectionPolicy + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.InformationProtectionPolicy] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[List[_models.InformationProtectionPolicy]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_information_protection_policies_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.InformationProtectionPolicy], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class WorkspaceSettingsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`workspace_settings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, workspace_setting_name: str, **kwargs: Any) -> _models.WorkspaceSetting: + """Settings about where we should store your security data and logs. If the result is empty, it + means that no custom-workspace configuration was set. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[_models.WorkspaceSetting] = kwargs.pop("cls", None) + + _request = build_workspace_settings_get_request( + workspace_setting_name=workspace_setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.WorkspaceSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create( + self, + workspace_setting_name: str, + workspace_setting: _models.WorkspaceSetting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.WorkspaceSetting: + """creating settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Required. + :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create( + self, + workspace_setting_name: str, + workspace_setting: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.WorkspaceSetting: + """creating settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Required. + :type workspace_setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create( + self, + workspace_setting_name: str, + workspace_setting: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.WorkspaceSetting: + """creating settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Required. + :type workspace_setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create( + self, + workspace_setting_name: str, + workspace_setting: Union[_models.WorkspaceSetting, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.WorkspaceSetting: + """creating settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Is one of the following types: + WorkspaceSetting, JSON, IO[bytes] Required. + :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting or JSON or IO[bytes] + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.WorkspaceSetting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(workspace_setting, (IOBase, bytes)): + _content = workspace_setting + else: + _content = json.dumps(workspace_setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_workspace_settings_create_request( + workspace_setting_name=workspace_setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.WorkspaceSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def update( + self, + workspace_setting_name: str, + workspace_setting: _models.WorkspaceSetting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.WorkspaceSetting: + """Settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Required. + :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + workspace_setting_name: str, + workspace_setting: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.WorkspaceSetting: + """Settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Required. + :type workspace_setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + workspace_setting_name: str, + workspace_setting: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.WorkspaceSetting: + """Settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Required. + :type workspace_setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def update( + self, + workspace_setting_name: str, + workspace_setting: Union[_models.WorkspaceSetting, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.WorkspaceSetting: + """Settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Is one of the following types: + WorkspaceSetting, JSON, IO[bytes] Required. + :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting or JSON or IO[bytes] + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.WorkspaceSetting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(workspace_setting, (IOBase, bytes)): + _content = workspace_setting + else: + _content = json.dumps(workspace_setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_workspace_settings_update_request( + workspace_setting_name=workspace_setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.WorkspaceSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, workspace_setting_name: str, **kwargs: Any) -> None: + """Deletes the custom workspace settings for this subscription. new VMs will report to the default + workspace. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_workspace_settings_delete_request( + workspace_setting_name=workspace_setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.WorkspaceSetting"]: + """Settings about where we should store your security data and logs. If the result is empty, it + means that no custom-workspace configuration was set. + + :return: An iterator like instance of WorkspaceSetting + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.WorkspaceSetting] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[List[_models.WorkspaceSetting]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_workspace_settings_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.WorkspaceSetting], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class MdeOnboardingsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`mde_onboardings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, **kwargs: Any) -> _models.MdeOnboardingData: + """The default configuration or data needed to onboard the machine to MDE. + + :return: MdeOnboardingData. The MdeOnboardingData is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.MdeOnboardingData + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-10-01-preview")) + cls: ClsType[_models.MdeOnboardingData] = kwargs.pop("cls", None) + + _request = build_mde_onboardings_get_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.MdeOnboardingData, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.MdeOnboardingData"]: + """The configuration or data needed to onboard the machine to MDE. + + :return: An iterator like instance of MdeOnboardingData + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.MdeOnboardingData] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-10-01-preview")) + cls: ClsType[List[_models.MdeOnboardingData]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_mde_onboardings_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.MdeOnboardingData], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class Operations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`operations` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.Operation"]: + """Exposes all available operations for discovery purposes. + + :return: An iterator like instance of Operation + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Operation] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + cls: ClsType[List[_models.Operation]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_operations_list_request( + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Operation], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class PricingsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`pricings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, scope_id: str, pricing_name: str, **kwargs: Any) -> _models.Pricing: + """Get the Defender plans pricing configurations of the selected scope (valid scopes are resource + id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, + VMSS and ARC Machines'. + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :param pricing_name: name of the pricing configuration. Required. + :type pricing_name: str + :return: Pricing. The Pricing is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Pricing + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) + cls: ClsType[_models.Pricing] = kwargs.pop("cls", None) + + _request = build_pricings_get_request( + scope_id=scope_id, + pricing_name=pricing_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Pricing, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def update( + self, + scope_id: str, + pricing_name: str, + pricing: _models.Pricing, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Pricing: + """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid + scopes are: subscription id or a specific resource id (Supported resources are: + 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :param pricing_name: name of the pricing configuration. Required. + :type pricing_name: str + :param pricing: Pricing object. Required. + :type pricing: ~azure.mgmt.security.models.Pricing + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Pricing. The Pricing is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Pricing + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, scope_id: str, pricing_name: str, pricing: JSON, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.Pricing: + """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid + scopes are: subscription id or a specific resource id (Supported resources are: + 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :param pricing_name: name of the pricing configuration. Required. + :type pricing_name: str + :param pricing: Pricing object. Required. + :type pricing: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Pricing. The Pricing is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Pricing + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + scope_id: str, + pricing_name: str, + pricing: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Pricing: + """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid + scopes are: subscription id or a specific resource id (Supported resources are: + 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :param pricing_name: name of the pricing configuration. Required. + :type pricing_name: str + :param pricing: Pricing object. Required. + :type pricing: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Pricing. The Pricing is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Pricing + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def update( + self, scope_id: str, pricing_name: str, pricing: Union[_models.Pricing, JSON, IO[bytes]], **kwargs: Any + ) -> _models.Pricing: + """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid + scopes are: subscription id or a specific resource id (Supported resources are: + 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :param pricing_name: name of the pricing configuration. Required. + :type pricing_name: str + :param pricing: Pricing object. Is one of the following types: Pricing, JSON, IO[bytes] + Required. + :type pricing: ~azure.mgmt.security.models.Pricing or JSON or IO[bytes] + :return: Pricing. The Pricing is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Pricing + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Pricing] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(pricing, (IOBase, bytes)): + _content = pricing + else: + _content = json.dumps(pricing, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_pricings_update_request( + scope_id=scope_id, + pricing_name=pricing_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Pricing, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, scope_id: str, pricing_name: str, **kwargs: Any) -> None: + """Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. + Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS, ARC Machines, + and Containers'). + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :param pricing_name: name of the pricing configuration. Required. + :type pricing_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_pricings_delete_request( + scope_id=scope_id, + pricing_name=pricing_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, scope_id: str, *, filter: Optional[str] = None, **kwargs: Any) -> AsyncItemPaged["_models.Pricing"]: + """Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the + optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported + resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in + ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be + returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes + the pricings set for 'planName1' and 'planName2' only. + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of Pricing + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Pricing] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) + cls: ClsType[List[_models.Pricing]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_pricings_list_request( + scope_id=scope_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Pricing], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class PrivateLinkResourcesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`private_link_resources` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, private_link_name: str, group_id: str, **kwargs: Any + ) -> _models.PrivateLinkGroupResource: + """Get the specified private link resource associated with the private link. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param group_id: The group ID of the private link resource. Required. + :type group_id: str + :return: PrivateLinkGroupResource. The PrivateLinkGroupResource is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateLinkGroupResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[_models.PrivateLinkGroupResource] = kwargs.pop("cls", None) + + _request = build_private_link_resources_get_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + group_id=group_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.PrivateLinkGroupResource, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, private_link_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.PrivateLinkGroupResource"]: + """List all private link resources in a private link. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :return: An iterator like instance of PrivateLinkGroupResource + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.PrivateLinkGroupResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[List[_models.PrivateLinkGroupResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_private_link_resources_list_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.PrivateLinkGroupResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class PrivateEndpointConnectionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`private_endpoint_connections` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, private_endpoint_connection_name: str, **kwargs: Any + ) -> _models.PrivateEndpointConnection: + """Gets the specified private endpoint connection associated with the private link. Returns the + connection details, status, and configuration for a specific private endpoint. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_endpoint_connection_name: The name of the private endpoint connection associated + with the Azure resource. Required. + :type private_endpoint_connection_name: str + :return: PrivateEndpointConnection. The PrivateEndpointConnection is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateEndpointConnection + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) + + _request = build_private_endpoint_connections_get_request( + resource_group_name=resource_group_name, + private_endpoint_connection_name=private_endpoint_connection_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.PrivateEndpointConnection, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + async def _create_or_update_initial( + self, + resource_group_name: str, + private_link_name: str, + private_endpoint_connection_name: str, + private_endpoint_connection: Union[_models.PrivateEndpointConnection, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(private_endpoint_connection, (IOBase, bytes)): + _content = private_endpoint_connection + else: + _content = json.dumps(private_endpoint_connection, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_private_endpoint_connections_create_or_update_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + private_endpoint_connection_name=private_endpoint_connection_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + private_link_name: str, + private_endpoint_connection_name: str, + private_endpoint_connection: _models.PrivateEndpointConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.PrivateEndpointConnection]: + """Update the state of specified private endpoint connection associated with the private link. + This operation is typically used to approve or reject pending private endpoint connections. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_endpoint_connection_name: The name of the private endpoint connection associated + with the Azure resource. Required. + :type private_endpoint_connection_name: str + :param private_endpoint_connection: The private endpoint connection resource. Required. + :type private_endpoint_connection: ~azure.mgmt.security.models.PrivateEndpointConnection + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns PrivateEndpointConnection. The + PrivateEndpointConnection is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + private_link_name: str, + private_endpoint_connection_name: str, + private_endpoint_connection: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.PrivateEndpointConnection]: + """Update the state of specified private endpoint connection associated with the private link. + This operation is typically used to approve or reject pending private endpoint connections. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_endpoint_connection_name: The name of the private endpoint connection associated + with the Azure resource. Required. + :type private_endpoint_connection_name: str + :param private_endpoint_connection: The private endpoint connection resource. Required. + :type private_endpoint_connection: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns PrivateEndpointConnection. The + PrivateEndpointConnection is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + private_link_name: str, + private_endpoint_connection_name: str, + private_endpoint_connection: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.PrivateEndpointConnection]: + """Update the state of specified private endpoint connection associated with the private link. + This operation is typically used to approve or reject pending private endpoint connections. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_endpoint_connection_name: The name of the private endpoint connection associated + with the Azure resource. Required. + :type private_endpoint_connection_name: str + :param private_endpoint_connection: The private endpoint connection resource. Required. + :type private_endpoint_connection: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns PrivateEndpointConnection. The + PrivateEndpointConnection is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_create_or_update( + self, + resource_group_name: str, + private_link_name: str, + private_endpoint_connection_name: str, + private_endpoint_connection: Union[_models.PrivateEndpointConnection, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.PrivateEndpointConnection]: + """Update the state of specified private endpoint connection associated with the private link. + This operation is typically used to approve or reject pending private endpoint connections. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_endpoint_connection_name: The name of the private endpoint connection associated + with the Azure resource. Required. + :type private_endpoint_connection_name: str + :param private_endpoint_connection: The private endpoint connection resource. Is one of the + following types: PrivateEndpointConnection, JSON, IO[bytes] Required. + :type private_endpoint_connection: ~azure.mgmt.security.models.PrivateEndpointConnection or + JSON or IO[bytes] + :return: An instance of AsyncLROPoller that returns PrivateEndpointConnection. The + PrivateEndpointConnection is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._create_or_update_initial( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + private_endpoint_connection_name=private_endpoint_connection_name, + private_endpoint_connection=private_endpoint_connection, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.PrivateEndpointConnection, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.PrivateEndpointConnection].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.PrivateEndpointConnection]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + async def _delete_initial( + self, resource_group_name: str, private_link_name: str, private_endpoint_connection_name: str, **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + _request = build_private_endpoint_connections_delete_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + private_endpoint_connection_name=private_endpoint_connection_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202, 204]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def begin_delete( + self, resource_group_name: str, private_link_name: str, private_endpoint_connection_name: str, **kwargs: Any + ) -> AsyncLROPoller[None]: + """Deletes the specified private endpoint connection associated with the private link. This + operation will disconnect the private endpoint and remove the connection configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_endpoint_connection_name: The name of the private endpoint connection associated + with the Azure resource. Required. + :type private_endpoint_connection_name: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._delete_initial( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + private_endpoint_connection_name=private_endpoint_connection_name, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, private_link_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.PrivateEndpointConnection"]: + """Gets all private endpoint connections for a private link. Returns the list of private endpoints + that are connected or in the process of connecting to this private link. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :return: An iterator like instance of PrivateEndpointConnection + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.PrivateEndpointConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[List[_models.PrivateEndpointConnection]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_private_endpoint_connections_list_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.PrivateEndpointConnection], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class RegulatoryComplianceStandardsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`regulatory_compliance_standards` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, regulatory_compliance_standard_name: str, **kwargs: Any + ) -> _models.RegulatoryComplianceStandard: + """Supported regulatory compliance details state for selected standard. + + :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. + Required. + :type regulatory_compliance_standard_name: str + :return: RegulatoryComplianceStandard. The RegulatoryComplianceStandard is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.RegulatoryComplianceStandard + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[_models.RegulatoryComplianceStandard] = kwargs.pop("cls", None) + + _request = build_regulatory_compliance_standards_get_request( + regulatory_compliance_standard_name=regulatory_compliance_standard_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.RegulatoryComplianceStandard, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, *, filter: Optional[str] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.RegulatoryComplianceStandard"]: + """Supported regulatory compliance standards details and state. + + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of RegulatoryComplianceStandard + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.RegulatoryComplianceStandard] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[List[_models.RegulatoryComplianceStandard]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_regulatory_compliance_standards_list_request( + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.RegulatoryComplianceStandard], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class RegulatoryComplianceControlsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`regulatory_compliance_controls` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, regulatory_compliance_standard_name: str, regulatory_compliance_control_name: str, **kwargs: Any + ) -> _models.RegulatoryComplianceControl: + """Selected regulatory compliance control details and state. + + :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. + Required. + :type regulatory_compliance_standard_name: str + :param regulatory_compliance_control_name: Name of the regulatory compliance control object. + Required. + :type regulatory_compliance_control_name: str + :return: RegulatoryComplianceControl. The RegulatoryComplianceControl is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.RegulatoryComplianceControl + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[_models.RegulatoryComplianceControl] = kwargs.pop("cls", None) + + _request = build_regulatory_compliance_controls_get_request( + regulatory_compliance_standard_name=regulatory_compliance_standard_name, + regulatory_compliance_control_name=regulatory_compliance_control_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.RegulatoryComplianceControl, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, regulatory_compliance_standard_name: str, *, filter: Optional[str] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.RegulatoryComplianceControl"]: + """All supported regulatory compliance controls details and state for selected standard. + + :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. + Required. + :type regulatory_compliance_standard_name: str + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of RegulatoryComplianceControl + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.RegulatoryComplianceControl] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[List[_models.RegulatoryComplianceControl]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_regulatory_compliance_controls_list_request( + regulatory_compliance_standard_name=regulatory_compliance_standard_name, + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.RegulatoryComplianceControl], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class RegulatoryComplianceAssessmentsOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`regulatory_compliance_assessments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, + regulatory_compliance_standard_name: str, + regulatory_compliance_control_name: str, + regulatory_compliance_assessment_name: str, + **kwargs: Any + ) -> _models.RegulatoryComplianceAssessment: + """Supported regulatory compliance details and state for selected assessment. + + :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. + Required. + :type regulatory_compliance_standard_name: str + :param regulatory_compliance_control_name: Name of the regulatory compliance control object. + Required. + :type regulatory_compliance_control_name: str + :param regulatory_compliance_assessment_name: Name of the regulatory compliance assessment + object. Required. + :type regulatory_compliance_assessment_name: str + :return: RegulatoryComplianceAssessment. The RegulatoryComplianceAssessment is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.RegulatoryComplianceAssessment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[_models.RegulatoryComplianceAssessment] = kwargs.pop("cls", None) + + _request = build_regulatory_compliance_assessments_get_request( + regulatory_compliance_standard_name=regulatory_compliance_standard_name, + regulatory_compliance_control_name=regulatory_compliance_control_name, + regulatory_compliance_assessment_name=regulatory_compliance_assessment_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.RegulatoryComplianceAssessment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, + regulatory_compliance_standard_name: str, + regulatory_compliance_control_name: str, + *, + filter: Optional[str] = None, + **kwargs: Any + ) -> AsyncItemPaged["_models.RegulatoryComplianceAssessment"]: + """Details and state of assessments mapped to selected regulatory compliance control. + + :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. + Required. + :type regulatory_compliance_standard_name: str + :param regulatory_compliance_control_name: Name of the regulatory compliance control object. + Required. + :type regulatory_compliance_control_name: str + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of RegulatoryComplianceAssessment + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.RegulatoryComplianceAssessment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[List[_models.RegulatoryComplianceAssessment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_regulatory_compliance_assessments_list_request( + regulatory_compliance_standard_name=regulatory_compliance_standard_name, + regulatory_compliance_control_name=regulatory_compliance_control_name, + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.RegulatoryComplianceAssessment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SecurityConnectorsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`security_connectors` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> _models.SecurityConnector: + """Retrieves details of a specific security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + cls: ClsType[_models.SecurityConnector] = kwargs.pop("cls", None) + + _request = build_security_connectors_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityConnector, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: _models.SecurityConnector, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityConnector: + """Creates or updates a security connector. If a security connector is already created and a + subsequent request is issued for the same security connector id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Required. + :type security_connector: ~azure.mgmt.security.models.SecurityConnector + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityConnector: + """Creates or updates a security connector. If a security connector is already created and a + subsequent request is issued for the same security connector id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Required. + :type security_connector: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityConnector: + """Creates or updates a security connector. If a security connector is already created and a + subsequent request is issued for the same security connector id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Required. + :type security_connector: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: Union[_models.SecurityConnector, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.SecurityConnector: + """Creates or updates a security connector. If a security connector is already created and a + subsequent request is issued for the same security connector id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Is one of the following types: + SecurityConnector, JSON, IO[bytes] Required. + :type security_connector: ~azure.mgmt.security.models.SecurityConnector or JSON or IO[bytes] + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.SecurityConnector] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(security_connector, (IOBase, bytes)): + _content = security_connector + else: + _content = json.dumps(security_connector, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_security_connectors_create_or_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityConnector, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: _models.SecurityConnector, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityConnector: + """Updates a security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Required. + :type security_connector: ~azure.mgmt.security.models.SecurityConnector + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityConnector: + """Updates a security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Required. + :type security_connector: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityConnector: + """Updates a security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Required. + :type security_connector: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: Union[_models.SecurityConnector, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.SecurityConnector: + """Updates a security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Is one of the following types: + SecurityConnector, JSON, IO[bytes] Required. + :type security_connector: ~azure.mgmt.security.models.SecurityConnector or JSON or IO[bytes] + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.SecurityConnector] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(security_connector, (IOBase, bytes)): + _content = security_connector + else: + _content = json.dumps(security_connector, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_security_connectors_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityConnector, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, resource_group_name: str, security_connector_name: str, **kwargs: Any) -> None: + """Deletes a security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_security_connectors_delete_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_resource_group( + self, resource_group_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.SecurityConnector"]: + """Lists all the security connectors in the specified resource group. Use the 'nextLink' property + in the response to get the next page of security connectors for the specified resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of SecurityConnector + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityConnector] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + cls: ClsType[List[_models.SecurityConnector]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_connectors_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityConnector], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecurityConnector"]: + """Lists all the security connectors in the specified subscription. Use the 'nextLink' property in + the response to get the next page of security connectors for the specified subscription. + + :return: An iterator like instance of SecurityConnector + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityConnector] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + cls: ClsType[List[_models.SecurityConnector]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_connectors_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityConnector], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class AzureDevOpsOrgsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`azure_dev_ops_orgs` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, security_connector_name: str, org_name: str, **kwargs: Any + ) -> _models.AzureDevOpsOrg: + """Returns a monitored Azure DevOps organization resource. + + Returns a monitored Azure DevOps organization resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :return: AzureDevOpsOrg. The AzureDevOpsOrg is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AzureDevOpsOrg + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) + + _request = build_azure_dev_ops_orgs_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AzureDevOpsOrg, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + async def _create_or_update_initial( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: Union[_models.AzureDevOpsOrg, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(azure_dev_ops_org, (IOBase, bytes)): + _content = azure_dev_ops_org + else: + _content = json.dumps(azure_dev_ops_org, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_azure_dev_ops_orgs_create_or_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: _models.AzureDevOpsOrg, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: + """Creates or updates monitored Azure DevOps organization details. + + Creates or updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. + :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is + compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: + """Creates or updates monitored Azure DevOps organization details. + + Creates or updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. + :type azure_dev_ops_org: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is + compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: + """Creates or updates monitored Azure DevOps organization details. + + Creates or updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. + :type azure_dev_ops_org: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is + compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: Union[_models.AzureDevOpsOrg, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: + """Creates or updates monitored Azure DevOps organization details. + + Creates or updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Is one of the + following types: AzureDevOpsOrg, JSON, IO[bytes] Required. + :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg or JSON or IO[bytes] + :return: An instance of AsyncLROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is + compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._create_or_update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + azure_dev_ops_org=azure_dev_ops_org, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AzureDevOpsOrg, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.AzureDevOpsOrg].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.AzureDevOpsOrg]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + async def _update_initial( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: Union[_models.AzureDevOpsOrg, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(azure_dev_ops_org, (IOBase, bytes)): + _content = azure_dev_ops_org + else: + _content = json.dumps(azure_dev_ops_org, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_azure_dev_ops_orgs_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: _models.AzureDevOpsOrg, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: + """Updates monitored Azure DevOps organization details. + + Updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. + :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is + compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: + """Updates monitored Azure DevOps organization details. + + Updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. + :type azure_dev_ops_org: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is + compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: + """Updates monitored Azure DevOps organization details. + + Updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. + :type azure_dev_ops_org: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is + compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: Union[_models.AzureDevOpsOrg, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsOrg]: + """Updates monitored Azure DevOps organization details. + + Updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Is one of the + following types: AzureDevOpsOrg, JSON, IO[bytes] Required. + :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg or JSON or IO[bytes] + :return: An instance of AsyncLROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is + compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + azure_dev_ops_org=azure_dev_ops_org, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AzureDevOpsOrg, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.AzureDevOpsOrg].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.AzureDevOpsOrg]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.AzureDevOpsOrg"]: + """Returns a list of Azure DevOps organizations onboarded to the connector. + + Returns a list of Azure DevOps organizations onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: An iterator like instance of AzureDevOpsOrg + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.AzureDevOpsOrg]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_azure_dev_ops_orgs_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AzureDevOpsOrg], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + async def list_available( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> _models.AzureDevOpsOrgListResponse: + """Returns a list of all Azure DevOps organizations accessible by the user token consumed by the + connector. + + Returns a list of all Azure DevOps organizations accessible by the user token consumed by the + connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: AzureDevOpsOrgListResponse. The AzureDevOpsOrgListResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.AzureDevOpsOrgListResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.AzureDevOpsOrgListResponse] = kwargs.pop("cls", None) + + _request = build_azure_dev_ops_orgs_list_available_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AzureDevOpsOrgListResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class GitHubOwnersOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`git_hub_owners` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, security_connector_name: str, owner_name: str, **kwargs: Any + ) -> _models.GitHubOwner: + """Returns a monitored GitHub owner. + + Returns a monitored GitHub owner. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :return: GitHubOwner. The GitHubOwner is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitHubOwner + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitHubOwner] = kwargs.pop("cls", None) + + _request = build_git_hub_owners_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitHubOwner, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.GitHubOwner"]: + """Returns a list of GitHub owners onboarded to the connector. + + Returns a list of GitHub owners onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: An iterator like instance of GitHubOwner + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GitHubOwner] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.GitHubOwner]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_git_hub_owners_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GitHubOwner], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + async def list_available( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> _models.GitHubOwnerListResponse: + """Returns a list of all GitHub owners accessible by the user token consumed by the connector. + + Returns a list of all GitHub owners accessible by the user token consumed by the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: GitHubOwnerListResponse. The GitHubOwnerListResponse is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitHubOwnerListResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitHubOwnerListResponse] = kwargs.pop("cls", None) + + _request = build_git_hub_owners_list_available_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitHubOwnerListResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class GitLabGroupsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`git_lab_groups` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, security_connector_name: str, group_fq_name: str, **kwargs: Any + ) -> _models.GitLabGroup: + """Returns a monitored GitLab Group resource for a given fully-qualified name. + + Returns a monitored GitLab Group resource for a given fully-qualified name. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param group_fq_name: Required. + :type group_fq_name: str + :return: GitLabGroup. The GitLabGroup is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitLabGroup + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitLabGroup] = kwargs.pop("cls", None) + + _request = build_git_lab_groups_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + group_fq_name=group_fq_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitLabGroup, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.GitLabGroup"]: + """Returns a list of GitLab groups onboarded to the connector. + + Returns a list of GitLab groups onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: An iterator like instance of GitLabGroup + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GitLabGroup] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.GitLabGroup]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_git_lab_groups_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GitLabGroup], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + async def list_available( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> _models.GitLabGroupListResponse: + """Returns a list of all GitLab groups accessible by the user token consumed by the connector. + + Returns a list of all GitLab groups accessible by the user token consumed by the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: GitLabGroupListResponse. The GitLabGroupListResponse is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitLabGroupListResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) + + _request = build_git_lab_groups_list_available_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitLabGroupListResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class DevOpsConfigurationsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`dev_ops_configurations` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> _models.DevOpsConfiguration: + """Gets a DevOps Configuration. + + Gets a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: DevOpsConfiguration. The DevOpsConfiguration is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.DevOpsConfiguration + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) + + _request = build_dev_ops_configurations_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DevOpsConfiguration, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + async def _create_or_update_initial( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: Union[_models.DevOpsConfiguration, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(dev_ops_configuration, (IOBase, bytes)): + _content = dev_ops_configuration + else: + _content = json.dumps(dev_ops_configuration, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_dev_ops_configurations_create_or_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: _models.DevOpsConfiguration, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.DevOpsConfiguration]: + """Creates or updates a DevOps Configuration. + + Creates or updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Required. + :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns DevOpsConfiguration. The + DevOpsConfiguration is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.DevOpsConfiguration]: + """Creates or updates a DevOps Configuration. + + Creates or updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Required. + :type dev_ops_configuration: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns DevOpsConfiguration. The + DevOpsConfiguration is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.DevOpsConfiguration]: + """Creates or updates a DevOps Configuration. + + Creates or updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Required. + :type dev_ops_configuration: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns DevOpsConfiguration. The + DevOpsConfiguration is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: Union[_models.DevOpsConfiguration, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.DevOpsConfiguration]: + """Creates or updates a DevOps Configuration. + + Creates or updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Is one of the + following types: DevOpsConfiguration, JSON, IO[bytes] Required. + :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration or JSON or + IO[bytes] + :return: An instance of AsyncLROPoller that returns DevOpsConfiguration. The + DevOpsConfiguration is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._create_or_update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + dev_ops_configuration=dev_ops_configuration, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.DevOpsConfiguration, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.DevOpsConfiguration].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.DevOpsConfiguration]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + async def _update_initial( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: Union[_models.DevOpsConfiguration, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(dev_ops_configuration, (IOBase, bytes)): + _content = dev_ops_configuration + else: + _content = json.dumps(dev_ops_configuration, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_dev_ops_configurations_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: _models.DevOpsConfiguration, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.DevOpsConfiguration]: + """Updates a DevOps Configuration. + + Updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Required. + :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns DevOpsConfiguration. The + DevOpsConfiguration is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.DevOpsConfiguration]: + """Updates a DevOps Configuration. + + Updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Required. + :type dev_ops_configuration: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns DevOpsConfiguration. The + DevOpsConfiguration is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.DevOpsConfiguration]: + """Updates a DevOps Configuration. + + Updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Required. + :type dev_ops_configuration: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns DevOpsConfiguration. The + DevOpsConfiguration is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: Union[_models.DevOpsConfiguration, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.DevOpsConfiguration]: + """Updates a DevOps Configuration. + + Updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Is one of the + following types: DevOpsConfiguration, JSON, IO[bytes] Required. + :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration or JSON or + IO[bytes] + :return: An instance of AsyncLROPoller that returns DevOpsConfiguration. The + DevOpsConfiguration is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + dev_ops_configuration=dev_ops_configuration, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.DevOpsConfiguration, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.DevOpsConfiguration].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.DevOpsConfiguration]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + async def _delete_initial( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + _request = build_dev_ops_configurations_delete_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202, 204]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def begin_delete( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> AsyncLROPoller[None]: + """Deletes a DevOps Connector. + + Deletes a DevOps Connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._delete_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.DevOpsConfiguration"]: + """List DevOps Configurations. + + List DevOps Configurations. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: An iterator like instance of DevOpsConfiguration + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.DevOpsConfiguration]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_dev_ops_configurations_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DevOpsConfiguration], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class AzureDevOpsProjectsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`azure_dev_ops_projects` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, security_connector_name: str, org_name: str, project_name: str, **kwargs: Any + ) -> _models.AzureDevOpsProject: + """Returns a monitored Azure DevOps project resource. + + Returns a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :return: AzureDevOpsProject. The AzureDevOpsProject is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AzureDevOpsProject + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) + + _request = build_azure_dev_ops_projects_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AzureDevOpsProject, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + async def _create_or_update_initial( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: Union[_models.AzureDevOpsProject, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(azure_dev_ops_project, (IOBase, bytes)): + _content = azure_dev_ops_project + else: + _content = json.dumps(azure_dev_ops_project, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_azure_dev_ops_projects_create_or_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: _models.AzureDevOpsProject, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsProject]: + """Creates or updates a monitored Azure DevOps project resource. + + Creates or updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. + :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsProject. The AzureDevOpsProject + is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsProject]: + """Creates or updates a monitored Azure DevOps project resource. + + Creates or updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. + :type azure_dev_ops_project: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsProject. The AzureDevOpsProject + is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsProject]: + """Creates or updates a monitored Azure DevOps project resource. + + Creates or updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. + :type azure_dev_ops_project: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsProject. The AzureDevOpsProject + is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: Union[_models.AzureDevOpsProject, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsProject]: + """Creates or updates a monitored Azure DevOps project resource. + + Creates or updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Is one of the + following types: AzureDevOpsProject, JSON, IO[bytes] Required. + :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject or JSON or + IO[bytes] + :return: An instance of AsyncLROPoller that returns AzureDevOpsProject. The AzureDevOpsProject + is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._create_or_update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + azure_dev_ops_project=azure_dev_ops_project, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AzureDevOpsProject, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.AzureDevOpsProject].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.AzureDevOpsProject]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + async def _update_initial( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: Union[_models.AzureDevOpsProject, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(azure_dev_ops_project, (IOBase, bytes)): + _content = azure_dev_ops_project + else: + _content = json.dumps(azure_dev_ops_project, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_azure_dev_ops_projects_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: _models.AzureDevOpsProject, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsProject]: + """Updates a monitored Azure DevOps project resource. + + Updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. + :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsProject. The AzureDevOpsProject + is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsProject]: + """Updates a monitored Azure DevOps project resource. + + Updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. + :type azure_dev_ops_project: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsProject. The AzureDevOpsProject + is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsProject]: + """Updates a monitored Azure DevOps project resource. + + Updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. + :type azure_dev_ops_project: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsProject. The AzureDevOpsProject + is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: Union[_models.AzureDevOpsProject, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsProject]: + """Updates a monitored Azure DevOps project resource. + + Updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Is one of the + following types: AzureDevOpsProject, JSON, IO[bytes] Required. + :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject or JSON or + IO[bytes] + :return: An instance of AsyncLROPoller that returns AzureDevOpsProject. The AzureDevOpsProject + is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + azure_dev_ops_project=azure_dev_ops_project, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AzureDevOpsProject, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.AzureDevOpsProject].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.AzureDevOpsProject]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, org_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.AzureDevOpsProject"]: + """Returns a list of Azure DevOps projects onboarded to the connector. + + Returns a list of Azure DevOps projects onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :return: An iterator like instance of AzureDevOpsProject + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.AzureDevOpsProject]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_azure_dev_ops_projects_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AzureDevOpsProject], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class GitLabProjectsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`git_lab_projects` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, + resource_group_name: str, + security_connector_name: str, + group_fq_name: str, + project_name: str, + **kwargs: Any + ) -> _models.GitLabProject: + """Returns a monitored GitLab Project resource for a given fully-qualified group name and project + name. + + Returns a monitored GitLab Project resource for a given fully-qualified group name and project + name. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param group_fq_name: Required. + :type group_fq_name: str + :param project_name: Required. + :type project_name: str + :return: GitLabProject. The GitLabProject is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitLabProject + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitLabProject] = kwargs.pop("cls", None) + + _request = build_git_lab_projects_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + group_fq_name=group_fq_name, + project_name=project_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitLabProject, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, group_fq_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.GitLabProject"]: + """Gets a list of GitLab projects that are directly owned by given group and onboarded to the + connector. + + Gets a list of GitLab projects that are directly owned by given group and onboarded to the + connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param group_fq_name: Required. + :type group_fq_name: str + :return: An iterator like instance of GitLabProject + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GitLabProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.GitLabProject]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_git_lab_projects_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + group_fq_name=group_fq_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GitLabProject], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SecurityOperatorsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`security_operators` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, pricing_name: str, security_operator_name: str, **kwargs: Any) -> _models.SecurityOperator: + """Get a specific security operator for the requested scope. + + :param pricing_name: Name of the pricing configuration. Required. + :type pricing_name: str + :param security_operator_name: Name of the security operator. Required. + :type security_operator_name: str + :return: SecurityOperator. The SecurityOperator is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityOperator + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) + cls: ClsType[_models.SecurityOperator] = kwargs.pop("cls", None) + + _request = build_security_operators_get_request( + pricing_name=pricing_name, + security_operator_name=security_operator_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityOperator, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def create_or_update( + self, pricing_name: str, security_operator_name: str, **kwargs: Any + ) -> _models.SecurityOperator: + """Creates Microsoft Defender for Cloud security operator on the given scope. + + :param pricing_name: Name of the pricing configuration. Required. + :type pricing_name: str + :param security_operator_name: Name of the security operator. Required. + :type security_operator_name: str + :return: SecurityOperator. The SecurityOperator is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityOperator + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) + cls: ClsType[_models.SecurityOperator] = kwargs.pop("cls", None) + + _request = build_security_operators_create_or_update_request( + pricing_name=pricing_name, + security_operator_name=security_operator_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityOperator, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, pricing_name: str, security_operator_name: str, **kwargs: Any) -> None: + """Delete Microsoft Defender for Cloud securityOperator in the subscription. + + :param pricing_name: Name of the pricing configuration. Required. + :type pricing_name: str + :param security_operator_name: Name of the security operator. Required. + :type security_operator_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_security_operators_delete_request( + pricing_name=pricing_name, + security_operator_name=security_operator_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, pricing_name: str, **kwargs: Any) -> AsyncItemPaged["_models.SecurityOperator"]: + """Lists Microsoft Defender for Cloud securityOperators in the subscription. + + :param pricing_name: Name of the pricing configuration. Required. + :type pricing_name: str + :return: An iterator like instance of SecurityOperator + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityOperator] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) + cls: ClsType[List[_models.SecurityOperator]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_operators_list_request( + pricing_name=pricing_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityOperator], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class DiscoveredSecuritySolutionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`discovered_security_solutions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, asc_location: str, discovered_security_solution_name: str, **kwargs: Any + ) -> _models.DiscoveredSecuritySolution: + """Gets a specific discovered Security Solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param discovered_security_solution_name: Name of a discovered security solution. Required. + :type discovered_security_solution_name: str + :return: DiscoveredSecuritySolution. The DiscoveredSecuritySolution is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.DiscoveredSecuritySolution + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.DiscoveredSecuritySolution] = kwargs.pop("cls", None) + + _request = build_discovered_security_solutions_get_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + discovered_security_solution_name=discovered_security_solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DiscoveredSecuritySolution, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_home_region( + self, asc_location: str, **kwargs: Any + ) -> AsyncItemPaged["_models.DiscoveredSecuritySolution"]: + """Gets a list of discovered Security Solutions for the subscription and location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of DiscoveredSecuritySolution + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.DiscoveredSecuritySolution] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.DiscoveredSecuritySolution]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_discovered_security_solutions_list_by_home_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DiscoveredSecuritySolution], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.DiscoveredSecuritySolution"]: + """Gets a list of discovered Security Solutions for the subscription. + + :return: An iterator like instance of DiscoveredSecuritySolution + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.DiscoveredSecuritySolution] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.DiscoveredSecuritySolution]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_discovered_security_solutions_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DiscoveredSecuritySolution], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class ExternalSecuritySolutionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`external_security_solutions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, asc_location: str, external_security_solutions_name: str, **kwargs: Any + ) -> _models.ExternalSecuritySolution: + """Gets a specific external Security Solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param external_security_solutions_name: Name of an external security solution. Required. + :type external_security_solutions_name: str + :return: ExternalSecuritySolution. The ExternalSecuritySolution is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.ExternalSecuritySolution + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.ExternalSecuritySolution] = kwargs.pop("cls", None) + + _request = build_external_security_solutions_get_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + external_security_solutions_name=external_security_solutions_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ExternalSecuritySolution, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_home_region( + self, asc_location: str, **kwargs: Any + ) -> AsyncItemPaged["_models.ExternalSecuritySolution"]: + """Gets a list of external Security Solutions for the subscription and location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of ExternalSecuritySolution + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ExternalSecuritySolution] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.ExternalSecuritySolution]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_external_security_solutions_list_by_home_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ExternalSecuritySolution], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.ExternalSecuritySolution"]: + """Gets a list of external security solutions for the subscription. + + :return: An iterator like instance of ExternalSecuritySolution + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ExternalSecuritySolution] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.ExternalSecuritySolution]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_external_security_solutions_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ExternalSecuritySolution], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class JitNetworkAccessPoliciesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`jit_network_access_policies` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, asc_location: str, jit_network_access_policy_name: str, **kwargs: Any + ) -> _models.JitNetworkAccessPolicy: + """Policies for protecting resources using Just-in-Time access control for the subscription, + location. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :return: JitNetworkAccessPolicy. The JitNetworkAccessPolicy is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.JitNetworkAccessPolicy] = kwargs.pop("cls", None) + + _request = build_jit_network_access_policies_get_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + jit_network_access_policy_name=jit_network_access_policy_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.JitNetworkAccessPolicy, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: _models.JitNetworkAccessPolicy, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.JitNetworkAccessPolicy: + """Create a policy for protecting resources using Just-in-Time access control. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Required. + :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: JitNetworkAccessPolicy. The JitNetworkAccessPolicy is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.JitNetworkAccessPolicy: + """Create a policy for protecting resources using Just-in-Time access control. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Required. + :type body: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: JitNetworkAccessPolicy. The JitNetworkAccessPolicy is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.JitNetworkAccessPolicy: + """Create a policy for protecting resources using Just-in-Time access control. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: JitNetworkAccessPolicy. The JitNetworkAccessPolicy is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: Union[_models.JitNetworkAccessPolicy, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.JitNetworkAccessPolicy: + """Create a policy for protecting resources using Just-in-Time access control. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Is one of the following types: JitNetworkAccessPolicy, JSON, IO[bytes] Required. + :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicy or JSON or IO[bytes] + :return: JitNetworkAccessPolicy. The JitNetworkAccessPolicy is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.JitNetworkAccessPolicy] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_jit_network_access_policies_create_or_update_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + jit_network_access_policy_name=jit_network_access_policy_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.JitNetworkAccessPolicy, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete( + self, resource_group_name: str, asc_location: str, jit_network_access_policy_name: str, **kwargs: Any + ) -> None: + """Delete a Just-in-Time access control policy. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_jit_network_access_policies_delete_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + jit_network_access_policy_name=jit_network_access_policy_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_resource_group_and_region( + self, resource_group_name: str, asc_location: str, **kwargs: Any + ) -> AsyncItemPaged["_models.JitNetworkAccessPolicy"]: + """Policies for protecting resources using Just-in-Time access control for the subscription, + location. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of JitNetworkAccessPolicy + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.JitNetworkAccessPolicy]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_jit_network_access_policies_list_by_resource_group_and_region_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.JitNetworkAccessPolicy], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_region(self, asc_location: str, **kwargs: Any) -> AsyncItemPaged["_models.JitNetworkAccessPolicy"]: + """Policies for protecting resources using Just-in-Time access control for the subscription, + location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of JitNetworkAccessPolicy + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.JitNetworkAccessPolicy]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_jit_network_access_policies_list_by_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.JitNetworkAccessPolicy], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @overload + async def initiate( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: _models.JitNetworkAccessPolicyInitiateRequest, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.JitNetworkAccessRequest: + """Initiate a JIT access from a specific Just-in-Time policy configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Required. + :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateRequest + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: JitNetworkAccessRequest. The JitNetworkAccessRequest is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def initiate( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.JitNetworkAccessRequest: + """Initiate a JIT access from a specific Just-in-Time policy configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Required. + :type body: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: JitNetworkAccessRequest. The JitNetworkAccessRequest is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def initiate( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.JitNetworkAccessRequest: + """Initiate a JIT access from a specific Just-in-Time policy configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: JitNetworkAccessRequest. The JitNetworkAccessRequest is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def initiate( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: Union[_models.JitNetworkAccessPolicyInitiateRequest, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.JitNetworkAccessRequest: + """Initiate a JIT access from a specific Just-in-Time policy configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Is one of the following types: JitNetworkAccessPolicyInitiateRequest, JSON, + IO[bytes] Required. + :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateRequest or JSON or + IO[bytes] + :return: JitNetworkAccessRequest. The JitNetworkAccessRequest is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + jit_network_access_policy_initiate_type: Literal["initiate"] = kwargs.pop( + "jit_network_access_policy_initiate_type", "initiate" + ) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.JitNetworkAccessRequest] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_jit_network_access_policies_initiate_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + jit_network_access_policy_name=jit_network_access_policy_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + jit_network_access_policy_initiate_type=jit_network_access_policy_initiate_type, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.JitNetworkAccessRequest, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.JitNetworkAccessPolicy"]: + """Policies for protecting resources using Just-in-Time access control. + + :return: An iterator like instance of JitNetworkAccessPolicy + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.JitNetworkAccessPolicy]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_jit_network_access_policies_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.JitNetworkAccessPolicy], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_resource_group( + self, resource_group_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.JitNetworkAccessPolicy"]: + """Policies for protecting resources using Just-in-Time access control for the subscription, + location. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of JitNetworkAccessPolicy + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.JitNetworkAccessPolicy]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_jit_network_access_policies_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.JitNetworkAccessPolicy], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SecuritySolutionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`security_solutions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, asc_location: str, security_solution_name: str, **kwargs: Any + ) -> _models.SecuritySolution: + """Gets a specific Security Solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param security_solution_name: Name of security solution. Required. + :type security_solution_name: str + :return: SecuritySolution. The SecuritySolution is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecuritySolution + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.SecuritySolution] = kwargs.pop("cls", None) + + _request = build_security_solutions_get_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + security_solution_name=security_solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecuritySolution, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecuritySolution"]: + """Gets a list of Security Solutions for the subscription. + + :return: An iterator like instance of SecuritySolution + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecuritySolution] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.SecuritySolution]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_solutions_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecuritySolution], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SecurityStandardsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`security_standards` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, scope: str, standard_id: str, **kwargs: Any) -> _models.SecurityStandard: + """Get a specific security standard for the requested scope by standardId. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :return: SecurityStandard. The SecurityStandard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityStandard + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[_models.SecurityStandard] = kwargs.pop("cls", None) + + _request = build_security_standards_get_request( + scope=scope, + standard_id=standard_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityStandard, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + scope: str, + standard_id: str, + standard: _models.SecurityStandard, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityStandard: + """Creates or updates a security standard over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: ~azure.mgmt.security.models.SecurityStandard + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityStandard. The SecurityStandard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityStandard + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, scope: str, standard_id: str, standard: JSON, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.SecurityStandard: + """Creates or updates a security standard over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityStandard. The SecurityStandard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityStandard + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + scope: str, + standard_id: str, + standard: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityStandard: + """Creates or updates a security standard over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityStandard. The SecurityStandard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityStandard + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, scope: str, standard_id: str, standard: Union[_models.SecurityStandard, JSON, IO[bytes]], **kwargs: Any + ) -> _models.SecurityStandard: + """Creates or updates a security standard over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Is one of the following + types: SecurityStandard, JSON, IO[bytes] Required. + :type standard: ~azure.mgmt.security.models.SecurityStandard or JSON or IO[bytes] + :return: SecurityStandard. The SecurityStandard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityStandard + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.SecurityStandard] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(standard, (IOBase, bytes)): + _content = standard + else: + _content = json.dumps(standard, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_security_standards_create_or_update_request( + scope=scope, + standard_id=standard_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityStandard, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, scope: str, standard_id: str, **kwargs: Any) -> None: + """Delete a security standard over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_security_standards_delete_request( + scope=scope, + standard_id=standard_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.SecurityStandard"]: + """Get a list of all relevant security standards over a scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of SecurityStandard + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityStandard] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[List[_models.SecurityStandard]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_standards_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityStandard], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class StandardAssignmentsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`standard_assignments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, resource_id: str, standard_assignment_name: str, **kwargs: Any) -> _models.StandardAssignment: + """Retrieves a standard assignment. + + This operation retrieves a single standard assignment, given its name and the scope it was + created at. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param standard_assignment_name: The standard assignments assignment key - unique key for the + standard assignment. Required. + :type standard_assignment_name: str + :return: StandardAssignment. The StandardAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.StandardAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[_models.StandardAssignment] = kwargs.pop("cls", None) + + _request = build_standard_assignments_get_request( + resource_id=resource_id, + standard_assignment_name=standard_assignment_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.StandardAssignment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create( + self, + resource_id: str, + standard_assignment_name: str, + standard_assignment: _models.StandardAssignment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.StandardAssignment: + """Creates or updates a standard assignment. + + This operation creates or updates a standard assignment with the given scope and name. standard + assignments apply to all resources contained within their scope. For example, when you assign a + policy at resource group scope, that policy applies to all resources in the group. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param standard_assignment_name: The standard assignments assignment key - unique key for the + standard assignment. Required. + :type standard_assignment_name: str + :param standard_assignment: Custom standard assignment over a pre-defined scope. Required. + :type standard_assignment: ~azure.mgmt.security.models.StandardAssignment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: StandardAssignment. The StandardAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.StandardAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create( + self, + resource_id: str, + standard_assignment_name: str, + standard_assignment: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.StandardAssignment: + """Creates or updates a standard assignment. + + This operation creates or updates a standard assignment with the given scope and name. standard + assignments apply to all resources contained within their scope. For example, when you assign a + policy at resource group scope, that policy applies to all resources in the group. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param standard_assignment_name: The standard assignments assignment key - unique key for the + standard assignment. Required. + :type standard_assignment_name: str + :param standard_assignment: Custom standard assignment over a pre-defined scope. Required. + :type standard_assignment: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: StandardAssignment. The StandardAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.StandardAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create( + self, + resource_id: str, + standard_assignment_name: str, + standard_assignment: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.StandardAssignment: + """Creates or updates a standard assignment. + + This operation creates or updates a standard assignment with the given scope and name. standard + assignments apply to all resources contained within their scope. For example, when you assign a + policy at resource group scope, that policy applies to all resources in the group. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param standard_assignment_name: The standard assignments assignment key - unique key for the + standard assignment. Required. + :type standard_assignment_name: str + :param standard_assignment: Custom standard assignment over a pre-defined scope. Required. + :type standard_assignment: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: StandardAssignment. The StandardAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.StandardAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create( + self, + resource_id: str, + standard_assignment_name: str, + standard_assignment: Union[_models.StandardAssignment, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.StandardAssignment: + """Creates or updates a standard assignment. + + This operation creates or updates a standard assignment with the given scope and name. standard + assignments apply to all resources contained within their scope. For example, when you assign a + policy at resource group scope, that policy applies to all resources in the group. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param standard_assignment_name: The standard assignments assignment key - unique key for the + standard assignment. Required. + :type standard_assignment_name: str + :param standard_assignment: Custom standard assignment over a pre-defined scope. Is one of the + following types: StandardAssignment, JSON, IO[bytes] Required. + :type standard_assignment: ~azure.mgmt.security.models.StandardAssignment or JSON or IO[bytes] + :return: StandardAssignment. The StandardAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.StandardAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.StandardAssignment] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(standard_assignment, (IOBase, bytes)): + _content = standard_assignment + else: + _content = json.dumps(standard_assignment, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_standard_assignments_create_request( + resource_id=resource_id, + standard_assignment_name=standard_assignment_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.StandardAssignment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, resource_id: str, standard_assignment_name: str, **kwargs: Any) -> None: + """Deletes a standard assignment. + + This operation deletes a standard assignment, given its name and the scope it was created in. + The scope of a standard assignment is the part of its ID preceding + '/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}'. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param standard_assignment_name: The standard assignments assignment key - unique key for the + standard assignment. Required. + :type standard_assignment_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_standard_assignments_delete_request( + resource_id=resource_id, + standard_assignment_name=standard_assignment_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.StandardAssignment"]: + """Get a list of all relevant standard assignments over a scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of StandardAssignment + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.StandardAssignment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[List[_models.StandardAssignment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_standard_assignments_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.StandardAssignment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class CustomRecommendationsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`custom_recommendations` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, scope: str, custom_recommendation_name: str, **kwargs: Any) -> _models.CustomRecommendation: + """Get a specific custom recommendation for the requested scope by customRecommendationName. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param custom_recommendation_name: Name of the Custom Recommendation. Required. + :type custom_recommendation_name: str + :return: CustomRecommendation. The CustomRecommendation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.CustomRecommendation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[_models.CustomRecommendation] = kwargs.pop("cls", None) + + _request = build_custom_recommendations_get_request( + scope=scope, + custom_recommendation_name=custom_recommendation_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.CustomRecommendation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + scope: str, + custom_recommendation_name: str, + custom_recommendation_body: _models.CustomRecommendation, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.CustomRecommendation: + """Creates or updates a custom recommendation over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param custom_recommendation_name: Name of the Custom Recommendation. Required. + :type custom_recommendation_name: str + :param custom_recommendation_body: Custom Recommendation body. Required. + :type custom_recommendation_body: ~azure.mgmt.security.models.CustomRecommendation + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: CustomRecommendation. The CustomRecommendation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.CustomRecommendation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + scope: str, + custom_recommendation_name: str, + custom_recommendation_body: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.CustomRecommendation: + """Creates or updates a custom recommendation over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param custom_recommendation_name: Name of the Custom Recommendation. Required. + :type custom_recommendation_name: str + :param custom_recommendation_body: Custom Recommendation body. Required. + :type custom_recommendation_body: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: CustomRecommendation. The CustomRecommendation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.CustomRecommendation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + scope: str, + custom_recommendation_name: str, + custom_recommendation_body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.CustomRecommendation: + """Creates or updates a custom recommendation over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param custom_recommendation_name: Name of the Custom Recommendation. Required. + :type custom_recommendation_name: str + :param custom_recommendation_body: Custom Recommendation body. Required. + :type custom_recommendation_body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: CustomRecommendation. The CustomRecommendation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.CustomRecommendation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + scope: str, + custom_recommendation_name: str, + custom_recommendation_body: Union[_models.CustomRecommendation, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.CustomRecommendation: + """Creates or updates a custom recommendation over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param custom_recommendation_name: Name of the Custom Recommendation. Required. + :type custom_recommendation_name: str + :param custom_recommendation_body: Custom Recommendation body. Is one of the following types: + CustomRecommendation, JSON, IO[bytes] Required. + :type custom_recommendation_body: ~azure.mgmt.security.models.CustomRecommendation or JSON or + IO[bytes] + :return: CustomRecommendation. The CustomRecommendation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.CustomRecommendation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.CustomRecommendation] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(custom_recommendation_body, (IOBase, bytes)): + _content = custom_recommendation_body + else: + _content = json.dumps(custom_recommendation_body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_custom_recommendations_create_or_update_request( + scope=scope, + custom_recommendation_name=custom_recommendation_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.CustomRecommendation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, scope: str, custom_recommendation_name: str, **kwargs: Any) -> None: + """Delete a custom recommendation over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param custom_recommendation_name: Name of the Custom Recommendation. Required. + :type custom_recommendation_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_custom_recommendations_delete_request( + scope=scope, + custom_recommendation_name=custom_recommendation_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.CustomRecommendation"]: + """Get a list of all relevant custom recommendations over a scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of CustomRecommendation + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.CustomRecommendation] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[List[_models.CustomRecommendation]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_custom_recommendations_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.CustomRecommendation], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class ServerVulnerabilityAssessmentsSettingsOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`server_vulnerability_assessments_settings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], **kwargs: Any + ) -> _models.ServerVulnerabilityAssessmentsSetting: + """Get a server vulnerability assessments setting of the requested kind, that is set on the + subscription. + + :param setting_kind: The kind of the server vulnerability assessments setting. + "azureServersSetting" Required. + :type setting_kind: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName + :return: ServerVulnerabilityAssessmentsSetting. The ServerVulnerabilityAssessmentsSetting is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) + cls: ClsType[_models.ServerVulnerabilityAssessmentsSetting] = kwargs.pop("cls", None) + + _request = build_server_vulnerability_assessments_settings_get_request( + setting_kind=setting_kind, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ServerVulnerabilityAssessmentsSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], + server_vulnerability_assessments_setting: _models.ServerVulnerabilityAssessmentsSetting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.ServerVulnerabilityAssessmentsSetting: + """Create or update a server vulnerability assessments setting of the requested kind on the + subscription. + + :param setting_kind: The kind of the server vulnerability assessments setting. + "azureServersSetting" Required. + :type setting_kind: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName + :param server_vulnerability_assessments_setting: A server vulnerability assessments setting + over a predefined scope. Required. + :type server_vulnerability_assessments_setting: + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: ServerVulnerabilityAssessmentsSetting. The ServerVulnerabilityAssessmentsSetting is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], + server_vulnerability_assessments_setting: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.ServerVulnerabilityAssessmentsSetting: + """Create or update a server vulnerability assessments setting of the requested kind on the + subscription. + + :param setting_kind: The kind of the server vulnerability assessments setting. + "azureServersSetting" Required. + :type setting_kind: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName + :param server_vulnerability_assessments_setting: A server vulnerability assessments setting + over a predefined scope. Required. + :type server_vulnerability_assessments_setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: ServerVulnerabilityAssessmentsSetting. The ServerVulnerabilityAssessmentsSetting is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], + server_vulnerability_assessments_setting: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.ServerVulnerabilityAssessmentsSetting: + """Create or update a server vulnerability assessments setting of the requested kind on the + subscription. + + :param setting_kind: The kind of the server vulnerability assessments setting. + "azureServersSetting" Required. + :type setting_kind: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName + :param server_vulnerability_assessments_setting: A server vulnerability assessments setting + over a predefined scope. Required. + :type server_vulnerability_assessments_setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: ServerVulnerabilityAssessmentsSetting. The ServerVulnerabilityAssessmentsSetting is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], + server_vulnerability_assessments_setting: Union[_models.ServerVulnerabilityAssessmentsSetting, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.ServerVulnerabilityAssessmentsSetting: + """Create or update a server vulnerability assessments setting of the requested kind on the + subscription. + + :param setting_kind: The kind of the server vulnerability assessments setting. + "azureServersSetting" Required. + :type setting_kind: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName + :param server_vulnerability_assessments_setting: A server vulnerability assessments setting + over a predefined scope. Is one of the following types: ServerVulnerabilityAssessmentsSetting, + JSON, IO[bytes] Required. + :type server_vulnerability_assessments_setting: + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting or JSON or IO[bytes] + :return: ServerVulnerabilityAssessmentsSetting. The ServerVulnerabilityAssessmentsSetting is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.ServerVulnerabilityAssessmentsSetting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(server_vulnerability_assessments_setting, (IOBase, bytes)): + _content = server_vulnerability_assessments_setting + else: + _content = json.dumps(server_vulnerability_assessments_setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_server_vulnerability_assessments_settings_create_or_update_request( + setting_kind=setting_kind, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ServerVulnerabilityAssessmentsSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete( + self, setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], **kwargs: Any + ) -> None: + """Delete the server vulnerability assessments setting of the requested kind from the + subscription. + + :param setting_kind: The kind of the server vulnerability assessments setting. + "azureServersSetting" Required. + :type setting_kind: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_server_vulnerability_assessments_settings_delete_request( + setting_kind=setting_kind, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.ServerVulnerabilityAssessmentsSetting"]: + """Get a list of all the server vulnerability assessments settings over a subscription level + scope. + + :return: An iterator like instance of ServerVulnerabilityAssessmentsSetting + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) + cls: ClsType[List[_models.ServerVulnerabilityAssessmentsSetting]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_server_vulnerability_assessments_settings_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ServerVulnerabilityAssessmentsSetting], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SettingsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`settings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, setting_name: Union[str, _models.SettingName], **kwargs: Any) -> _models.Setting: + """Settings of different configurations in Microsoft Defender for Cloud. + + :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :return: Setting. The Setting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Setting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) + cls: ClsType[_models.Setting] = kwargs.pop("cls", None) + + _request = build_settings_get_request( + setting_name=setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Setting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def update( + self, + setting_name: Union[str, _models.SettingName], + setting: _models.Setting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Setting: + """updating settings about different configurations in Microsoft Defender for Cloud. + + :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param setting: Setting object. Required. + :type setting: ~azure.mgmt.security.models.Setting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Setting. The Setting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Setting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + setting_name: Union[str, _models.SettingName], + setting: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Setting: + """updating settings about different configurations in Microsoft Defender for Cloud. + + :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param setting: Setting object. Required. + :type setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Setting. The Setting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Setting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + setting_name: Union[str, _models.SettingName], + setting: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Setting: + """updating settings about different configurations in Microsoft Defender for Cloud. + + :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param setting: Setting object. Required. + :type setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Setting. The Setting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Setting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def update( + self, + setting_name: Union[str, _models.SettingName], + setting: Union[_models.Setting, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.Setting: + """updating settings about different configurations in Microsoft Defender for Cloud. + + :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param setting: Setting object. Is one of the following types: Setting, JSON, IO[bytes] + Required. + :type setting: ~azure.mgmt.security.models.Setting or JSON or IO[bytes] + :return: Setting. The Setting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Setting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Setting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(setting, (IOBase, bytes)): + _content = setting + else: + _content = json.dumps(setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_settings_update_request( + setting_name=setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Setting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.Setting"]: + """Settings about different configurations in Microsoft Defender for Cloud. + + :return: An iterator like instance of Setting + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Setting] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) + cls: ClsType[List[_models.Setting]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_settings_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Setting], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SqlVulnerabilityAssessmentBaselineRulesOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`sql_vulnerability_assessment_baseline_rules` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> _models.RuleResults: + """Gets the results for a given rule in the Baseline. + + Gets the results for a given rule in the Baseline. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :return: RuleResults. The RuleResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RuleResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.RuleResults] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_baseline_rules_get_request( + resource_id=resource_id, + rule_id=rule_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.RuleResults, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + resource_id: str, + rule_id: str, + body: Optional[_models.RuleResultsInput] = None, + *, + database_name: Optional[str] = None, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.RuleResults: + """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param body: The baseline results for this rule. Default value is None. + :type body: ~azure.mgmt.security.models.RuleResultsInput + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: RuleResults. The RuleResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RuleResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_id: str, + rule_id: str, + body: Optional[JSON] = None, + *, + database_name: Optional[str] = None, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.RuleResults: + """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param body: The baseline results for this rule. Default value is None. + :type body: JSON + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: RuleResults. The RuleResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RuleResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_id: str, + rule_id: str, + body: Optional[IO[bytes]] = None, + *, + database_name: Optional[str] = None, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.RuleResults: + """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param body: The baseline results for this rule. Default value is None. + :type body: IO[bytes] + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: RuleResults. The RuleResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RuleResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_id: str, + rule_id: str, + body: Optional[Union[_models.RuleResultsInput, JSON, IO[bytes]]] = None, + *, + database_name: Optional[str] = None, + **kwargs: Any + ) -> _models.RuleResults: + """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param body: The baseline results for this rule. Is one of the following types: + RuleResultsInput, JSON, IO[bytes] Default value is None. + :type body: ~azure.mgmt.security.models.RuleResultsInput or JSON or IO[bytes] + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :return: RuleResults. The RuleResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RuleResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if body else None + cls: ClsType[_models.RuleResults] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if body else None + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + if body is not None: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + else: + _content = None + + _request = build_sql_vulnerability_assessment_baseline_rules_create_or_update_request( + resource_id=resource_id, + rule_id=rule_id, + database_name=database_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.RuleResults, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete( + self, resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> None: + """Deletes a rule from the Baseline of a given database. + + Deletes a rule from the Baseline of a given database. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_baseline_rules_delete_request( + resource_id=resource_id, + rule_id=rule_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list( + self, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.RuleResults"]: + """Gets the results for all rules in the Baseline. + + Gets the results for all rules in the Baseline. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :return: An iterator like instance of RuleResults + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.RuleResults] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[List[_models.RuleResults]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_sql_vulnerability_assessment_baseline_rules_list_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.RuleResults], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @overload + async def add( + self, + resource_id: str, + body: Optional[_models.RulesResultsInput] = None, + *, + database_name: Optional[str] = None, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.RulesResults: + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The content of the action request. Default value is None. + :type body: ~azure.mgmt.security.models.RulesResultsInput + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: RulesResults. The RulesResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RulesResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def add( + self, + resource_id: str, + body: Optional[JSON] = None, + *, + database_name: Optional[str] = None, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.RulesResults: + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The content of the action request. Default value is None. + :type body: JSON + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: RulesResults. The RulesResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RulesResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def add( + self, + resource_id: str, + body: Optional[IO[bytes]] = None, + *, + database_name: Optional[str] = None, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.RulesResults: + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The content of the action request. Default value is None. + :type body: IO[bytes] + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: RulesResults. The RulesResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RulesResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def add( + self, + resource_id: str, + body: Optional[Union[_models.RulesResultsInput, JSON, IO[bytes]]] = None, + *, + database_name: Optional[str] = None, + **kwargs: Any + ) -> _models.RulesResults: + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The content of the action request. Is one of the following types: + RulesResultsInput, JSON, IO[bytes] Default value is None. + :type body: ~azure.mgmt.security.models.RulesResultsInput or JSON or IO[bytes] + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :return: RulesResults. The RulesResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RulesResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if body else None + cls: ClsType[_models.RulesResults] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if body else None + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + if body is not None: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + else: + _content = None + + _request = build_sql_vulnerability_assessment_baseline_rules_add_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.RulesResults, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class SqlVulnerabilityAssessmentScanResultsOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`sql_vulnerability_assessment_scan_results` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, scan_id: str, scan_result_id: str, resource_id: str, *, database_name: str, **kwargs: Any + ) -> _models.ScanResult: + """Gets the scan results of a single rule in a scan record. + + Gets the scan results of a single rule in a scan record. + + :param scan_id: The scan Id. Required. + :type scan_id: str + :param scan_result_id: The rule Id of the results. Required. + :type scan_result_id: str + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Required. + :paramtype database_name: str + :return: ScanResult. The ScanResult is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ScanResult + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.ScanResult] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_scan_results_get_request( + scan_id=scan_id, + scan_result_id=scan_result_id, + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ScanResult, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, scan_id: str, resource_id: str, *, database_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.ScanResult"]: + """Gets a list of scan results for a single scan record. + + Gets a list of scan results for a single scan record. + + :param scan_id: The scan Id. Required. + :type scan_id: str + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Required. + :paramtype database_name: str + :return: An iterator like instance of ScanResult + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ScanResult] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[List[_models.ScanResult]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_sql_vulnerability_assessment_scan_results_list_request( + scan_id=scan_id, + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ScanResult], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class StandardsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`standards` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, resource_group_name: str, standard_id: str, **kwargs: Any) -> _models.Standard: + """Get a specific security standard for the requested scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :return: Standard. The Standard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Standard + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.Standard] = kwargs.pop("cls", None) + + _request = build_standards_get_request( + resource_group_name=resource_group_name, + standard_id=standard_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Standard, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + resource_group_name: str, + standard_id: str, + standard: _models.Standard, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: ~azure.mgmt.security.models.Standard + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Standard. The Standard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Standard + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + standard_id: str, + standard: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Standard. The Standard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Standard + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + standard_id: str, + standard: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Standard. The Standard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Standard + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_group_name: str, + standard_id: str, + standard: Union[_models.Standard, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Is one of the following + types: Standard, JSON, IO[bytes] Required. + :type standard: ~azure.mgmt.security.models.Standard or JSON or IO[bytes] + :return: Standard. The Standard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Standard + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Standard] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(standard, (IOBase, bytes)): + _content = standard + else: + _content = json.dumps(standard, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_standards_create_or_update_request( + resource_group_name=resource_group_name, + standard_id=standard_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Standard, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, resource_group_name: str, standard_id: str, **kwargs: Any) -> None: + """Delete a security standard on a scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_standards_delete_request( + resource_group_name=resource_group_name, + standard_id=standard_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.Standard"]: + """Get security standards on all your resources inside a scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of Standard + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Standard] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[List[_models.Standard]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_standards_list_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Standard], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.Standard"]: + """Get a list of all relevant security standards over a subscription level scope. + + :return: An iterator like instance of Standard + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Standard] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[List[_models.Standard]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_standards_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Standard], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class AssignmentsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`assignments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, resource_group_name: str, assignment_id: str, **kwargs: Any) -> _models.Assignment: + """Get a specific standard assignment for the requested scope by resourceId. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :return: Assignment. The Assignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Assignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.Assignment] = kwargs.pop("cls", None) + + _request = build_assignments_get_request( + resource_group_name=resource_group_name, + assignment_id=assignment_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Assignment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + resource_group_name: str, + assignment_id: str, + assignment: _models.Assignment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Required. + :type assignment: ~azure.mgmt.security.models.Assignment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Assignment. The Assignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Assignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + assignment_id: str, + assignment: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Required. + :type assignment: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Assignment. The Assignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Assignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + assignment_id: str, + assignment: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Required. + :type assignment: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Assignment. The Assignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Assignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_group_name: str, + assignment_id: str, + assignment: Union[_models.Assignment, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Is one of the following + types: Assignment, JSON, IO[bytes] Required. + :type assignment: ~azure.mgmt.security.models.Assignment or JSON or IO[bytes] + :return: Assignment. The Assignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Assignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Assignment] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(assignment, (IOBase, bytes)): + _content = assignment + else: + _content = json.dumps(assignment, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_assignments_create_or_update_request( + resource_group_name=resource_group_name, + assignment_id=assignment_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Assignment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, resource_group_name: str, assignment_id: str, **kwargs: Any) -> None: + """Delete a standard assignment over a given scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_assignments_delete_request( + resource_group_name=resource_group_name, + assignment_id=assignment_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.Assignment"]: + """Get a list of all relevant standardAssignments available for scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of Assignment + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Assignment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[List[_models.Assignment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_assignments_list_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Assignment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.Assignment"]: + """Get a list of all relevant standardAssignments over a subscription level scope. + + :return: An iterator like instance of Assignment + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Assignment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[List[_models.Assignment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_assignments_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Assignment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class TasksOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`tasks` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get_resource_group_level_task( + self, resource_group_name: str, asc_location: str, task_name: str, **kwargs: Any + ) -> _models.SecurityTask: + """Recommended tasks that will help improve the security of the subscription proactively. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param task_name: Name of the task object, will be a GUID. Required. + :type task_name: str + :return: SecurityTask. The SecurityTask is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityTask + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[_models.SecurityTask] = kwargs.pop("cls", None) + + _request = build_tasks_get_resource_group_level_task_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + task_name=task_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityTask, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_resource_group( + self, resource_group_name: str, asc_location: str, *, filter: Optional[str] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.SecurityTask"]: + """Recommended tasks that will help improve the security of the subscription proactively. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of SecurityTask + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityTask] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[List[_models.SecurityTask]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_tasks_list_by_resource_group_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityTask], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + async def update_resource_group_level_task_state( + self, + resource_group_name: str, + asc_location: str, + task_name: str, + task_update_action_type: Union[str, _models.TaskUpdateActionType], + **kwargs: Any + ) -> None: + """Recommended tasks that will help improve the security of the subscription proactively. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param task_name: Name of the task object, will be a GUID. Required. + :type task_name: str + :param task_update_action_type: Type of the action to do on the task. Known values are: + "Activate", "Dismiss", "Start", "Resolve", and "Close". Required. + :type task_update_action_type: str or ~azure.mgmt.security.models.TaskUpdateActionType + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_tasks_update_resource_group_level_task_state_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + task_name=task_name, + task_update_action_type=task_update_action_type, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace_async + async def get_subscription_level_task( + self, asc_location: str, task_name: str, **kwargs: Any + ) -> _models.SecurityTask: + """Recommended tasks that will help improve the security of the subscription proactively. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param task_name: Name of the task object, will be a GUID. Required. + :type task_name: str + :return: SecurityTask. The SecurityTask is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityTask + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[_models.SecurityTask] = kwargs.pop("cls", None) + + _request = build_tasks_get_subscription_level_task_request( + asc_location=asc_location, + task_name=task_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityTask, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_home_region( + self, asc_location: str, *, filter: Optional[str] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.SecurityTask"]: + """Recommended tasks that will help improve the security of the subscription proactively. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of SecurityTask + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityTask] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[List[_models.SecurityTask]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_tasks_list_by_home_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityTask], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + async def update_subscription_level_task_state( + self, + asc_location: str, + task_name: str, + task_update_action_type: Union[str, _models.TaskUpdateActionType], + **kwargs: Any + ) -> None: + """Recommended tasks that will help improve the security of the subscription proactively. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param task_name: Name of the task object, will be a GUID. Required. + :type task_name: str + :param task_update_action_type: Type of the action to do on the task. Known values are: + "Activate", "Dismiss", "Start", "Resolve", and "Close". Required. + :type task_update_action_type: str or ~azure.mgmt.security.models.TaskUpdateActionType + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_tasks_update_subscription_level_task_state_request( + asc_location=asc_location, + task_name=task_name, + task_update_action_type=task_update_action_type, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, *, filter: Optional[str] = None, **kwargs: Any) -> AsyncItemPaged["_models.SecurityTask"]: + """Recommended tasks that will help improve the security of the subscription proactively. + + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of SecurityTask + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityTask] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[List[_models.SecurityTask]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_tasks_list_request( + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityTask], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class APICollectionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`api_collections` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get_by_azure_api_management_service( + self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any + ) -> _models.ApiCollection: + """Gets an onboarded Azure API Management API. + + Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an + Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor + the operations within the Azure API Management API for intrusive behaviors and provide alerts + for attacks that have been detected. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param service_name: The name of the API Management service. Required. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the API Management service instance. + Non-current revision has ;rev=n as a suffix where n is the revision number. Required. + :type api_id: str + :return: ApiCollection. The ApiCollection is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ApiCollection + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[_models.ApiCollection] = kwargs.pop("cls", None) + + _request = build_api_collections_get_by_azure_api_management_service_request( + resource_group_name=resource_group_name, + service_name=service_name, + api_id=api_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ApiCollection, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + async def _onboard_azure_api_management_api_initial( # pylint: disable=name-too-long + self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + _request = build_api_collections_onboard_azure_api_management_api_request( + resource_group_name=resource_group_name, + service_name=service_name, + api_id=api_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def begin_onboard_azure_api_management_api( + self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any + ) -> AsyncLROPoller[_models.ApiCollection]: + """Onboard an Azure API Management API to Microsoft Defender for APIs. + + Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start + monitoring the operations within the Azure Management API for intrusive behaviors and provide + alerts for attacks that have been detected. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param service_name: The name of the API Management service. Required. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the API Management service instance. + Non-current revision has ;rev=n as a suffix where n is the revision number. Required. + :type api_id: str + :return: An instance of AsyncLROPoller that returns ApiCollection. The ApiCollection is + compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.ApiCollection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[_models.ApiCollection] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._onboard_azure_api_management_api_initial( + resource_group_name=resource_group_name, + service_name=service_name, + api_id=api_id, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.ApiCollection, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.ApiCollection].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.ApiCollection]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace_async + async def offboard_azure_api_management_api( + self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any + ) -> None: + """Offboard an Azure API Management API from Microsoft Defender for APIs. + + Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop + monitoring the operations within the Azure API Management API for intrusive behaviors. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param service_name: The name of the API Management service. Required. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the API Management service instance. + Non-current revision has ;rev=n as a suffix where n is the revision number. Required. + :type api_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_api_collections_offboard_azure_api_management_api_request( + resource_group_name=resource_group_name, + service_name=service_name, + api_id=api_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_azure_api_management_service( + self, resource_group_name: str, service_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.ApiCollection"]: + """Gets a list of onboarded Azure API Management APIs. + + Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for + APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system + will monitor the operations within the Azure API Management API for intrusive behaviors and + provide alerts for attacks that have been detected. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param service_name: The name of the API Management service. Required. + :type service_name: str + :return: An iterator like instance of ApiCollection + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ApiCollection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[List[_models.ApiCollection]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_api_collections_list_by_azure_api_management_service_request( + resource_group_name=resource_group_name, + service_name=service_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ApiCollection], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.ApiCollection"]: + """Gets a list of API collections within a subscription. + + Gets a list of API collections within a subscription that have been onboarded to Microsoft + Defender for APIs. + + :return: An iterator like instance of ApiCollection + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ApiCollection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[List[_models.ApiCollection]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_api_collections_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ApiCollection], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_resource_group( + self, resource_group_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.ApiCollection"]: + """Gets a list of API collections within a resource group. + + Gets a list of API collections within a resource group that have been onboarded to Microsoft + Defender for APIs. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of ApiCollection + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ApiCollection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[List[_models.ApiCollection]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_api_collections_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ApiCollection], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class ApplicationOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`application` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, application_id: str, **kwargs: Any) -> _models.Application: + """Get a specific application for the requested scope by applicationId. + + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + cls: ClsType[_models.Application] = kwargs.pop("cls", None) + + _request = build_application_get_request( + application_id=application_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Application, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + application_id: str, + application: _models.Application, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Application: + """Creates or update a security application on the given subscription. + + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Required. + :type application: ~azure.mgmt.security.models.Application + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, application_id: str, application: JSON, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.Application: + """Creates or update a security application on the given subscription. + + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Required. + :type application: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, application_id: str, application: IO[bytes], *, content_type: str = "application/json", **kwargs: Any + ) -> _models.Application: + """Creates or update a security application on the given subscription. + + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Required. + :type application: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, application_id: str, application: Union[_models.Application, JSON, IO[bytes]], **kwargs: Any + ) -> _models.Application: + """Creates or update a security application on the given subscription. + + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Is one of the following types: + Application, JSON, IO[bytes] Required. + :type application: ~azure.mgmt.security.models.Application or JSON or IO[bytes] + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Application] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(application, (IOBase, bytes)): + _content = application + else: + _content = json.dumps(application, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_application_create_or_update_request( + application_id=application_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Application, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, application_id: str, **kwargs: Any) -> None: + """Delete an Application over a given scope. + + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_application_delete_request( + application_id=application_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + +class SecurityConnectorApplicationsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`security_connector_applications` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.Application"]: + """Get a list of all relevant applications over a security connector level scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: An iterator like instance of Application + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Application] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + cls: ClsType[List[_models.Application]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_connector_applications_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Application], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class AssessmentsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`assessments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, + resource_id: str, + assessment_name: str, + *, + expand: Optional[Union[str, _models.ExpandEnum]] = None, + **kwargs: Any + ) -> _models.SecurityAssessmentResponse: + """Get a security assessment on your scanned resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. + :type assessment_name: str + :keyword expand: OData expand. Optional. Known values are: "links" and "metadata". Default + value is None. + :paramtype expand: str or ~azure.mgmt.security.models.ExpandEnum + :return: SecurityAssessmentResponse. The SecurityAssessmentResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[_models.SecurityAssessmentResponse] = kwargs.pop("cls", None) + + _request = build_assessments_get_request( + resource_id=resource_id, + assessment_name=assessment_name, + expand=expand, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityAssessmentResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + resource_id: str, + assessment_name: str, + assessment: _models.SecurityAssessment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityAssessmentResponse: + """Create a security assessment on your resource. An assessment metadata that describes this + assessment must be predefined with the same name before inserting the assessment result. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. + :type assessment_name: str + :param assessment: Calculated assessment on a pre-defined assessment metadata. Required. + :type assessment: ~azure.mgmt.security.models.SecurityAssessment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityAssessmentResponse. The SecurityAssessmentResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_id: str, + assessment_name: str, + assessment: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityAssessmentResponse: + """Create a security assessment on your resource. An assessment metadata that describes this + assessment must be predefined with the same name before inserting the assessment result. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. + :type assessment_name: str + :param assessment: Calculated assessment on a pre-defined assessment metadata. Required. + :type assessment: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityAssessmentResponse. The SecurityAssessmentResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_id: str, + assessment_name: str, + assessment: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityAssessmentResponse: + """Create a security assessment on your resource. An assessment metadata that describes this + assessment must be predefined with the same name before inserting the assessment result. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. + :type assessment_name: str + :param assessment: Calculated assessment on a pre-defined assessment metadata. Required. + :type assessment: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityAssessmentResponse. The SecurityAssessmentResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_id: str, + assessment_name: str, + assessment: Union[_models.SecurityAssessment, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.SecurityAssessmentResponse: + """Create a security assessment on your resource. An assessment metadata that describes this + assessment must be predefined with the same name before inserting the assessment result. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. + :type assessment_name: str + :param assessment: Calculated assessment on a pre-defined assessment metadata. Is one of the + following types: SecurityAssessment, JSON, IO[bytes] Required. + :type assessment: ~azure.mgmt.security.models.SecurityAssessment or JSON or IO[bytes] + :return: SecurityAssessmentResponse. The SecurityAssessmentResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.SecurityAssessmentResponse] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(assessment, (IOBase, bytes)): + _content = assessment + else: + _content = json.dumps(assessment, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_assessments_create_or_update_request( + resource_id=resource_id, + assessment_name=assessment_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityAssessmentResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, resource_id: str, assessment_name: str, **kwargs: Any) -> None: + """Delete a security assessment on your resource. An assessment metadata that describes this + assessment must be predefined with the same name before inserting the assessment result. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. + :type assessment_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_assessments_delete_request( + resource_id=resource_id, + assessment_name=assessment_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.SecurityAssessmentResponse"]: + """Get security assessments on all your scanned resources inside a scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of SecurityAssessmentResponse + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityAssessmentResponse] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[List[_models.SecurityAssessmentResponse]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_assessments_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityAssessmentResponse], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class AdvancedThreatProtectionOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`advanced_threat_protection` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, resource_id: str, **kwargs: Any) -> _models.AdvancedThreatProtectionSetting: + """Gets the Advanced Threat Protection settings for the specified resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :return: AdvancedThreatProtectionSetting. The AdvancedThreatProtectionSetting is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01")) + setting_name: Literal["current"] = kwargs.pop("setting_name", "current") + cls: ClsType[_models.AdvancedThreatProtectionSetting] = kwargs.pop("cls", None) + + _request = build_advanced_threat_protection_get_request( + resource_id=resource_id, + api_version=api_version, + setting_name=setting_name, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AdvancedThreatProtectionSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create( + self, + resource_id: str, + advanced_threat_protection_setting: _models.AdvancedThreatProtectionSetting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AdvancedThreatProtectionSetting: + """Creates or updates the Advanced Threat Protection settings on a specified resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Required. + :type advanced_threat_protection_setting: + ~azure.mgmt.security.models.AdvancedThreatProtectionSetting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AdvancedThreatProtectionSetting. The AdvancedThreatProtectionSetting is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create( + self, + resource_id: str, + advanced_threat_protection_setting: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AdvancedThreatProtectionSetting: + """Creates or updates the Advanced Threat Protection settings on a specified resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Required. + :type advanced_threat_protection_setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AdvancedThreatProtectionSetting. The AdvancedThreatProtectionSetting is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create( + self, + resource_id: str, + advanced_threat_protection_setting: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AdvancedThreatProtectionSetting: + """Creates or updates the Advanced Threat Protection settings on a specified resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Required. + :type advanced_threat_protection_setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: AdvancedThreatProtectionSetting. The AdvancedThreatProtectionSetting is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create( + self, + resource_id: str, + advanced_threat_protection_setting: Union[_models.AdvancedThreatProtectionSetting, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.AdvancedThreatProtectionSetting: + """Creates or updates the Advanced Threat Protection settings on a specified resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Is one of the + following types: AdvancedThreatProtectionSetting, JSON, IO[bytes] Required. + :type advanced_threat_protection_setting: + ~azure.mgmt.security.models.AdvancedThreatProtectionSetting or JSON or IO[bytes] + :return: AdvancedThreatProtectionSetting. The AdvancedThreatProtectionSetting is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01")) + setting_name: Literal["current"] = kwargs.pop("setting_name", "current") + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AdvancedThreatProtectionSetting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(advanced_threat_protection_setting, (IOBase, bytes)): + _content = advanced_threat_protection_setting + else: + _content = json.dumps(advanced_threat_protection_setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_advanced_threat_protection_create_request( + resource_id=resource_id, + api_version=api_version, + setting_name=setting_name, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AdvancedThreatProtectionSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class DefenderForStorageOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`defender_for_storage` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any + ) -> _models.DefenderForStorageSetting: + """Gets the Defender for Storage settings for the specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :return: DefenderForStorageSetting. The DefenderForStorageSetting is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + cls: ClsType[_models.DefenderForStorageSetting] = kwargs.pop("cls", None) + + _request = build_defender_for_storage_get_request( + resource_id=resource_id, + setting_name=setting_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DefenderForStorageSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create( + self, + resource_id: str, + setting_name: Union[str, _models.SettingName], + defender_for_storage_setting: _models.DefenderForStorageSetting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DefenderForStorageSetting: + """Creates or updates the Defender for Storage settings on a specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param defender_for_storage_setting: Defender for Storage Settings. Required. + :type defender_for_storage_setting: ~azure.mgmt.security.models.DefenderForStorageSetting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: DefenderForStorageSetting. The DefenderForStorageSetting is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create( + self, + resource_id: str, + setting_name: Union[str, _models.SettingName], + defender_for_storage_setting: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DefenderForStorageSetting: + """Creates or updates the Defender for Storage settings on a specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param defender_for_storage_setting: Defender for Storage Settings. Required. + :type defender_for_storage_setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: DefenderForStorageSetting. The DefenderForStorageSetting is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create( + self, + resource_id: str, + setting_name: Union[str, _models.SettingName], + defender_for_storage_setting: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DefenderForStorageSetting: + """Creates or updates the Defender for Storage settings on a specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param defender_for_storage_setting: Defender for Storage Settings. Required. + :type defender_for_storage_setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: DefenderForStorageSetting. The DefenderForStorageSetting is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create( + self, + resource_id: str, + setting_name: Union[str, _models.SettingName], + defender_for_storage_setting: Union[_models.DefenderForStorageSetting, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.DefenderForStorageSetting: + """Creates or updates the Defender for Storage settings on a specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param defender_for_storage_setting: Defender for Storage Settings. Is one of the following + types: DefenderForStorageSetting, JSON, IO[bytes] Required. + :type defender_for_storage_setting: ~azure.mgmt.security.models.DefenderForStorageSetting or + JSON or IO[bytes] + :return: DefenderForStorageSetting. The DefenderForStorageSetting is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.DefenderForStorageSetting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(defender_for_storage_setting, (IOBase, bytes)): + _content = defender_for_storage_setting + else: + _content = json.dumps(defender_for_storage_setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_defender_for_storage_create_request( + resource_id=resource_id, + setting_name=setting_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DefenderForStorageSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, resource_id: str, **kwargs: Any) -> AsyncItemPaged["_models.DefenderForStorageSetting"]: + """Lists the Defender for Storage settings for the specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :return: An iterator like instance of DefenderForStorageSetting + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.DefenderForStorageSetting] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + cls: ClsType[List[_models.DefenderForStorageSetting]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_defender_for_storage_list_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DefenderForStorageSetting], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + async def start_malware_scan( + self, resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any + ) -> _models.MalwareScan: + """Initiate a Defender for Storage malware scan for the specified storage account. Blobs and Files + will be scanned for malware. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :return: MalwareScan. The MalwareScan is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.MalwareScan + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) + + _request = build_defender_for_storage_start_malware_scan_request( + resource_id=resource_id, + setting_name=setting_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.MalwareScan, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def cancel_malware_scan( + self, resource_id: str, setting_name: Union[str, _models.SettingName], scan_id: str, **kwargs: Any + ) -> _models.MalwareScan: + """Cancels a Defender for Storage malware scan for the specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param scan_id: The identifier of the scan. Can be either 'latest' or a GUID. Required. + :type scan_id: str + :return: MalwareScan. The MalwareScan is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.MalwareScan + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) + + _request = build_defender_for_storage_cancel_malware_scan_request( + resource_id=resource_id, + setting_name=setting_name, + scan_id=scan_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.MalwareScan, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def get_malware_scan( + self, resource_id: str, setting_name: Union[str, _models.SettingName], scan_id: str, **kwargs: Any + ) -> _models.MalwareScan: + """Gets the Defender for Storage malware scan for the specified storage resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param scan_id: The identifier of the scan. Can be either 'latest' or a GUID. Required. + :type scan_id: str + :return: MalwareScan. The MalwareScan is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.MalwareScan + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) + + _request = build_defender_for_storage_get_malware_scan_request( + resource_id=resource_id, + setting_name=setting_name, + scan_id=scan_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.MalwareScan, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class IotSecuritySolutionAnalyticsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`iot_security_solution_analytics` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, solution_name: str, **kwargs: Any + ) -> _models.IoTSecuritySolutionAnalyticsModel: + """Use this method to get IoT Security Analytics metrics. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :return: IoTSecuritySolutionAnalyticsModel. The IoTSecuritySolutionAnalyticsModel is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[_models.IoTSecuritySolutionAnalyticsModel] = kwargs.pop("cls", None) + + _request = build_iot_security_solution_analytics_get_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecuritySolutionAnalyticsModel, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def list( + self, resource_group_name: str, solution_name: str, **kwargs: Any + ) -> _models.IoTSecuritySolutionAnalyticsModelList: + """Use this method to get IoT security Analytics metrics in an array. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :return: IoTSecuritySolutionAnalyticsModelList. The IoTSecuritySolutionAnalyticsModelList is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModelList + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[_models.IoTSecuritySolutionAnalyticsModelList] = kwargs.pop("cls", None) + + _request = build_iot_security_solution_analytics_list_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecuritySolutionAnalyticsModelList, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class IotSecuritySolutionOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`iot_security_solution` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, solution_name: str, **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """User this method to get details of a specific IoT Security solution based on solution name. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[_models.IoTSecuritySolutionModel] = kwargs.pop("cls", None) + + _request = build_iot_security_solution_get_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecuritySolutionModel, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + resource_group_name: str, + solution_name: str, + iot_security_solution_data: _models.IoTSecuritySolutionModel, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to create or update yours IoT Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param iot_security_solution_data: The security solution data. Required. + :type iot_security_solution_data: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + solution_name: str, + iot_security_solution_data: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to create or update yours IoT Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param iot_security_solution_data: The security solution data. Required. + :type iot_security_solution_data: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_group_name: str, + solution_name: str, + iot_security_solution_data: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to create or update yours IoT Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param iot_security_solution_data: The security solution data. Required. + :type iot_security_solution_data: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_group_name: str, + solution_name: str, + iot_security_solution_data: Union[_models.IoTSecuritySolutionModel, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to create or update yours IoT Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param iot_security_solution_data: The security solution data. Is one of the following types: + IoTSecuritySolutionModel, JSON, IO[bytes] Required. + :type iot_security_solution_data: ~azure.mgmt.security.models.IoTSecuritySolutionModel or JSON + or IO[bytes] + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.IoTSecuritySolutionModel] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(iot_security_solution_data, (IOBase, bytes)): + _content = iot_security_solution_data + else: + _content = json.dumps(iot_security_solution_data, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_iot_security_solution_create_or_update_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecuritySolutionModel, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def update( + self, + resource_group_name: str, + solution_name: str, + update_iot_security_solution_data: _models.UpdateIotSecuritySolutionData, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to update existing IoT Security solution tags or user defined resources. To + update other fields use the CreateOrUpdate method. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param update_iot_security_solution_data: The security solution data. Required. + :type update_iot_security_solution_data: + ~azure.mgmt.security.models.UpdateIotSecuritySolutionData + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + resource_group_name: str, + solution_name: str, + update_iot_security_solution_data: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to update existing IoT Security solution tags or user defined resources. To + update other fields use the CreateOrUpdate method. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param update_iot_security_solution_data: The security solution data. Required. + :type update_iot_security_solution_data: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + resource_group_name: str, + solution_name: str, + update_iot_security_solution_data: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to update existing IoT Security solution tags or user defined resources. To + update other fields use the CreateOrUpdate method. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param update_iot_security_solution_data: The security solution data. Required. + :type update_iot_security_solution_data: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def update( + self, + resource_group_name: str, + solution_name: str, + update_iot_security_solution_data: Union[_models.UpdateIotSecuritySolutionData, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to update existing IoT Security solution tags or user defined resources. To + update other fields use the CreateOrUpdate method. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param update_iot_security_solution_data: The security solution data. Is one of the following + types: UpdateIotSecuritySolutionData, JSON, IO[bytes] Required. + :type update_iot_security_solution_data: + ~azure.mgmt.security.models.UpdateIotSecuritySolutionData or JSON or IO[bytes] + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.IoTSecuritySolutionModel] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(update_iot_security_solution_data, (IOBase, bytes)): + _content = update_iot_security_solution_data + else: + _content = json.dumps(update_iot_security_solution_data, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_iot_security_solution_update_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecuritySolutionModel, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, resource_group_name: str, solution_name: str, **kwargs: Any) -> None: + """Use this method to delete yours IoT Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_iot_security_solution_delete_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_resource_group( + self, resource_group_name: str, *, filter: Optional[str] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.IoTSecuritySolutionModel"]: + """Use this method to get the list IoT Security solutions organized by resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :keyword filter: Filter the IoT Security solution with OData syntax. Supports filtering by + iotHubs. Default value is None. + :paramtype filter: str + :return: An iterator like instance of IoTSecuritySolutionModel + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.IoTSecuritySolutionModel] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[List[_models.IoTSecuritySolutionModel]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_iot_security_solution_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.IoTSecuritySolutionModel], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_subscription( + self, *, filter: Optional[str] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.IoTSecuritySolutionModel"]: + """Use this method to get the list of IoT Security solutions by subscription. + + :keyword filter: Filter the IoT Security solution with OData syntax. Supports filtering by + iotHubs. Default value is None. + :paramtype filter: str + :return: An iterator like instance of IoTSecuritySolutionModel + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.IoTSecuritySolutionModel] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[List[_models.IoTSecuritySolutionModel]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_iot_security_solution_list_by_subscription_request( + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.IoTSecuritySolutionModel], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class IotSecuritySolutionsAnalyticsAggregatedAlertOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`iot_security_solutions_analytics_aggregated_alert` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, solution_name: str, aggregated_alert_name: str, **kwargs: Any + ) -> _models.IoTSecurityAggregatedAlert: + """Use this method to get a single the aggregated alert of yours IoT Security solution. This + aggregation is performed by alert name. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param aggregated_alert_name: Identifier of the aggregated alert. Required. + :type aggregated_alert_name: str + :return: IoTSecurityAggregatedAlert. The IoTSecurityAggregatedAlert is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecurityAggregatedAlert + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[_models.IoTSecurityAggregatedAlert] = kwargs.pop("cls", None) + + _request = build_iot_security_solutions_analytics_aggregated_alert_get_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + aggregated_alert_name=aggregated_alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecurityAggregatedAlert, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, solution_name: str, *, top: Optional[int] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.IoTSecurityAggregatedAlert"]: + """Use this method to get the aggregated alert list of yours IoT Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :keyword top: Number of results to retrieve. Default value is None. + :paramtype top: int + :return: An iterator like instance of IoTSecurityAggregatedAlert + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.IoTSecurityAggregatedAlert] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[List[_models.IoTSecurityAggregatedAlert]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_iot_security_solutions_analytics_aggregated_alert_list_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + top=top, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.IoTSecurityAggregatedAlert], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + async def dismiss( + self, resource_group_name: str, solution_name: str, aggregated_alert_name: str, **kwargs: Any + ) -> None: + """Use this method to dismiss an aggregated IoT Security Solution Alert. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param aggregated_alert_name: Identifier of the aggregated alert. Required. + :type aggregated_alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_iot_security_solutions_analytics_aggregated_alert_dismiss_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + aggregated_alert_name=aggregated_alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + +class IotSecuritySolutionsAnalyticsRecommendationOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`iot_security_solutions_analytics_recommendation` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, solution_name: str, aggregated_recommendation_name: str, **kwargs: Any + ) -> _models.IoTSecurityAggregatedRecommendation: + """Use this method to get the aggregated security analytics recommendation of yours IoT Security + solution. This aggregation is performed by recommendation name. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param aggregated_recommendation_name: Name of the recommendation aggregated for this query. + Required. + :type aggregated_recommendation_name: str + :return: IoTSecurityAggregatedRecommendation. The IoTSecurityAggregatedRecommendation is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecurityAggregatedRecommendation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[_models.IoTSecurityAggregatedRecommendation] = kwargs.pop("cls", None) + + _request = build_iot_security_solutions_analytics_recommendation_get_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + aggregated_recommendation_name=aggregated_recommendation_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecurityAggregatedRecommendation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, solution_name: str, *, top: Optional[int] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.IoTSecurityAggregatedRecommendation"]: + """Use this method to get the list of aggregated security analytics recommendations of yours IoT + Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :keyword top: Number of results to retrieve. Default value is None. + :paramtype top: int + :return: An iterator like instance of IoTSecurityAggregatedRecommendation + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.IoTSecurityAggregatedRecommendation] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[List[_models.IoTSecurityAggregatedRecommendation]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_iot_security_solutions_analytics_recommendation_list_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + top=top, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.IoTSecurityAggregatedRecommendation], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class LocationsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`locations` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, asc_location: str, **kwargs: Any) -> _models.AscLocation: + """Details of a specific location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: AscLocation. The AscLocation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AscLocation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[_models.AscLocation] = kwargs.pop("cls", None) + + _request = build_locations_get_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AscLocation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.AscLocation"]: + """The location of the responsible ASC of the specific subscription (home region). For each + subscription there is only one responsible location. The location in the response should be + used to read or write other resources in ASC according to their ID. + + :return: An iterator like instance of AscLocation + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AscLocation] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[List[_models.AscLocation]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_locations_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AscLocation], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class OperationResultsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`operation_results` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, location: str, operation_id: str, **kwargs: Any) -> None: + """Returns operation results for long running operations. + + :param location: The name of the Azure region. Required. + :type location: str + :param operation_id: The ID of an ongoing async operation. Required. + :type operation_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_operation_results_get_request( + location=location, + operation_id=operation_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + + if cls: + return cls(pipeline_response, None, response_headers) # type: ignore + + +class OperationStatusesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`operation_statuses` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, location: str, operation_id: str, **kwargs: Any) -> _models.OperationStatusResult: + """Get the status of a long running azure asynchronous operation. + + :param location: The name of the Azure region. Required. + :type location: str + :param operation_id: The ID of an ongoing async operation. Required. + :type operation_id: str + :return: OperationStatusResult. The OperationStatusResult is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.OperationStatusResult + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + cls: ClsType[_models.OperationStatusResult] = kwargs.pop("cls", None) + + _request = build_operation_statuses_get_request( + location=location, + operation_id=operation_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.OperationStatusResult, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class PrivateLinksOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`private_links` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, resource_group_name: str, private_link_name: str, **kwargs: Any) -> _models.PrivateLinkResource: + """Get a private link resource. Returns the configuration and status of private endpoint + connectivity for Microsoft Defender for Cloud services in the specified region. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :return: PrivateLinkResource. The PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateLinkResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) + + _request = build_private_links_get_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.PrivateLinkResource, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def head(self, resource_group_name: str, private_link_name: str, **kwargs: Any) -> bool: + """Checks whether private link exists. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :return: bool + :rtype: bool + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_private_links_head_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + return 200 <= response.status_code <= 299 + + async def _create_initial( + self, + resource_group_name: str, + private_link_name: str, + private_link: Union[_models.PrivateLinkResource, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(private_link, (IOBase, bytes)): + _content = private_link + else: + _content = json.dumps(private_link, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_private_links_create_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_create( + self, + resource_group_name: str, + private_link_name: str, + private_link: _models.PrivateLinkResource, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.PrivateLinkResource]: + """Create a private link resource. This operation creates the necessary infrastructure to enable + private endpoint connections to Microsoft Defender for Cloud services. For updates to existing + resources, use the PATCH operation. The operation is asynchronous and may take several minutes + to complete. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: Private link request payload containing the resource information for + create operations. Required. + :type private_link: ~azure.mgmt.security.models.PrivateLinkResource + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns PrivateLinkResource. The + PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateLinkResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create( + self, + resource_group_name: str, + private_link_name: str, + private_link: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.PrivateLinkResource]: + """Create a private link resource. This operation creates the necessary infrastructure to enable + private endpoint connections to Microsoft Defender for Cloud services. For updates to existing + resources, use the PATCH operation. The operation is asynchronous and may take several minutes + to complete. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: Private link request payload containing the resource information for + create operations. Required. + :type private_link: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns PrivateLinkResource. The + PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateLinkResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create( + self, + resource_group_name: str, + private_link_name: str, + private_link: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.PrivateLinkResource]: + """Create a private link resource. This operation creates the necessary infrastructure to enable + private endpoint connections to Microsoft Defender for Cloud services. For updates to existing + resources, use the PATCH operation. The operation is asynchronous and may take several minutes + to complete. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: Private link request payload containing the resource information for + create operations. Required. + :type private_link: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns PrivateLinkResource. The + PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateLinkResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_create( + self, + resource_group_name: str, + private_link_name: str, + private_link: Union[_models.PrivateLinkResource, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.PrivateLinkResource]: + """Create a private link resource. This operation creates the necessary infrastructure to enable + private endpoint connections to Microsoft Defender for Cloud services. For updates to existing + resources, use the PATCH operation. The operation is asynchronous and may take several minutes + to complete. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: Private link request payload containing the resource information for + create operations. Is one of the following types: PrivateLinkResource, JSON, IO[bytes] + Required. + :type private_link: ~azure.mgmt.security.models.PrivateLinkResource or JSON or IO[bytes] + :return: An instance of AsyncLROPoller that returns PrivateLinkResource. The + PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateLinkResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._create_initial( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + private_link=private_link, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.PrivateLinkResource, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.PrivateLinkResource].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.PrivateLinkResource]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @overload + async def update( + self, + resource_group_name: str, + private_link_name: str, + private_link: _models.PrivateLinkUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.PrivateLinkResource: + """Update specific properties of a private link resource. Use this operation to update mutable + properties like tags without affecting the entire resource configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: private link update payload containing only the properties to be updated. + Required. + :type private_link: ~azure.mgmt.security.models.PrivateLinkUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: PrivateLinkResource. The PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateLinkResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + resource_group_name: str, + private_link_name: str, + private_link: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.PrivateLinkResource: + """Update specific properties of a private link resource. Use this operation to update mutable + properties like tags without affecting the entire resource configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: private link update payload containing only the properties to be updated. + Required. + :type private_link: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: PrivateLinkResource. The PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateLinkResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def update( + self, + resource_group_name: str, + private_link_name: str, + private_link: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.PrivateLinkResource: + """Update specific properties of a private link resource. Use this operation to update mutable + properties like tags without affecting the entire resource configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: private link update payload containing only the properties to be updated. + Required. + :type private_link: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: PrivateLinkResource. The PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateLinkResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def update( + self, + resource_group_name: str, + private_link_name: str, + private_link: Union[_models.PrivateLinkUpdate, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.PrivateLinkResource: + """Update specific properties of a private link resource. Use this operation to update mutable + properties like tags without affecting the entire resource configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: private link update payload containing only the properties to be updated. + Is one of the following types: PrivateLinkUpdate, JSON, IO[bytes] Required. + :type private_link: ~azure.mgmt.security.models.PrivateLinkUpdate or JSON or IO[bytes] + :return: PrivateLinkResource. The PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateLinkResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(private_link, (IOBase, bytes)): + _content = private_link + else: + _content = json.dumps(private_link, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_private_links_update_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.PrivateLinkResource, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + async def _delete_initial( + self, resource_group_name: str, private_link_name: str, **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + _request = build_private_links_delete_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202, 204]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def begin_delete( + self, resource_group_name: str, private_link_name: str, **kwargs: Any + ) -> AsyncLROPoller[None]: + """Delete a private link resource. This operation will remove the private link infrastructure and + disconnect all associated private endpoints. This operation is asynchronous and may take + several minutes to complete. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._delete_initial( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def list(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.PrivateLinkResource"]: + """Lists all the private links in the specified resource group. private links enable secure, + private connectivity to Microsoft Defender for Cloud services without exposing traffic to the + public internet. Use the 'nextLink' property in the response to get the next page of private + links for the specified resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of PrivateLinkResource + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.PrivateLinkResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[List[_models.PrivateLinkResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_private_links_list_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.PrivateLinkResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.PrivateLinkResource"]: + """Lists all the private links in the specified subscription. private links enable secure, private + connectivity to Microsoft Defender for Cloud services without exposing traffic to the public + internet. Use the 'nextLink' property in the response to get the next page of private links for + the specified subscription. + + :return: An iterator like instance of PrivateLinkResource + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.PrivateLinkResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[List[_models.PrivateLinkResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_private_links_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.PrivateLinkResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SecureScoresOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`secure_scores` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, secure_score_name: str, **kwargs: Any) -> _models.SecureScoreItem: + """Get secure score for a specific Microsoft Defender for Cloud initiative within your current + scope. For the ASC Default initiative, use 'ascScore'. + + :param secure_score_name: The initiative name. For the ASC Default initiative, use 'ascScore' + as in the sample request below. Required. + :type secure_score_name: str + :return: SecureScoreItem. The SecureScoreItem is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecureScoreItem + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.SecureScoreItem] = kwargs.pop("cls", None) + + _request = build_secure_scores_get_request( + secure_score_name=secure_score_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecureScoreItem, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecureScoreItem"]: + """List secure scores for all your Microsoft Defender for Cloud initiatives within your current + scope. + + :return: An iterator like instance of SecureScoreItem + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecureScoreItem] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.SecureScoreItem]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_secure_scores_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecureScoreItem], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SecureScoreControlsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`secure_score_controls` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list_by_secure_score( + self, secure_score_name: str, *, expand: Optional[Union[str, _models.ExpandControlsEnum]] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.SecureScoreControlDetails"]: + """Get all security controls for a specific initiative within a scope. + + :param secure_score_name: The initiative name. For the ASC Default initiative, use 'ascScore' + as in the sample request below. Required. + :type secure_score_name: str + :keyword expand: OData expand. Optional. "definition" Default value is None. + :paramtype expand: str or ~azure.mgmt.security.models.ExpandControlsEnum + :return: An iterator like instance of SecureScoreControlDetails + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecureScoreControlDetails] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.SecureScoreControlDetails]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_secure_score_controls_list_by_secure_score_request( + secure_score_name=secure_score_name, + subscription_id=self._config.subscription_id, + expand=expand, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecureScoreControlDetails], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list( + self, *, expand: Optional[Union[str, _models.ExpandControlsEnum]] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.SecureScoreControlDetails"]: + """Get all security controls within a scope. + + :keyword expand: OData expand. Optional. "definition" Default value is None. + :paramtype expand: str or ~azure.mgmt.security.models.ExpandControlsEnum + :return: An iterator like instance of SecureScoreControlDetails + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecureScoreControlDetails] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.SecureScoreControlDetails]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_secure_score_controls_list_request( + subscription_id=self._config.subscription_id, + expand=expand, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecureScoreControlDetails], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SecureScoreControlDefinitionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`secure_score_control_definitions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecureScoreControlDefinitionItem"]: + """List the available security controls, their assessments, and the max score. + + :return: An iterator like instance of SecureScoreControlDefinitionItem + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecureScoreControlDefinitionItem] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.SecureScoreControlDefinitionItem]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_secure_score_control_definitions_list_request( + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecureScoreControlDefinitionItem], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.SecureScoreControlDefinitionItem"]: + """For a specified subscription, list the available security controls, their assessments, and the + max score. + + :return: An iterator like instance of SecureScoreControlDefinitionItem + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecureScoreControlDefinitionItem] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.SecureScoreControlDefinitionItem]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_secure_score_control_definitions_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecureScoreControlDefinitionItem], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class GitLabSubgroupsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`git_lab_subgroups` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def list( + self, resource_group_name: str, security_connector_name: str, group_fq_name: str, **kwargs: Any + ) -> _models.GitLabGroupListResponse: + """Gets nested subgroups of given GitLab Group which are onboarded to the connector. + + Gets nested subgroups of given GitLab Group which are onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param group_fq_name: Required. + :type group_fq_name: str + :return: GitLabGroupListResponse. The GitLabGroupListResponse is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitLabGroupListResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) + + _request = build_git_lab_subgroups_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + group_fq_name=group_fq_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitLabGroupListResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class DevOpsOperationResultsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`dev_ops_operation_results` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, security_connector_name: str, operation_result_id: str, **kwargs: Any + ) -> _models.OperationStatusResult: + """Get devops long running operation result. + + Get devops long running operation result. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param operation_result_id: Required. + :type operation_result_id: str + :return: OperationStatusResult. The OperationStatusResult is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.OperationStatusResult + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.OperationStatusResult] = kwargs.pop("cls", None) + + _request = build_dev_ops_operation_results_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + operation_result_id=operation_result_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.OperationStatusResult, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class AzureDevOpsReposOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`azure_dev_ops_repos` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + **kwargs: Any + ) -> _models.AzureDevOpsRepository: + """Returns a monitored Azure DevOps repository resource. + + Returns a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :return: AzureDevOpsRepository. The AzureDevOpsRepository is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AzureDevOpsRepository + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) + + _request = build_azure_dev_ops_repos_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + repo_name=repo_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AzureDevOpsRepository, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + async def _create_or_update_initial( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(azure_dev_ops_repository, (IOBase, bytes)): + _content = azure_dev_ops_repository + else: + _content = json.dumps(azure_dev_ops_repository, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_azure_dev_ops_repos_create_or_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + repo_name=repo_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: _models.AzureDevOpsRepository, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: + """Creates or updates a monitored Azure DevOps repository resource. + + Creates or updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. + :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsRepository. The + AzureDevOpsRepository is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: + """Creates or updates a monitored Azure DevOps repository resource. + + Creates or updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. + :type azure_dev_ops_repository: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsRepository. The + AzureDevOpsRepository is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: + """Creates or updates a monitored Azure DevOps repository resource. + + Creates or updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. + :type azure_dev_ops_repository: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsRepository. The + AzureDevOpsRepository is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: + """Creates or updates a monitored Azure DevOps repository resource. + + Creates or updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Is one of the + following types: AzureDevOpsRepository, JSON, IO[bytes] Required. + :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository or JSON or + IO[bytes] + :return: An instance of AsyncLROPoller that returns AzureDevOpsRepository. The + AzureDevOpsRepository is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._create_or_update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + repo_name=repo_name, + azure_dev_ops_repository=azure_dev_ops_repository, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AzureDevOpsRepository, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.AzureDevOpsRepository].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.AzureDevOpsRepository]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + async def _update_initial( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(azure_dev_ops_repository, (IOBase, bytes)): + _content = azure_dev_ops_repository + else: + _content = json.dumps(azure_dev_ops_repository, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_azure_dev_ops_repos_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + repo_name=repo_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: _models.AzureDevOpsRepository, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: + """Updates a monitored Azure DevOps repository resource. + + Updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. + :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsRepository. The + AzureDevOpsRepository is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: + """Updates a monitored Azure DevOps repository resource. + + Updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. + :type azure_dev_ops_repository: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsRepository. The + AzureDevOpsRepository is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: + """Updates a monitored Azure DevOps repository resource. + + Updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. + :type azure_dev_ops_repository: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AzureDevOpsRepository. The + AzureDevOpsRepository is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, JSON, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.AzureDevOpsRepository]: + """Updates a monitored Azure DevOps repository resource. + + Updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Is one of the + following types: AzureDevOpsRepository, JSON, IO[bytes] Required. + :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository or JSON or + IO[bytes] + :return: An instance of AsyncLROPoller that returns AzureDevOpsRepository. The + AzureDevOpsRepository is compatible with MutableMapping + :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + repo_name=repo_name, + azure_dev_ops_repository=azure_dev_ops_repository, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AzureDevOpsRepository, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.AzureDevOpsRepository].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.AzureDevOpsRepository]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, org_name: str, project_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.AzureDevOpsRepository"]: + """Returns a list of Azure DevOps repositories onboarded to the connector. + + Returns a list of Azure DevOps repositories onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :return: An iterator like instance of AzureDevOpsRepository + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.AzureDevOpsRepository]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_azure_dev_ops_repos_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AzureDevOpsRepository], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class GitHubReposOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`git_hub_repos` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, security_connector_name: str, owner_name: str, repo_name: str, **kwargs: Any + ) -> _models.GitHubRepository: + """Returns a monitored GitHub repository. + + Returns a monitored GitHub repository. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :param repo_name: Required. + :type repo_name: str + :return: GitHubRepository. The GitHubRepository is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitHubRepository + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitHubRepository] = kwargs.pop("cls", None) + + _request = build_git_hub_repos_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + repo_name=repo_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitHubRepository, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, owner_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.GitHubRepository"]: + """Returns a list of GitHub repositories onboarded to the connector. + + Returns a list of GitHub repositories onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :return: An iterator like instance of GitHubRepository + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GitHubRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.GitHubRepository]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_git_hub_repos_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GitHubRepository], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class GitHubIssuesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`git_hub_issues` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + async def _create_initial( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[Union[_models.IssueCreationRequest, JSON, IO[bytes]]] = None, + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if create_issue_request else None + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if create_issue_request else None + _content = None + if isinstance(create_issue_request, (IOBase, bytes)): + _content = create_issue_request + else: + if create_issue_request is not None: + _content = json.dumps(create_issue_request, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + else: + _content = None + + _request = build_git_hub_issues_create_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + repo_name=repo_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[_models.IssueCreationRequest] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :param repo_name: Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Default value is None. + :type create_issue_request: ~azure.mgmt.security.models.IssueCreationRequest + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[JSON] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :param repo_name: Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Default value is None. + :type create_issue_request: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[IO[bytes]] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :param repo_name: Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Default value is None. + :type create_issue_request: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[Union[_models.IssueCreationRequest, JSON, IO[bytes]]] = None, + **kwargs: Any + ) -> AsyncLROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :param repo_name: Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Is one of the following types: IssueCreationRequest, JSON, IO[bytes] Default value is + None. + :type create_issue_request: ~azure.mgmt.security.models.IssueCreationRequest or JSON or + IO[bytes] + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if create_issue_request else None + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._create_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + repo_name=repo_name, + create_issue_request=create_issue_request, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + +class AllowedConnectionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`allowed_connections` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, + resource_group_name: str, + asc_location: str, + connection_type: Union[str, _models.ConnectionType], + **kwargs: Any + ) -> _models.AllowedConnectionsResource: + """Gets the list of all possible traffic between resources for the subscription and location, + based on connection type. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param connection_type: The type of allowed connections (Internal, External). Known values are: + "Internal" and "External". Required. + :type connection_type: str or ~azure.mgmt.security.models.ConnectionType + :return: AllowedConnectionsResource. The AllowedConnectionsResource is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.AllowedConnectionsResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.AllowedConnectionsResource] = kwargs.pop("cls", None) + + _request = build_allowed_connections_get_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + connection_type=connection_type, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AllowedConnectionsResource, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_home_region( + self, asc_location: str, **kwargs: Any + ) -> AsyncItemPaged["_models.AllowedConnectionsResource"]: + """Gets the list of all possible traffic between resources for the subscription and location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of AllowedConnectionsResource + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AllowedConnectionsResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.AllowedConnectionsResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_allowed_connections_list_by_home_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AllowedConnectionsResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.AllowedConnectionsResource"]: + """Gets the list of all possible traffic between resources for the subscription. + + :return: An iterator like instance of AllowedConnectionsResource + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.AllowedConnectionsResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.AllowedConnectionsResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_allowed_connections_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AllowedConnectionsResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class ServerVulnerabilityAssessmentOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`server_vulnerability_assessment` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any + ) -> _models.ServerVulnerabilityAssessment: + """Gets a server vulnerability assessment onboarding statuses on a given resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_namespace: The parent resource provider namespace. Required. + :type resource_namespace: str + :param resource_type: The type of the resource. Required. + :type resource_type: str + :param resource_name: The name of the resource. Required. + :type resource_name: str + :return: ServerVulnerabilityAssessment. The ServerVulnerabilityAssessment is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") + cls: ClsType[_models.ServerVulnerabilityAssessment] = kwargs.pop("cls", None) + + _request = build_server_vulnerability_assessment_get_request( + resource_group_name=resource_group_name, + resource_namespace=resource_namespace, + resource_type=resource_type, + resource_name=resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + server_vulnerability_assessment=server_vulnerability_assessment, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ServerVulnerabilityAssessment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def create_or_update( + self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any + ) -> _models.ServerVulnerabilityAssessment: + """Creating a server vulnerability assessment on a resource, which will onboard a resource for + having a vulnerability assessment on it. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_namespace: The parent resource provider namespace. Required. + :type resource_namespace: str + :param resource_type: The type of the resource. Required. + :type resource_type: str + :param resource_name: The name of the resource. Required. + :type resource_name: str + :return: ServerVulnerabilityAssessment. The ServerVulnerabilityAssessment is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") + cls: ClsType[_models.ServerVulnerabilityAssessment] = kwargs.pop("cls", None) + + _request = build_server_vulnerability_assessment_create_or_update_request( + resource_group_name=resource_group_name, + resource_namespace=resource_namespace, + resource_type=resource_type, + resource_name=resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + server_vulnerability_assessment=server_vulnerability_assessment, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ServerVulnerabilityAssessment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + async def _delete_initial( + self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + _request = build_server_vulnerability_assessment_delete_request( + resource_group_name=resource_group_name, + resource_namespace=resource_namespace, + resource_type=resource_type, + resource_name=resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + server_vulnerability_assessment=server_vulnerability_assessment, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202, 204]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def begin_delete( + self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any + ) -> AsyncLROPoller[None]: + """Removing server vulnerability assessment from a resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_namespace: The parent resource provider namespace. Required. + :type resource_namespace: str + :param resource_type: The type of the resource. Required. + :type resource_type: str + :param resource_name: The name of the resource. Required. + :type resource_name: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._delete_initial( + resource_group_name=resource_group_name, + resource_namespace=resource_namespace, + resource_type=resource_type, + resource_name=resource_name, + api_version=api_version, + server_vulnerability_assessment=server_vulnerability_assessment, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def list_by_extended_resource( + self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.ServerVulnerabilityAssessment"]: + """Gets a list of server vulnerability assessment onboarding statuses on a given resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_namespace: The parent resource provider namespace. Required. + :type resource_namespace: str + :param resource_type: The type of the resource. Required. + :type resource_type: str + :param resource_name: The name of the resource. Required. + :type resource_name: str + :return: An iterator like instance of ServerVulnerabilityAssessment + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ServerVulnerabilityAssessment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.ServerVulnerabilityAssessment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_server_vulnerability_assessment_list_by_extended_resource_request( + resource_group_name=resource_group_name, + resource_namespace=resource_namespace, + resource_type=resource_type, + resource_name=resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ServerVulnerabilityAssessment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class TopologyOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`topology` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, resource_group_name: str, asc_location: str, topology_resource_name: str, **kwargs: Any + ) -> _models.TopologyResource: + """Gets a specific topology component. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param topology_resource_name: Name of a topology resources collection. Required. + :type topology_resource_name: str + :return: TopologyResource. The TopologyResource is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.TopologyResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.TopologyResource] = kwargs.pop("cls", None) + + _request = build_topology_get_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + topology_resource_name=topology_resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.TopologyResource, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_home_region(self, asc_location: str, **kwargs: Any) -> AsyncItemPaged["_models.TopologyResource"]: + """Gets a list that allows to build a topology view of a subscription and location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of TopologyResource + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.TopologyResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.TopologyResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_topology_list_by_home_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.TopologyResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.TopologyResource"]: + """Gets a list that allows to build a topology view of a subscription. + + :return: An iterator like instance of TopologyResource + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.TopologyResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.TopologyResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_topology_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.TopologyResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SecuritySolutionsReferenceDataOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`security_solutions_reference_data` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def list(self, **kwargs: Any) -> _models.SecuritySolutionsReferenceDataList: + """Gets a list of all supported Security Solutions for the subscription. + + :return: SecuritySolutionsReferenceDataList. The SecuritySolutionsReferenceDataList is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecuritySolutionsReferenceDataList + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.SecuritySolutionsReferenceDataList] = kwargs.pop("cls", None) + + _request = build_security_solutions_reference_data_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecuritySolutionsReferenceDataList, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def list_by_home_region(self, asc_location: str, **kwargs: Any) -> _models.SecuritySolutionsReferenceDataList: + """Gets list of all supported Security Solutions for subscription and location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: SecuritySolutionsReferenceDataList. The SecuritySolutionsReferenceDataList is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecuritySolutionsReferenceDataList + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.SecuritySolutionsReferenceDataList] = kwargs.pop("cls", None) + + _request = build_security_solutions_reference_data_list_by_home_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecuritySolutionsReferenceDataList, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class SensitivitySettingsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`sensitivity_settings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, **kwargs: Any) -> _models.GetSensitivitySettingsResponse: + """Gets data sensitivity settings for sensitive data discovery. + + :return: GetSensitivitySettingsResponse. The GetSensitivitySettingsResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) + cls: ClsType[_models.GetSensitivitySettingsResponse] = kwargs.pop("cls", None) + + _request = build_sensitivity_settings_get_request( + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GetSensitivitySettingsResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + sensitivity_settings: _models.UpdateSensitivitySettingsRequest, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.GetSensitivitySettingsResponse: + """Create or update data sensitivity settings for sensitive data discovery. + + :param sensitivity_settings: The data sensitivity settings to update. Required. + :type sensitivity_settings: ~azure.mgmt.security.models.UpdateSensitivitySettingsRequest + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: GetSensitivitySettingsResponse. The GetSensitivitySettingsResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, sensitivity_settings: JSON, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.GetSensitivitySettingsResponse: + """Create or update data sensitivity settings for sensitive data discovery. + + :param sensitivity_settings: The data sensitivity settings to update. Required. + :type sensitivity_settings: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: GetSensitivitySettingsResponse. The GetSensitivitySettingsResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, sensitivity_settings: IO[bytes], *, content_type: str = "application/json", **kwargs: Any + ) -> _models.GetSensitivitySettingsResponse: + """Create or update data sensitivity settings for sensitive data discovery. + + :param sensitivity_settings: The data sensitivity settings to update. Required. + :type sensitivity_settings: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: GetSensitivitySettingsResponse. The GetSensitivitySettingsResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, sensitivity_settings: Union[_models.UpdateSensitivitySettingsRequest, JSON, IO[bytes]], **kwargs: Any + ) -> _models.GetSensitivitySettingsResponse: + """Create or update data sensitivity settings for sensitive data discovery. + + :param sensitivity_settings: The data sensitivity settings to update. Is one of the following + types: UpdateSensitivitySettingsRequest, JSON, IO[bytes] Required. + :type sensitivity_settings: ~azure.mgmt.security.models.UpdateSensitivitySettingsRequest or + JSON or IO[bytes] + :return: GetSensitivitySettingsResponse. The GetSensitivitySettingsResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.GetSensitivitySettingsResponse] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(sensitivity_settings, (IOBase, bytes)): + _content = sensitivity_settings + else: + _content = json.dumps(sensitivity_settings, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_sensitivity_settings_create_or_update_request( + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GetSensitivitySettingsResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.GetSensitivitySettingsResponse"]: + """Gets a list with a single sensitivity settings resource. + + :return: An iterator like instance of GetSensitivitySettingsResponse + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.GetSensitivitySettingsResponse] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) + cls: ClsType[List[_models.GetSensitivitySettingsResponse]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_sensitivity_settings_list_request( + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GetSensitivitySettingsResponse], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SqlVulnerabilityAssessmentSettingsOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`sql_vulnerability_assessment_settings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get(self, resource_id: str, **kwargs: Any) -> _models.SqlVulnerabilityAssessmentSettings: + """Gets the SQL Vulnerability Assessment settings. + + Gets the SQL Vulnerability Assessment settings. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :return: SqlVulnerabilityAssessmentSettings. The SqlVulnerabilityAssessmentSettings is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.SqlVulnerabilityAssessmentSettings] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_settings_get_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SqlVulnerabilityAssessmentSettings, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + async def create_or_update( + self, + resource_id: str, + body: Optional[_models.SqlVulnerabilityAssessmentSettings] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Default value is None. + :type body: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SqlVulnerabilityAssessmentSettings. The SqlVulnerabilityAssessmentSettings is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, resource_id: str, body: Optional[JSON] = None, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Default value is None. + :type body: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SqlVulnerabilityAssessmentSettings. The SqlVulnerabilityAssessmentSettings is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def create_or_update( + self, + resource_id: str, + body: Optional[IO[bytes]] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Default value is None. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SqlVulnerabilityAssessmentSettings. The SqlVulnerabilityAssessmentSettings is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + async def create_or_update( + self, + resource_id: str, + body: Optional[Union[_models.SqlVulnerabilityAssessmentSettings, JSON, IO[bytes]]] = None, + **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Is one of the following types: + SqlVulnerabilityAssessmentSettings, JSON, IO[bytes] Default value is None. + :type body: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings or JSON or IO[bytes] + :return: SqlVulnerabilityAssessmentSettings. The SqlVulnerabilityAssessmentSettings is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if body else None + cls: ClsType[_models.SqlVulnerabilityAssessmentSettings] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if body else None + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + if body is not None: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + else: + _content = None + + _request = build_sql_vulnerability_assessment_settings_create_or_update_request( + resource_id=resource_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SqlVulnerabilityAssessmentSettings, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def delete(self, resource_id: str, **kwargs: Any) -> None: + """Deletes the SQL Vulnerability Assessment settings. + + Deletes the SQL Vulnerability Assessment settings. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_settings_delete_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + +class SqlVulnerabilityAssessmentScansOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`sql_vulnerability_assessment_scans` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + async def _initiate_scan_initial( + self, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_scans_initiate_scan_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def begin_initiate_scan( + self, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> AsyncLROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult]: + """Initiates a vulnerability assessment scan. + + Initiates a vulnerability assessment scan. + + :param resource_id: Required. + :type resource_id: str + :keyword database_name: Default value is None. + :paramtype database_name: str + :return: An instance of AsyncLROPoller that returns + SqlVulnerabilityAssessmentScanOperationResult. The + SqlVulnerabilityAssessmentScanOperationResult is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.SqlVulnerabilityAssessmentScanOperationResult] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._initiate_scan_initial( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response_headers = {} + response = pipeline_response.http_response + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = _deserialize(_models.SqlVulnerabilityAssessmentScanOperationResult, response.json()) + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace_async + async def get_scan_operation_result( + self, resource_id: str, operation_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentScanOperationResult: + """Gets the result of a scan operation initiated by the InitiateScan action. + + Gets the result of a scan operation initiated by the InitiateScan action. + + :param resource_id: Required. + :type resource_id: str + :param operation_id: Required. + :type operation_id: str + :keyword database_name: Default value is None. + :paramtype database_name: str + :return: SqlVulnerabilityAssessmentScanOperationResult. The + SqlVulnerabilityAssessmentScanOperationResult is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.SqlVulnerabilityAssessmentScanOperationResult] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_scans_get_scan_operation_result_request( + resource_id=resource_id, + operation_id=operation_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SqlVulnerabilityAssessmentScanOperationResult, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + async def get(self, scan_id: str, resource_id: str, *, database_name: str, **kwargs: Any) -> _models.ScanV2: + """Gets the scan details of a single scan record. + + Gets the scan details of a single scan record. + + :param scan_id: The scan Id. Type 'latest' to get the scan record for the latest scan. + Required. + :type scan_id: str + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Required. + :paramtype database_name: str + :return: ScanV2. The ScanV2 is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ScanV2 + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.ScanV2] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_scans_get_request( + scan_id=scan_id, + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ScanV2, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> AsyncItemPaged["_models.ScanV2"]: + """Gets a list of scan records. + + Gets a list of scan records. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :return: An iterator like instance of ScanV2 + :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ScanV2] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[List[_models.ScanV2]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_sql_vulnerability_assessment_scans_list_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ScanV2], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class SubAssessmentsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.aio.SecurityManagementClient`'s + :attr:`sub_assessments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + async def get( + self, scope: str, assessment_name: str, sub_assessment_name: str, **kwargs: Any + ) -> _models.SecuritySubAssessment: + """Get a security sub-assessment on your scanned resource. + + :param scope: The scope of the sub-assessment. Required. + :type scope: str + :param assessment_name: The security assessment key - unique key for the assessment type. + Required. + :type assessment_name: str + :param sub_assessment_name: The Sub-Assessment Key - Unique key for the sub-assessment type. + Required. + :type sub_assessment_name: str + :return: SecuritySubAssessment. The SecuritySubAssessment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecuritySubAssessment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[_models.SecuritySubAssessment] = kwargs.pop("cls", None) + + _request = build_sub_assessments_get_request( + scope=scope, + assessment_name=assessment_name, + sub_assessment_name=sub_assessment_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecuritySubAssessment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, scope: str, assessment_name: str, **kwargs: Any) -> AsyncItemPaged["_models.SecuritySubAssessment"]: + """Get security sub-assessments on all your scanned resources inside a scope. + + :param scope: The scope of the sub-assessment. Required. + :type scope: str + :param assessment_name: The security assessment key - unique key for the assessment type. + Required. + :type assessment_name: str + :return: An iterator like instance of SecuritySubAssessment + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecuritySubAssessment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[List[_models.SecuritySubAssessment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_sub_assessments_list_request( + scope=scope, + assessment_name=assessment_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecuritySubAssessment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace + def list_all(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.SecuritySubAssessment"]: + """Get security sub-assessments on all your scanned resources inside a subscription scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of SecuritySubAssessment + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecuritySubAssessment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[List[_models.SecuritySubAssessment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_sub_assessments_list_all_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecuritySubAssessment], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) async def get_next(next_link=None): _request = prepare_request(next_link) @@ -109,9 +28510,9 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, + error = _failsafe_deserialize( + _models.CloudError, + response, ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_patch.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_patch.py index 8bcb627aa475..87676c65a8f0 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_patch.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_patch.py @@ -7,9 +7,9 @@ Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize """ -from typing import List -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level + +__all__: list[str] = [] # Add all objects you want publicly available to users at this package level def patch_sdk(): diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_pricings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_pricings_operations.py deleted file mode 100644 index 5158618fd491..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_pricings_operations.py +++ /dev/null @@ -1,384 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._pricings_operations import ( - build_delete_request, - build_get_request, - build_list_request, - build_update_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class PricingsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`pricings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get(self, scope_id: str, pricing_name: str, **kwargs: Any) -> _models.Pricing: - """Get the Defender plans pricing configurations of the selected scope (valid scopes are resource - id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, - VMSS and ARC Machines'. - - :param scope_id: The scope id of the pricing. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or a specific resource (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}) - - Supported resources are (VirtualMachines). Required. - :type scope_id: str - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :return: Pricing or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Pricing - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) - cls: ClsType[_models.Pricing] = kwargs.pop("cls", None) - - _request = build_get_request( - scope_id=scope_id, - pricing_name=pricing_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated18, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Pricing", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - scope_id: str, - pricing_name: str, - pricing: _models.Pricing, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Pricing: - """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid - scopes are: subscription id or a specific resource id (Supported resources are: - 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - - :param scope_id: The scope id of the pricing. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or a specific resource (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}) - - Supported resources are (VirtualMachines). Required. - :type scope_id: str - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :param pricing: Pricing object. Required. - :type pricing: ~azure.mgmt.security.models.Pricing - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Pricing or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Pricing - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - scope_id: str, - pricing_name: str, - pricing: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Pricing: - """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid - scopes are: subscription id or a specific resource id (Supported resources are: - 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - - :param scope_id: The scope id of the pricing. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or a specific resource (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}) - - Supported resources are (VirtualMachines). Required. - :type scope_id: str - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :param pricing: Pricing object. Required. - :type pricing: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Pricing or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Pricing - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, scope_id: str, pricing_name: str, pricing: Union[_models.Pricing, IO[bytes]], **kwargs: Any - ) -> _models.Pricing: - """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid - scopes are: subscription id or a specific resource id (Supported resources are: - 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - - :param scope_id: The scope id of the pricing. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or a specific resource (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}) - - Supported resources are (VirtualMachines). Required. - :type scope_id: str - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :param pricing: Pricing object. Is either a Pricing type or a IO[bytes] type. Required. - :type pricing: ~azure.mgmt.security.models.Pricing or IO[bytes] - :return: Pricing or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Pricing - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Pricing] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(pricing, (IOBase, bytes)): - _content = pricing - else: - _json = self._serialize.body(pricing, "Pricing") - - _request = build_update_request( - scope_id=scope_id, - pricing_name=pricing_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated18, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Pricing", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, scope_id: str, pricing_name: str, **kwargs: Any) -> None: - """Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. - Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS, ARC Machines, - and Containers'). - - :param scope_id: The identifier of the resource, (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}). - Required. - :type scope_id: str - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - scope_id=scope_id, - pricing_name=pricing_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated18, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def list(self, scope_id: str, filter: Optional[str] = None, **kwargs: Any) -> _models.PricingList: - """Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the - optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported - resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in - ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be - returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes - the pricings set for 'planName1' and 'planName2' only. - - :param scope_id: The scope id of the pricing. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or a specific resource (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}) - - Supported resources are (VirtualMachines). Required. - :type scope_id: str - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: PricingList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PricingList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) - cls: ClsType[_models.PricingList] = kwargs.pop("cls", None) - - _request = build_list_request( - scope_id=scope_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated18, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PricingList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_endpoint_connections_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index dd66a16461f8..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,582 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._private_endpoint_connections_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, private_link_parameters: _models.PrivateLinkParameters, **kwargs: Any - ) -> AsyncItemPaged["_models.PrivateEndpointConnection"]: - """Gets all private endpoint connections for a private link. Returns the list of private endpoints - that are connected or in the process of connecting to this private link. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_list_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets the specified private endpoint connection associated with the private link. Returns the - connection details, status, and configuration for a specific private endpoint. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_endpoint_connection_name: The name of the private endpoint connection associated - with the Azure resource. Required. - :type private_endpoint_connection_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_get_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _create_or_update_initial( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_endpoint_connection: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(private_endpoint_connection, (IOBase, bytes)): - _content = private_endpoint_connection - else: - _json = self._serialize.body(private_endpoint_connection, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_endpoint_connection: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.PrivateEndpointConnection]: - """Update the state of specified private endpoint connection associated with the private link. - This operation is typically used to approve or reject pending private endpoint connections. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_endpoint_connection_name: The name of the private endpoint connection associated - with the Azure resource. Required. - :type private_endpoint_connection_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_endpoint_connection: The private endpoint connection resource. Required. - :type private_endpoint_connection: ~azure.mgmt.security.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either PrivateEndpointConnection or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_endpoint_connection: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.PrivateEndpointConnection]: - """Update the state of specified private endpoint connection associated with the private link. - This operation is typically used to approve or reject pending private endpoint connections. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_endpoint_connection_name: The name of the private endpoint connection associated - with the Azure resource. Required. - :type private_endpoint_connection_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_endpoint_connection: The private endpoint connection resource. Required. - :type private_endpoint_connection: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either PrivateEndpointConnection or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_endpoint_connection: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.PrivateEndpointConnection]: - """Update the state of specified private endpoint connection associated with the private link. - This operation is typically used to approve or reject pending private endpoint connections. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_endpoint_connection_name: The name of the private endpoint connection associated - with the Azure resource. Required. - :type private_endpoint_connection_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_endpoint_connection: The private endpoint connection resource. Is either a - PrivateEndpointConnection type or a IO[bytes] type. Required. - :type private_endpoint_connection: ~azure.mgmt.security.models.PrivateEndpointConnection or - IO[bytes] - :return: An instance of AsyncLROPoller that returns either PrivateEndpointConnection or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - private_endpoint_connection_name=private_endpoint_connection_name, - private_link_parameters=private_link_parameters, - private_endpoint_connection=private_endpoint_connection, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.PrivateEndpointConnection].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.PrivateEndpointConnection]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _delete_initial( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_delete_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - **kwargs: Any - ) -> AsyncLROPoller[None]: - """Deletes the specified private endpoint connection associated with the private link. This - operation will disconnect the private endpoint and remove the connection configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_endpoint_connection_name: The name of the private endpoint connection associated - with the Azure resource. Required. - :type private_endpoint_connection_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - private_endpoint_connection_name=private_endpoint_connection_name, - private_link_parameters=private_link_parameters, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_link_resources_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_link_resources_operations.py deleted file mode 100644 index 3ec270ce397c..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,208 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._private_link_resources_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, private_link_parameters: _models.PrivateLinkParameters, **kwargs: Any - ) -> AsyncItemPaged["_models.PrivateLinkResourceAutoGenerated"]: - """List all private link resources in a private link. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: An iterator like instance of either PrivateLinkResourceAutoGenerated or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.PrivateLinkResourceAutoGenerated] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateLinkResourceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_list_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateLinkResourceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - group_id: str, - private_link_parameters: _models.PrivateLinkParameters, - **kwargs: Any - ) -> _models.PrivateLinkResourceAutoGenerated: - """Get the specified private link resource associated with the private link. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param group_id: The group ID of the private link resource. Required. - :type group_id: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: PrivateLinkResourceAutoGenerated or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PrivateLinkResourceAutoGenerated - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateLinkResourceAutoGenerated] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_get_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - group_id=group_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourceAutoGenerated", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_links_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_links_operations.py deleted file mode 100644 index 6eae5ff621e3..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_private_links_operations.py +++ /dev/null @@ -1,822 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._private_links_operations import ( - build_create_request, - build_delete_request, - build_get_request, - build_head_request, - build_list_by_subscription_request, - build_list_request, - build_update_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class PrivateLinksOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`private_links` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.PrivateLinkResource"]: - """Lists all the private links in the specified subscription. private links enable secure, private - connectivity to Microsoft Defender for Cloud services without exposing traffic to the public - internet. Use the 'nextLink' property in the response to get the next page of private links for - the specified subscription. - - :return: An iterator like instance of either PrivateLinkResource or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.PrivateLinkResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateLinksList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateLinksList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.PrivateLinkResource"]: - """Lists all the private links in the specified resource group. private links enable secure, - private connectivity to Microsoft Defender for Cloud services without exposing traffic to the - public internet. Use the 'nextLink' property in the response to get the next page of private - links for the specified resource group. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :return: An iterator like instance of either PrivateLinkResource or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.PrivateLinkResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateLinksList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateLinksList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, private_link_parameters: _models.PrivateLinkParameters, **kwargs: Any - ) -> _models.PrivateLinkResource: - """Get a private link resource. Returns the configuration and status of private endpoint - connectivity for Microsoft Defender for Cloud services in the specified region. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: PrivateLinkResource or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PrivateLinkResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_get_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def head( - self, resource_group_name: str, private_link_parameters: _models.PrivateLinkParameters, **kwargs: Any - ) -> bool: - """Checks whether private link exists. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: bool or the result of cls(response) - :rtype: bool - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_head_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - return 200 <= response.status_code <= 299 - - async def _create_initial( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: Union[_models.PrivateLinkResource, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(private_link, (IOBase, bytes)): - _content = private_link - else: - _json = self._serialize.body(private_link, "PrivateLinkResource") - - _request = build_create_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: _models.PrivateLinkResource, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.PrivateLinkResource]: - """Create a private link resource. This operation creates the necessary infrastructure to enable - private endpoint connections to Microsoft Defender for Cloud services. For updates to existing - resources, use the PATCH operation. The operation is asynchronous and may take several minutes - to complete. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_link: Private link request payload containing the resource information for - create operations. Required. - :type private_link: ~azure.mgmt.security.models.PrivateLinkResource - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either PrivateLinkResource or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateLinkResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.PrivateLinkResource]: - """Create a private link resource. This operation creates the necessary infrastructure to enable - private endpoint connections to Microsoft Defender for Cloud services. For updates to existing - resources, use the PATCH operation. The operation is asynchronous and may take several minutes - to complete. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_link: Private link request payload containing the resource information for - create operations. Required. - :type private_link: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either PrivateLinkResource or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateLinkResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: Union[_models.PrivateLinkResource, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.PrivateLinkResource]: - """Create a private link resource. This operation creates the necessary infrastructure to enable - private endpoint connections to Microsoft Defender for Cloud services. For updates to existing - resources, use the PATCH operation. The operation is asynchronous and may take several minutes - to complete. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_link: Private link request payload containing the resource information for - create operations. Is either a PrivateLinkResource type or a IO[bytes] type. Required. - :type private_link: ~azure.mgmt.security.models.PrivateLinkResource or IO[bytes] - :return: An instance of AsyncLROPoller that returns either PrivateLinkResource or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.PrivateLinkResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_initial( - resource_group_name=resource_group_name, - private_link_parameters=private_link_parameters, - private_link=private_link, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("PrivateLinkResource", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.PrivateLinkResource].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.PrivateLinkResource]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @overload - async def update( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: _models.PrivateLinkUpdate, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateLinkResource: - """Update specific properties of a private link resource. Use this operation to update mutable - properties like tags without affecting the entire resource configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_link: private link update payload containing only the properties to be updated. - Required. - :type private_link: ~azure.mgmt.security.models.PrivateLinkUpdate - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateLinkResource or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PrivateLinkResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateLinkResource: - """Update specific properties of a private link resource. Use this operation to update mutable - properties like tags without affecting the entire resource configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_link: private link update payload containing only the properties to be updated. - Required. - :type private_link: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateLinkResource or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PrivateLinkResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: Union[_models.PrivateLinkUpdate, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateLinkResource: - """Update specific properties of a private link resource. Use this operation to update mutable - properties like tags without affecting the entire resource configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_link: private link update payload containing only the properties to be updated. - Is either a PrivateLinkUpdate type or a IO[bytes] type. Required. - :type private_link: ~azure.mgmt.security.models.PrivateLinkUpdate or IO[bytes] - :return: PrivateLinkResource or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PrivateLinkResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(private_link, (IOBase, bytes)): - _content = private_link - else: - _json = self._serialize.body(private_link, "PrivateLinkUpdate") - - _request = build_update_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _delete_initial( - self, resource_group_name: str, private_link_parameters: _models.PrivateLinkParameters, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_delete_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete( - self, resource_group_name: str, private_link_parameters: _models.PrivateLinkParameters, **kwargs: Any - ) -> AsyncLROPoller[None]: - """Delete a private link resource. This operation will remove the private link infrastructure and - disconnect all associated private endpoints. This operation is asynchronous and may take - several minutes to complete. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - private_link_parameters=private_link_parameters, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, - AsyncARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_assessments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_assessments_operations.py deleted file mode 100644 index 559425c27750..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_assessments_operations.py +++ /dev/null @@ -1,211 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._regulatory_compliance_assessments_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class RegulatoryComplianceAssessmentsOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`regulatory_compliance_assessments` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, - regulatory_compliance_standard_name: str, - regulatory_compliance_control_name: str, - filter: Optional[str] = None, - **kwargs: Any - ) -> AsyncItemPaged["_models.RegulatoryComplianceAssessment"]: - """Details and state of assessments mapped to selected regulatory compliance control. - - :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. - Required. - :type regulatory_compliance_standard_name: str - :param regulatory_compliance_control_name: Name of the regulatory compliance control object. - Required. - :type regulatory_compliance_control_name: str - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: An iterator like instance of either RegulatoryComplianceAssessment or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.RegulatoryComplianceAssessment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.RegulatoryComplianceAssessmentList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - regulatory_compliance_standard_name=regulatory_compliance_standard_name, - regulatory_compliance_control_name=regulatory_compliance_control_name, - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("RegulatoryComplianceAssessmentList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, - regulatory_compliance_standard_name: str, - regulatory_compliance_control_name: str, - regulatory_compliance_assessment_name: str, - **kwargs: Any - ) -> _models.RegulatoryComplianceAssessment: - """Supported regulatory compliance details and state for selected assessment. - - :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. - Required. - :type regulatory_compliance_standard_name: str - :param regulatory_compliance_control_name: Name of the regulatory compliance control object. - Required. - :type regulatory_compliance_control_name: str - :param regulatory_compliance_assessment_name: Name of the regulatory compliance assessment - object. Required. - :type regulatory_compliance_assessment_name: str - :return: RegulatoryComplianceAssessment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RegulatoryComplianceAssessment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.RegulatoryComplianceAssessment] = kwargs.pop("cls", None) - - _request = build_get_request( - regulatory_compliance_standard_name=regulatory_compliance_standard_name, - regulatory_compliance_control_name=regulatory_compliance_control_name, - regulatory_compliance_assessment_name=regulatory_compliance_assessment_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RegulatoryComplianceAssessment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_controls_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_controls_operations.py deleted file mode 100644 index c786bd28e789..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_controls_operations.py +++ /dev/null @@ -1,195 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._regulatory_compliance_controls_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class RegulatoryComplianceControlsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`regulatory_compliance_controls` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, regulatory_compliance_standard_name: str, filter: Optional[str] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.RegulatoryComplianceControl"]: - """All supported regulatory compliance controls details and state for selected standard. - - :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. - Required. - :type regulatory_compliance_standard_name: str - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: An iterator like instance of either RegulatoryComplianceControl or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.RegulatoryComplianceControl] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.RegulatoryComplianceControlList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - regulatory_compliance_standard_name=regulatory_compliance_standard_name, - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("RegulatoryComplianceControlList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, regulatory_compliance_standard_name: str, regulatory_compliance_control_name: str, **kwargs: Any - ) -> _models.RegulatoryComplianceControl: - """Selected regulatory compliance control details and state. - - :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. - Required. - :type regulatory_compliance_standard_name: str - :param regulatory_compliance_control_name: Name of the regulatory compliance control object. - Required. - :type regulatory_compliance_control_name: str - :return: RegulatoryComplianceControl or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RegulatoryComplianceControl - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.RegulatoryComplianceControl] = kwargs.pop("cls", None) - - _request = build_get_request( - regulatory_compliance_standard_name=regulatory_compliance_standard_name, - regulatory_compliance_control_name=regulatory_compliance_control_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RegulatoryComplianceControl", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_standards_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_standards_operations.py deleted file mode 100644 index 8cd620a79a50..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_regulatory_compliance_standards_operations.py +++ /dev/null @@ -1,187 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._regulatory_compliance_standards_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class RegulatoryComplianceStandardsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`regulatory_compliance_standards` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, filter: Optional[str] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.RegulatoryComplianceStandard"]: - """Supported regulatory compliance standards details and state. - - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: An iterator like instance of either RegulatoryComplianceStandard or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.RegulatoryComplianceStandard] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.RegulatoryComplianceStandardList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("RegulatoryComplianceStandardList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, regulatory_compliance_standard_name: str, **kwargs: Any - ) -> _models.RegulatoryComplianceStandard: - """Supported regulatory compliance details state for selected standard. - - :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. - Required. - :type regulatory_compliance_standard_name: str - :return: RegulatoryComplianceStandard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RegulatoryComplianceStandard - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.RegulatoryComplianceStandard] = kwargs.pop("cls", None) - - _request = build_get_request( - regulatory_compliance_standard_name=regulatory_compliance_standard_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RegulatoryComplianceStandard", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_control_definitions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_control_definitions_operations.py deleted file mode 100644 index d86dda8975eb..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_control_definitions_operations.py +++ /dev/null @@ -1,195 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._secure_score_control_definitions_operations import ( - build_list_by_subscription_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SecureScoreControlDefinitionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`secure_score_control_definitions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecureScoreControlDefinitionItem"]: - """List the available security controls, their assessments, and the max score. - - :return: An iterator like instance of either SecureScoreControlDefinitionItem or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecureScoreControlDefinitionItem] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecureScoreControlDefinitionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecureScoreControlDefinitionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.SecureScoreControlDefinitionItem"]: - """For a specified subscription, list the available security controls, their assessments, and the - max score. - - :return: An iterator like instance of either SecureScoreControlDefinitionItem or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecureScoreControlDefinitionItem] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecureScoreControlDefinitionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecureScoreControlDefinitionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_controls_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_controls_operations.py deleted file mode 100644 index bd5927b9243f..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_score_controls_operations.py +++ /dev/null @@ -1,206 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar, Union - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._secure_score_controls_operations import build_list_by_secure_score_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SecureScoreControlsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`secure_score_controls` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_secure_score( - self, secure_score_name: str, expand: Optional[Union[str, _models.ExpandControlsEnum]] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.SecureScoreControlDetails"]: - """Get all security controls for a specific initiative within a scope. - - :param secure_score_name: The initiative name. For the ASC Default initiative, use 'ascScore' - as in the sample request below. Required. - :type secure_score_name: str - :param expand: OData expand. Optional. "definition" Default value is None. - :type expand: str or ~azure.mgmt.security.models.ExpandControlsEnum - :return: An iterator like instance of either SecureScoreControlDetails or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecureScoreControlDetails] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecureScoreControlList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_secure_score_request( - secure_score_name=secure_score_name, - subscription_id=self._config.subscription_id, - expand=expand, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecureScoreControlList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list( - self, expand: Optional[Union[str, _models.ExpandControlsEnum]] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.SecureScoreControlDetails"]: - """Get all security controls within a scope. - - :param expand: OData expand. Optional. "definition" Default value is None. - :type expand: str or ~azure.mgmt.security.models.ExpandControlsEnum - :return: An iterator like instance of either SecureScoreControlDetails or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecureScoreControlDetails] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecureScoreControlList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - expand=expand, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecureScoreControlList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_scores_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_scores_operations.py deleted file mode 100644 index e812644100d9..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_secure_scores_operations.py +++ /dev/null @@ -1,180 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._secure_scores_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SecureScoresOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`secure_scores` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecureScoreItem"]: - """List secure scores for all your Microsoft Defender for Cloud initiatives within your current - scope. - - :return: An iterator like instance of either SecureScoreItem or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecureScoreItem] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecureScoresList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecureScoresList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, secure_score_name: str, **kwargs: Any) -> _models.SecureScoreItem: - """Get secure score for a specific Microsoft Defender for Cloud initiative within your current - scope. For the ASC Default initiative, use 'ascScore'. - - :param secure_score_name: The initiative name. For the ASC Default initiative, use 'ascScore' - as in the sample request below. Required. - :type secure_score_name: str - :return: SecureScoreItem or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecureScoreItem - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecureScoreItem] = kwargs.pop("cls", None) - - _request = build_get_request( - secure_score_name=secure_score_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecureScoreItem", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_application_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_application_operations.py deleted file mode 100644 index 2f8f98271fae..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_application_operations.py +++ /dev/null @@ -1,327 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._security_connector_application_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SecurityConnectorApplicationOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`security_connector_application` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get( - self, resource_group_name: str, security_connector_name: str, application_id: str, **kwargs: Any - ) -> _models.Application: - """Get a specific application for the requested scope by applicationId. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - cls: ClsType[_models.Application] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - application_id=application_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated5, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Application", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - application_id: str, - application: _models.Application, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Application: - """Creates or update a security Application on the given security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :param application: Application over a subscription scope. Required. - :type application: ~azure.mgmt.security.models.Application - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - application_id: str, - application: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Application: - """Creates or update a security Application on the given security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :param application: Application over a subscription scope. Required. - :type application: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - application_id: str, - application: Union[_models.Application, IO[bytes]], - **kwargs: Any - ) -> _models.Application: - """Creates or update a security Application on the given security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :param application: Application over a subscription scope. Is either a Application type or a - IO[bytes] type. Required. - :type application: ~azure.mgmt.security.models.Application or IO[bytes] - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Application] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(application, (IOBase, bytes)): - _content = application - else: - _json = self._serialize.body(application, "Application") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - application_id=application_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated5, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Application", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( - self, resource_group_name: str, security_connector_name: str, application_id: str, **kwargs: Any - ) -> None: - """Delete an Application over a given scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - application_id=application_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_applications_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_applications_operations.py deleted file mode 100644 index 10d3460b45e1..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connector_applications_operations.py +++ /dev/null @@ -1,130 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._security_connector_applications_operations import build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SecurityConnectorApplicationsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`security_connector_applications` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.Application"]: - """Get a list of all relevant applications over a security connector level scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: An iterator like instance of either Application or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Application] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - cls: ClsType[_models.ApplicationsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ApplicationsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated5, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connectors_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connectors_operations.py deleted file mode 100644 index 256b3d83b8c4..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_connectors_operations.py +++ /dev/null @@ -1,592 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._security_connectors_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_resource_group_request, - build_list_request, - build_update_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SecurityConnectorsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`security_connectors` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecurityConnector"]: - """Lists all the security connectors in the specified subscription. Use the 'nextLink' property in - the response to get the next page of security connectors for the specified subscription. - - :return: An iterator like instance of either SecurityConnector or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityConnector] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - cls: ClsType[_models.SecurityConnectorsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityConnectorsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated10, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, **kwargs: Any - ) -> AsyncItemPaged["_models.SecurityConnector"]: - """Lists all the security connectors in the specified resource group. Use the 'nextLink' property - in the response to get the next page of security connectors for the specified resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either SecurityConnector or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityConnector] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - cls: ClsType[_models.SecurityConnectorsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityConnectorsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated10, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> _models.SecurityConnector: - """Retrieves details of a specific security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - cls: ClsType[_models.SecurityConnector] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated10, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityConnector", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - security_connector: _models.SecurityConnector, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityConnector: - """Creates or updates a security connector. If a security connector is already created and a - subsequent request is issued for the same security connector id, then it will be updated. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param security_connector: The security connector resource. Required. - :type security_connector: ~azure.mgmt.security.models.SecurityConnector - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - security_connector: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityConnector: - """Creates or updates a security connector. If a security connector is already created and a - subsequent request is issued for the same security connector id, then it will be updated. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param security_connector: The security connector resource. Required. - :type security_connector: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - security_connector: Union[_models.SecurityConnector, IO[bytes]], - **kwargs: Any - ) -> _models.SecurityConnector: - """Creates or updates a security connector. If a security connector is already created and a - subsequent request is issued for the same security connector id, then it will be updated. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param security_connector: The security connector resource. Is either a SecurityConnector type - or a IO[bytes] type. Required. - :type security_connector: ~azure.mgmt.security.models.SecurityConnector or IO[bytes] - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SecurityConnector] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(security_connector, (IOBase, bytes)): - _content = security_connector - else: - _json = self._serialize.body(security_connector, "SecurityConnector") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated10, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityConnector", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - resource_group_name: str, - security_connector_name: str, - security_connector: _models.SecurityConnector, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityConnector: - """Updates a security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param security_connector: The security connector resource. Required. - :type security_connector: ~azure.mgmt.security.models.SecurityConnector - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - resource_group_name: str, - security_connector_name: str, - security_connector: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityConnector: - """Updates a security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param security_connector: The security connector resource. Required. - :type security_connector: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - resource_group_name: str, - security_connector_name: str, - security_connector: Union[_models.SecurityConnector, IO[bytes]], - **kwargs: Any - ) -> _models.SecurityConnector: - """Updates a security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param security_connector: The security connector resource. Is either a SecurityConnector type - or a IO[bytes] type. Required. - :type security_connector: ~azure.mgmt.security.models.SecurityConnector or IO[bytes] - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SecurityConnector] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(security_connector, (IOBase, bytes)): - _content = security_connector - else: - _json = self._serialize.body(security_connector, "SecurityConnector") - - _request = build_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated10, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityConnector", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, resource_group_name: str, security_connector_name: str, **kwargs: Any) -> None: - """Deletes a security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated10, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_operators_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_operators_operations.py deleted file mode 100644 index a800cd0651a2..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_operators_operations.py +++ /dev/null @@ -1,285 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._security_operators_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SecurityOperatorsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`security_operators` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def list(self, pricing_name: str, **kwargs: Any) -> _models.SecurityOperatorList: - """Lists Microsoft Defender for Cloud securityOperators in the subscription. - - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :return: SecurityOperatorList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityOperatorList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) - cls: ClsType[_models.SecurityOperatorList] = kwargs.pop("cls", None) - - _request = build_list_request( - pricing_name=pricing_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated6, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityOperatorList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get(self, pricing_name: str, security_operator_name: str, **kwargs: Any) -> _models.SecurityOperator: - """Get a specific security operator for the requested scope. - - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :param security_operator_name: name of the securityOperator. Required. - :type security_operator_name: str - :return: SecurityOperator or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityOperator - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) - cls: ClsType[_models.SecurityOperator] = kwargs.pop("cls", None) - - _request = build_get_request( - pricing_name=pricing_name, - security_operator_name=security_operator_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated6, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityOperator", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def create_or_update( - self, pricing_name: str, security_operator_name: str, **kwargs: Any - ) -> _models.SecurityOperator: - """Creates Microsoft Defender for Cloud security operator on the given scope. - - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :param security_operator_name: name of the securityOperator. Required. - :type security_operator_name: str - :return: SecurityOperator or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityOperator - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) - cls: ClsType[_models.SecurityOperator] = kwargs.pop("cls", None) - - _request = build_create_or_update_request( - pricing_name=pricing_name, - security_operator_name=security_operator_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated6, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityOperator", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, pricing_name: str, security_operator_name: str, **kwargs: Any) -> None: - """Delete Microsoft Defender for Cloud securityOperator in the subscription. - - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :param security_operator_name: name of the securityOperator. Required. - :type security_operator_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - pricing_name=pricing_name, - security_operator_name=security_operator_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated6, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_operations.py deleted file mode 100644 index 1d627618fb8e..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_operations.py +++ /dev/null @@ -1,187 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._security_solutions_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SecuritySolutionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`security_solutions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.SecuritySolution"]: - """Gets a list of Security Solutions for the subscription. - - :return: An iterator like instance of either SecuritySolution or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecuritySolution] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecuritySolutionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecuritySolutionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, asc_location: str, security_solution_name: str, **kwargs: Any - ) -> _models.SecuritySolution: - """Gets a specific Security Solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param security_solution_name: Name of security solution. Required. - :type security_solution_name: str - :return: SecuritySolution or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecuritySolution - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecuritySolution] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - security_solution_name=security_solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecuritySolution", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_reference_data_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_reference_data_operations.py deleted file mode 100644 index 3470bec9b4c5..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_solutions_reference_data_operations.py +++ /dev/null @@ -1,164 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._security_solutions_reference_data_operations import ( - build_list_by_home_region_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SecuritySolutionsReferenceDataOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`security_solutions_reference_data` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def list(self, **kwargs: Any) -> _models.SecuritySolutionsReferenceDataList: - """Gets a list of all supported Security Solutions for the subscription. - - :return: SecuritySolutionsReferenceDataList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecuritySolutionsReferenceDataList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecuritySolutionsReferenceDataList] = kwargs.pop("cls", None) - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecuritySolutionsReferenceDataList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_by_home_region(self, asc_location: str, **kwargs: Any) -> _models.SecuritySolutionsReferenceDataList: - """Gets list of all supported Security Solutions for subscription and location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: SecuritySolutionsReferenceDataList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecuritySolutionsReferenceDataList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecuritySolutionsReferenceDataList] = kwargs.pop("cls", None) - - _request = build_list_by_home_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecuritySolutionsReferenceDataList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_standards_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_standards_operations.py deleted file mode 100644 index 9f7a6fd5a587..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_security_standards_operations.py +++ /dev/null @@ -1,391 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._security_standards_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SecurityStandardsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`security_standards` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.SecurityStandard"]: - """Get a list of all relevant security standards over a scope. - - :param scope: The scope of the security standard. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :return: An iterator like instance of either SecurityStandard or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityStandard] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[_models.SecurityStandardList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityStandardList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, scope: str, standard_id: str, **kwargs: Any) -> _models.SecurityStandard: - """Get a specific security standard for the requested scope by standardId. - - :param scope: The scope of the security standard. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :return: SecurityStandard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityStandard - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[_models.SecurityStandard] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - standard_id=standard_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityStandard", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - scope: str, - standard_id: str, - standard: _models.SecurityStandard, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityStandard: - """Creates or updates a security standard over a given scope. - - :param scope: The scope of the security standard. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :param standard: Custom security standard over a pre-defined scope. Required. - :type standard: ~azure.mgmt.security.models.SecurityStandard - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityStandard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityStandard - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - scope: str, - standard_id: str, - standard: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityStandard: - """Creates or updates a security standard over a given scope. - - :param scope: The scope of the security standard. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :param standard: Custom security standard over a pre-defined scope. Required. - :type standard: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityStandard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityStandard - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, scope: str, standard_id: str, standard: Union[_models.SecurityStandard, IO[bytes]], **kwargs: Any - ) -> _models.SecurityStandard: - """Creates or updates a security standard over a given scope. - - :param scope: The scope of the security standard. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :param standard: Custom security standard over a pre-defined scope. Is either a - SecurityStandard type or a IO[bytes] type. Required. - :type standard: ~azure.mgmt.security.models.SecurityStandard or IO[bytes] - :return: SecurityStandard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityStandard - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SecurityStandard] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(standard, (IOBase, bytes)): - _content = standard - else: - _json = self._serialize.body(standard, "SecurityStandard") - - _request = build_create_or_update_request( - scope=scope, - standard_id=standard_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityStandard", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, scope: str, standard_id: str, **kwargs: Any) -> None: - """Delete a security standard over a given scope. - - :param scope: The scope of the security standard. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - scope=scope, - standard_id=standard_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sensitivity_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sensitivity_settings_operations.py deleted file mode 100644 index 9f3af2d7b4e3..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sensitivity_settings_operations.py +++ /dev/null @@ -1,265 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._sensitivity_settings_operations import ( - build_create_or_update_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SensitivitySettingsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`sensitivity_settings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @overload - async def create_or_update( - self, - sensitivity_settings: _models.UpdateSensitivitySettingsRequest, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.GetSensitivitySettingsResponse: - """Create or update data sensitivity settings for sensitive data discovery. - - :param sensitivity_settings: The data sensitivity settings to update. Required. - :type sensitivity_settings: ~azure.mgmt.security.models.UpdateSensitivitySettingsRequest - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: GetSensitivitySettingsResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, sensitivity_settings: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.GetSensitivitySettingsResponse: - """Create or update data sensitivity settings for sensitive data discovery. - - :param sensitivity_settings: The data sensitivity settings to update. Required. - :type sensitivity_settings: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: GetSensitivitySettingsResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, sensitivity_settings: Union[_models.UpdateSensitivitySettingsRequest, IO[bytes]], **kwargs: Any - ) -> _models.GetSensitivitySettingsResponse: - """Create or update data sensitivity settings for sensitive data discovery. - - :param sensitivity_settings: The data sensitivity settings to update. Is either a - UpdateSensitivitySettingsRequest type or a IO[bytes] type. Required. - :type sensitivity_settings: ~azure.mgmt.security.models.UpdateSensitivitySettingsRequest or - IO[bytes] - :return: GetSensitivitySettingsResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.GetSensitivitySettingsResponse] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(sensitivity_settings, (IOBase, bytes)): - _content = sensitivity_settings - else: - _json = self._serialize.body(sensitivity_settings, "UpdateSensitivitySettingsRequest") - - _request = build_create_or_update_request( - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated8, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GetSensitivitySettingsResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get(self, **kwargs: Any) -> _models.GetSensitivitySettingsResponse: - """Gets data sensitivity settings for sensitive data discovery. - - :return: GetSensitivitySettingsResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) - cls: ClsType[_models.GetSensitivitySettingsResponse] = kwargs.pop("cls", None) - - _request = build_get_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated8, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GetSensitivitySettingsResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list(self, **kwargs: Any) -> _models.GetSensitivitySettingsListResponse: - """Gets a list with a single sensitivity settings resource. - - :return: GetSensitivitySettingsListResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsListResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) - cls: ClsType[_models.GetSensitivitySettingsListResponse] = kwargs.pop("cls", None) - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated8, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GetSensitivitySettingsListResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessment_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessment_operations.py deleted file mode 100644 index 9ba25e2fde07..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessment_operations.py +++ /dev/null @@ -1,391 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, AsyncIterator, Callable, Literal, Optional, TypeVar, Union, cast - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._server_vulnerability_assessment_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_extended_resource_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class ServerVulnerabilityAssessmentOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`server_vulnerability_assessment` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def list_by_extended_resource( - self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any - ) -> _models.ServerVulnerabilityAssessmentsList: - """Gets a list of server vulnerability assessment onboarding statuses on a given resource. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param resource_namespace: The Namespace of the resource. Required. - :type resource_namespace: str - :param resource_type: The type of the resource. Required. - :type resource_type: str - :param resource_name: Name of the resource. Required. - :type resource_name: str - :return: ServerVulnerabilityAssessmentsList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.ServerVulnerabilityAssessmentsList] = kwargs.pop("cls", None) - - _request = build_list_by_extended_resource_request( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ServerVulnerabilityAssessmentsList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any - ) -> _models.ServerVulnerabilityAssessment: - """Gets a server vulnerability assessment onboarding statuses on a given resource. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param resource_namespace: The Namespace of the resource. Required. - :type resource_namespace: str - :param resource_type: The type of the resource. Required. - :type resource_type: str - :param resource_name: Name of the resource. Required. - :type resource_name: str - :return: ServerVulnerabilityAssessment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.ServerVulnerabilityAssessment] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - subscription_id=self._config.subscription_id, - server_vulnerability_assessment=server_vulnerability_assessment, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ServerVulnerabilityAssessment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def create_or_update( - self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any - ) -> _models.ServerVulnerabilityAssessment: - """Creating a server vulnerability assessment on a resource, which will onboard a resource for - having a vulnerability assessment on it. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param resource_namespace: The Namespace of the resource. Required. - :type resource_namespace: str - :param resource_type: The type of the resource. Required. - :type resource_type: str - :param resource_name: Name of the resource. Required. - :type resource_name: str - :return: ServerVulnerabilityAssessment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.ServerVulnerabilityAssessment] = kwargs.pop("cls", None) - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - subscription_id=self._config.subscription_id, - server_vulnerability_assessment=server_vulnerability_assessment, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ServerVulnerabilityAssessment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _delete_initial( - self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - subscription_id=self._config.subscription_id, - server_vulnerability_assessment=server_vulnerability_assessment, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete( - self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any - ) -> AsyncLROPoller[None]: - """Removing server vulnerability assessment from a resource. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param resource_namespace: The Namespace of the resource. Required. - :type resource_namespace: str - :param resource_type: The type of the resource. Required. - :type resource_type: str - :param resource_name: Name of the resource. Required. - :type resource_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - server_vulnerability_assessment=server_vulnerability_assessment, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, AsyncARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessments_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessments_settings_operations.py deleted file mode 100644 index 0822d2315876..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_server_vulnerability_assessments_settings_operations.py +++ /dev/null @@ -1,384 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._server_vulnerability_assessments_settings_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_subscription_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class ServerVulnerabilityAssessmentsSettingsOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`server_vulnerability_assessments_settings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.ServerVulnerabilityAssessmentsSetting"]: - """Get a list of all the server vulnerability assessments settings over a subscription level - scope. - - :return: An iterator like instance of either ServerVulnerabilityAssessmentsSetting or the - result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) - cls: ClsType[_models.ServerVulnerabilityAssessmentsSettingsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ServerVulnerabilityAssessmentsSettingsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], **kwargs: Any - ) -> _models.ServerVulnerabilityAssessmentsSetting: - """Get a server vulnerability assessments setting of the requested kind, that is set on the - subscription. - - :param setting_kind: The kind of the server vulnerability assessments setting. - "azureServersSetting" Required. - :type setting_kind: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName - :return: ServerVulnerabilityAssessmentsSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) - cls: ClsType[_models.ServerVulnerabilityAssessmentsSetting] = kwargs.pop("cls", None) - - _request = build_get_request( - setting_kind=setting_kind, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ServerVulnerabilityAssessmentsSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], - server_vulnerability_assessments_setting: _models.ServerVulnerabilityAssessmentsSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ServerVulnerabilityAssessmentsSetting: - """Create or update a server vulnerability assessments setting of the requested kind on the - subscription. - - :param setting_kind: The kind of the server vulnerability assessments setting. - "azureServersSetting" Required. - :type setting_kind: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName - :param server_vulnerability_assessments_setting: A server vulnerability assessments setting - over a predefined scope. Required. - :type server_vulnerability_assessments_setting: - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ServerVulnerabilityAssessmentsSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], - server_vulnerability_assessments_setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ServerVulnerabilityAssessmentsSetting: - """Create or update a server vulnerability assessments setting of the requested kind on the - subscription. - - :param setting_kind: The kind of the server vulnerability assessments setting. - "azureServersSetting" Required. - :type setting_kind: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName - :param server_vulnerability_assessments_setting: A server vulnerability assessments setting - over a predefined scope. Required. - :type server_vulnerability_assessments_setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ServerVulnerabilityAssessmentsSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], - server_vulnerability_assessments_setting: Union[_models.ServerVulnerabilityAssessmentsSetting, IO[bytes]], - **kwargs: Any - ) -> _models.ServerVulnerabilityAssessmentsSetting: - """Create or update a server vulnerability assessments setting of the requested kind on the - subscription. - - :param setting_kind: The kind of the server vulnerability assessments setting. - "azureServersSetting" Required. - :type setting_kind: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName - :param server_vulnerability_assessments_setting: A server vulnerability assessments setting - over a predefined scope. Is either a ServerVulnerabilityAssessmentsSetting type or a IO[bytes] - type. Required. - :type server_vulnerability_assessments_setting: - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting or IO[bytes] - :return: ServerVulnerabilityAssessmentsSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ServerVulnerabilityAssessmentsSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(server_vulnerability_assessments_setting, (IOBase, bytes)): - _content = server_vulnerability_assessments_setting - else: - _json = self._serialize.body( - server_vulnerability_assessments_setting, "ServerVulnerabilityAssessmentsSetting" - ) - - _request = build_create_or_update_request( - setting_kind=setting_kind, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ServerVulnerabilityAssessmentsSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( - self, setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], **kwargs: Any - ) -> None: - """Delete the server vulnerability assessments setting of the requested kind from the - subscription. - - :param setting_kind: The kind of the server vulnerability assessments setting. - "azureServersSetting" Required. - :type setting_kind: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - setting_kind=setting_kind, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_settings_operations.py deleted file mode 100644 index 9b386e797f9b..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_settings_operations.py +++ /dev/null @@ -1,299 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._settings_operations import build_get_request, build_list_request, build_update_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SettingsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`settings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.Setting"]: - """Settings about different configurations in Microsoft Defender for Cloud. - - :return: An iterator like instance of either Setting or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Setting] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) - cls: ClsType[_models.SettingsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SettingsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated17, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, setting_name: Union[str, _models.SettingName], **kwargs: Any) -> _models.Setting: - """Settings of different configurations in Microsoft Defender for Cloud. - - :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", - "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName - :return: Setting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Setting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) - cls: ClsType[_models.Setting] = kwargs.pop("cls", None) - - _request = build_get_request( - setting_name=setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated17, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Setting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - setting_name: Union[str, _models.SettingName], - setting: _models.Setting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Setting: - """updating settings about different configurations in Microsoft Defender for Cloud. - - :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", - "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName - :param setting: Setting object. Required. - :type setting: ~azure.mgmt.security.models.Setting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Setting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Setting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - setting_name: Union[str, _models.SettingName], - setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Setting: - """updating settings about different configurations in Microsoft Defender for Cloud. - - :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", - "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName - :param setting: Setting object. Required. - :type setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Setting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Setting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, setting_name: Union[str, _models.SettingName], setting: Union[_models.Setting, IO[bytes]], **kwargs: Any - ) -> _models.Setting: - """updating settings about different configurations in Microsoft Defender for Cloud. - - :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", - "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName - :param setting: Setting object. Is either a Setting type or a IO[bytes] type. Required. - :type setting: ~azure.mgmt.security.models.Setting or IO[bytes] - :return: Setting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Setting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Setting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(setting, (IOBase, bytes)): - _content = setting - else: - _json = self._serialize.body(setting, "Setting") - - _request = build_update_request( - setting_name=setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated17, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Setting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_baseline_rules_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_baseline_rules_operations.py deleted file mode 100644 index 9bcf86cf5730..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_baseline_rules_operations.py +++ /dev/null @@ -1,577 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._sql_vulnerability_assessment_baseline_rules_operations import ( - build_add_request, - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SqlVulnerabilityAssessmentBaselineRulesOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`sql_vulnerability_assessment_baseline_rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @overload - async def create_or_update( - self, - resource_id: str, - rule_id: str, - database_name: Optional[str] = None, - body: Optional[_models.RuleResultsInput] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.RuleResults: - """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - - Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param rule_id: The rule Id. Required. - :type rule_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :param body: The baseline results for this rule. Default value is None. - :type body: ~azure.mgmt.security.models.RuleResultsInput - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: RuleResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RuleResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_id: str, - rule_id: str, - database_name: Optional[str] = None, - body: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.RuleResults: - """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - - Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param rule_id: The rule Id. Required. - :type rule_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :param body: The baseline results for this rule. Default value is None. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: RuleResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RuleResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_id: str, - rule_id: str, - database_name: Optional[str] = None, - body: Optional[Union[_models.RuleResultsInput, IO[bytes]]] = None, - **kwargs: Any - ) -> _models.RuleResults: - """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - - Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param rule_id: The rule Id. Required. - :type rule_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :param body: The baseline results for this rule. Is either a RuleResultsInput type or a - IO[bytes] type. Default value is None. - :type body: ~azure.mgmt.security.models.RuleResultsInput or IO[bytes] - :return: RuleResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RuleResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if body else None - cls: ClsType[_models.RuleResults] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" if body else None - _json = None - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - if body is not None: - _json = self._serialize.body(body, "RuleResultsInput") - else: - _json = None - - _request = build_create_or_update_request( - resource_id=resource_id, - rule_id=rule_id, - database_name=database_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RuleResults", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get( - self, resource_id: str, rule_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> _models.RuleResults: - """Gets the results for a given rule in the Baseline. - - Gets the results for a given rule in the Baseline. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param rule_id: The rule Id. Required. - :type rule_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: RuleResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RuleResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.RuleResults] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - rule_id=rule_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RuleResults", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, resource_id: str, rule_id: str, database_name: Optional[str] = None, **kwargs: Any) -> None: - """Deletes a rule from the Baseline of a given database. - - Deletes a rule from the Baseline of a given database. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param rule_id: The rule Id. Required. - :type rule_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_id=resource_id, - rule_id=rule_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list( - self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.RuleResults"]: - """Gets the results for all rules in the Baseline. - - Gets the results for all rules in the Baseline. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: An iterator like instance of either RuleResults or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.RuleResults] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.RulesResults] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("RulesResults", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def add( - self, - resource_id: str, - database_name: Optional[str] = None, - body: Optional[_models.RulesResultsInput] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.RulesResults: - """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - - Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :param body: The baseline rules. Default value is None. - :type body: ~azure.mgmt.security.models.RulesResultsInput - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: RulesResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RulesResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def add( - self, - resource_id: str, - database_name: Optional[str] = None, - body: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.RulesResults: - """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - - Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :param body: The baseline rules. Default value is None. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: RulesResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RulesResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def add( - self, - resource_id: str, - database_name: Optional[str] = None, - body: Optional[Union[_models.RulesResultsInput, IO[bytes]]] = None, - **kwargs: Any - ) -> _models.RulesResults: - """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - - Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :param body: The baseline rules. Is either a RulesResultsInput type or a IO[bytes] type. - Default value is None. - :type body: ~azure.mgmt.security.models.RulesResultsInput or IO[bytes] - :return: RulesResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RulesResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if body else None - cls: ClsType[_models.RulesResults] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" if body else None - _json = None - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - if body is not None: - _json = self._serialize.body(body, "RulesResultsInput") - else: - _json = None - - _request = build_add_request( - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RulesResults", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scan_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scan_results_operations.py deleted file mode 100644 index 0eac9972fd94..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scan_results_operations.py +++ /dev/null @@ -1,209 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._sql_vulnerability_assessment_scan_results_operations import build_get_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SqlVulnerabilityAssessmentScanResultsOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`sql_vulnerability_assessment_scan_results` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get( - self, scan_id: str, scan_result_id: str, resource_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> _models.ScanResult: - """Gets the scan results of a single rule in a scan record. - - Gets the scan results of a single rule in a scan record. - - :param scan_id: The scan Id. Type 'latest' to get the scan results for the latest scan. - Required. - :type scan_id: str - :param scan_result_id: The rule Id of the results. Required. - :type scan_result_id: str - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: ScanResult or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ScanResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.ScanResult] = kwargs.pop("cls", None) - - _request = build_get_request( - scan_id=scan_id, - scan_result_id=scan_result_id, - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ScanResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, scan_id: str, resource_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.ScanResult"]: - """Gets a list of scan results for a single scan record. - - Gets a list of scan results for a single scan record. - - :param scan_id: The scan Id. Type 'latest' to get the scan results for the latest scan. - Required. - :type scan_id: str - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: An iterator like instance of either ScanResult or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ScanResult] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.ScanResults] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scan_id=scan_id, - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ScanResults", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scans_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scans_operations.py deleted file mode 100644 index 25403abd831c..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_scans_operations.py +++ /dev/null @@ -1,406 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, AsyncIterator, Callable, Optional, TypeVar, Union, cast - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._sql_vulnerability_assessment_scans_operations import ( - build_get_request, - build_get_scan_operation_result_request, - build_initiate_scan_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SqlVulnerabilityAssessmentScansOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`sql_vulnerability_assessment_scans` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get( - self, scan_id: str, resource_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> _models.ScanV2: - """Gets the scan details of a single scan record. - - Gets the scan details of a single scan record. - - :param scan_id: The scan Id. Type 'latest' to get the scan record for the latest scan. - Required. - :type scan_id: str - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: ScanV2 or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ScanV2 - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.ScanV2] = kwargs.pop("cls", None) - - _request = build_get_request( - scan_id=scan_id, - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ScanV2", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.ScanV2"]: - """Gets a list of scan records. - - Gets a list of scan records. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: An iterator like instance of either ScanV2 or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.ScanV2] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.ScansV2] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ScansV2", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _initiate_scan_initial( - self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_initiate_scan_request( - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_initiate_scan( - self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> AsyncLROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult]: - """Initiates a vulnerability assessment scan. - - Initiates a vulnerability assessment scan. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: An instance of AsyncLROPoller that returns either - SqlVulnerabilityAssessmentScanOperationResult or the result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.SqlVulnerabilityAssessmentScanOperationResult] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._initiate_scan_initial( - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize( - "SqlVulnerabilityAssessmentScanOperationResult", pipeline_response.http_response - ) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast( - AsyncPollingMethod, AsyncARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace_async - async def get_scan_operation_result( - self, resource_id: str, operation_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> _models.SqlVulnerabilityAssessmentScanOperationResult: - """Gets the result of a scan operation initiated by the InitiateScan action. - - Gets the result of a scan operation initiated by the InitiateScan action. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param operation_id: The operation id. Required. - :type operation_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: SqlVulnerabilityAssessmentScanOperationResult or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.SqlVulnerabilityAssessmentScanOperationResult] = kwargs.pop("cls", None) - - _request = build_get_scan_operation_result_request( - resource_id=resource_id, - operation_id=operation_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize( - "SqlVulnerabilityAssessmentScanOperationResult", pipeline_response.http_response - ) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_settings_operations.py deleted file mode 100644 index 5af8e8b81fbe..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sql_vulnerability_assessment_settings_operations.py +++ /dev/null @@ -1,296 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._sql_vulnerability_assessment_settings_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SqlVulnerabilityAssessmentSettingsOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`sql_vulnerability_assessment_settings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get(self, resource_id: str, **kwargs: Any) -> _models.SqlVulnerabilityAssessmentSettings: - """Gets the SQL Vulnerability Assessment settings. - - Gets the SQL Vulnerability Assessment settings. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.SqlVulnerabilityAssessmentSettings] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SqlVulnerabilityAssessmentSettings", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - resource_id: str, - body: Optional[_models.SqlVulnerabilityAssessmentSettings] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SqlVulnerabilityAssessmentSettings: - """Creates or updates the SQL Vulnerability Assessment settings. - - Creates or updates the SQL Vulnerability Assessment settings. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param body: The SQL Vulnerability Assessment settings. Default value is None. - :type body: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_id: str, - body: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SqlVulnerabilityAssessmentSettings: - """Creates or updates the SQL Vulnerability Assessment settings. - - Creates or updates the SQL Vulnerability Assessment settings. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param body: The SQL Vulnerability Assessment settings. Default value is None. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_id: str, - body: Optional[Union[_models.SqlVulnerabilityAssessmentSettings, IO[bytes]]] = None, - **kwargs: Any - ) -> _models.SqlVulnerabilityAssessmentSettings: - """Creates or updates the SQL Vulnerability Assessment settings. - - Creates or updates the SQL Vulnerability Assessment settings. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param body: The SQL Vulnerability Assessment settings. Is either a - SqlVulnerabilityAssessmentSettings type or a IO[bytes] type. Default value is None. - :type body: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings or IO[bytes] - :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if body else None - cls: ClsType[_models.SqlVulnerabilityAssessmentSettings] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" if body else None - _json = None - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - if body is not None: - _json = self._serialize.body(body, "SqlVulnerabilityAssessmentSettings") - else: - _json = None - - _request = build_create_or_update_request( - resource_id=resource_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SqlVulnerabilityAssessmentSettings", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, resource_id: str, **kwargs: Any) -> None: - """Deletes the SQL Vulnerability Assessment settings. - - Deletes the SQL Vulnerability Assessment settings. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_id=resource_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standard_assignments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standard_assignments_operations.py deleted file mode 100644 index 090008315c83..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standard_assignments_operations.py +++ /dev/null @@ -1,399 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._standard_assignments_operations import ( - build_create_request, - build_delete_request, - build_get_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class StandardAssignmentsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`standard_assignments` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get(self, resource_id: str, standard_assignment_name: str, **kwargs: Any) -> _models.StandardAssignment: - """Retrieves a standard assignment. - - This operation retrieves a single standard assignment, given its name and the scope it was - created at. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param standard_assignment_name: The standard assignments assignment key - unique key for the - standard assignment. Required. - :type standard_assignment_name: str - :return: StandardAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.StandardAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[_models.StandardAssignment] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - standard_assignment_name=standard_assignment_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("StandardAssignment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create( - self, - resource_id: str, - standard_assignment_name: str, - standard_assignment: _models.StandardAssignment, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.StandardAssignment: - """Creates or updates a standard assignment. - - This operation creates or updates a standard assignment with the given scope and name. standard - assignments apply to all resources contained within their scope. For example, when you assign a - policy at resource group scope, that policy applies to all resources in the group. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param standard_assignment_name: The standard assignments assignment key - unique key for the - standard assignment. Required. - :type standard_assignment_name: str - :param standard_assignment: Custom standard assignment over a pre-defined scope. Required. - :type standard_assignment: ~azure.mgmt.security.models.StandardAssignment - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: StandardAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.StandardAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create( - self, - resource_id: str, - standard_assignment_name: str, - standard_assignment: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.StandardAssignment: - """Creates or updates a standard assignment. - - This operation creates or updates a standard assignment with the given scope and name. standard - assignments apply to all resources contained within their scope. For example, when you assign a - policy at resource group scope, that policy applies to all resources in the group. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param standard_assignment_name: The standard assignments assignment key - unique key for the - standard assignment. Required. - :type standard_assignment_name: str - :param standard_assignment: Custom standard assignment over a pre-defined scope. Required. - :type standard_assignment: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: StandardAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.StandardAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create( - self, - resource_id: str, - standard_assignment_name: str, - standard_assignment: Union[_models.StandardAssignment, IO[bytes]], - **kwargs: Any - ) -> _models.StandardAssignment: - """Creates or updates a standard assignment. - - This operation creates or updates a standard assignment with the given scope and name. standard - assignments apply to all resources contained within their scope. For example, when you assign a - policy at resource group scope, that policy applies to all resources in the group. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param standard_assignment_name: The standard assignments assignment key - unique key for the - standard assignment. Required. - :type standard_assignment_name: str - :param standard_assignment: Custom standard assignment over a pre-defined scope. Is either a - StandardAssignment type or a IO[bytes] type. Required. - :type standard_assignment: ~azure.mgmt.security.models.StandardAssignment or IO[bytes] - :return: StandardAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.StandardAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.StandardAssignment] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(standard_assignment, (IOBase, bytes)): - _content = standard_assignment - else: - _json = self._serialize.body(standard_assignment, "StandardAssignment") - - _request = build_create_request( - resource_id=resource_id, - standard_assignment_name=standard_assignment_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("StandardAssignment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, resource_id: str, standard_assignment_name: str, **kwargs: Any) -> None: - """Deletes a standard assignment. - - This operation deletes a standard assignment, given its name and the scope it was created in. - The scope of a standard assignment is the part of its ID preceding - '/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}'. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param standard_assignment_name: The standard assignments assignment key - unique key for the - standard assignment. Required. - :type standard_assignment_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_id=resource_id, - standard_assignment_name=standard_assignment_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.StandardAssignment"]: - """Get a list of all relevant standard assignments over a scope. - - :param scope: The scope of the standard assignment. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :return: An iterator like instance of either StandardAssignment or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.StandardAssignment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[_models.StandardAssignmentsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("StandardAssignmentsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standards_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standards_operations.py deleted file mode 100644 index a0f2a649c06c..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_standards_operations.py +++ /dev/null @@ -1,447 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._standards_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_subscription_request, - build_list_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class StandardsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`standards` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.Standard"]: - """Get a list of all relevant security standards over a subscription level scope. - - :return: An iterator like instance of either Standard or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Standard] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[_models.StandardList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("StandardList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.Standard"]: - """Get security standards on all your resources inside a scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either Standard or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.Standard] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[_models.StandardList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("StandardList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, resource_group_name: str, standard_id: str, **kwargs: Any) -> _models.Standard: - """Get a specific security standard for the requested scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :return: Standard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Standard - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[_models.Standard] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - standard_id=standard_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Standard", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update( - self, - resource_group_name: str, - standard_id: str, - standard: _models.Standard, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Standard: - """Create a security standard on the given scope. Available only for custom standards. Will - create/update the required standard definitions. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :param standard: Custom security standard over a pre-defined scope. Required. - :type standard: ~azure.mgmt.security.models.Standard - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Standard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Standard - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - standard_id: str, - standard: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Standard: - """Create a security standard on the given scope. Available only for custom standards. Will - create/update the required standard definitions. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :param standard: Custom security standard over a pre-defined scope. Required. - :type standard: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Standard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Standard - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, resource_group_name: str, standard_id: str, standard: Union[_models.Standard, IO[bytes]], **kwargs: Any - ) -> _models.Standard: - """Create a security standard on the given scope. Available only for custom standards. Will - create/update the required standard definitions. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :param standard: Custom security standard over a pre-defined scope. Is either a Standard type - or a IO[bytes] type. Required. - :type standard: ~azure.mgmt.security.models.Standard or IO[bytes] - :return: Standard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Standard - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Standard] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(standard, (IOBase, bytes)): - _content = standard - else: - _json = self._serialize.body(standard, "Standard") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - standard_id=standard_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Standard", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, resource_group_name: str, standard_id: str, **kwargs: Any) -> None: - """Delete a security standard on a scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - standard_id=standard_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sub_assessments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sub_assessments_operations.py deleted file mode 100644 index f4aef9d59843..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_sub_assessments_operations.py +++ /dev/null @@ -1,269 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._sub_assessments_operations import build_get_request, build_list_all_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class SubAssessmentsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`sub_assessments` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_all(self, scope: str, **kwargs: Any) -> AsyncItemPaged["_models.SecuritySubAssessment"]: - """Get security sub-assessments on all your scanned resources inside a subscription scope. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :return: An iterator like instance of either SecuritySubAssessment or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecuritySubAssessment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.SecuritySubAssessmentList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_all_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecuritySubAssessmentList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list(self, scope: str, assessment_name: str, **kwargs: Any) -> AsyncItemPaged["_models.SecuritySubAssessment"]: - """Get security sub-assessments on all your scanned resources inside a scope. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :return: An iterator like instance of either SecuritySubAssessment or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecuritySubAssessment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.SecuritySubAssessmentList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - assessment_name=assessment_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecuritySubAssessmentList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, scope: str, assessment_name: str, sub_assessment_name: str, **kwargs: Any - ) -> _models.SecuritySubAssessment: - """Get a security sub-assessment on your scanned resource. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :param sub_assessment_name: The Sub-Assessment Key - Unique key for the sub-assessment type. - Required. - :type sub_assessment_name: str - :return: SecuritySubAssessment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecuritySubAssessment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.SecuritySubAssessment] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - assessment_name=assessment_name, - sub_assessment_name=sub_assessment_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecuritySubAssessment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_tasks_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_tasks_operations.py deleted file mode 100644 index 02923857ce43..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_tasks_operations.py +++ /dev/null @@ -1,522 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar, Union - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._tasks_operations import ( - build_get_resource_group_level_task_request, - build_get_subscription_level_task_request, - build_list_by_home_region_request, - build_list_by_resource_group_request, - build_list_request, - build_update_resource_group_level_task_state_request, - build_update_subscription_level_task_state_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class TasksOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`tasks` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, filter: Optional[str] = None, **kwargs: Any) -> AsyncItemPaged["_models.SecurityTask"]: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: An iterator like instance of either SecurityTask or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityTask] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.SecurityTaskList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityTaskList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_home_region( - self, asc_location: str, filter: Optional[str] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.SecurityTask"]: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: An iterator like instance of either SecurityTask or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityTask] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.SecurityTaskList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_home_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityTaskList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get_subscription_level_task( - self, asc_location: str, task_name: str, **kwargs: Any - ) -> _models.SecurityTask: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param task_name: Name of the task object, will be a GUID. Required. - :type task_name: str - :return: SecurityTask or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityTask - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.SecurityTask] = kwargs.pop("cls", None) - - _request = build_get_subscription_level_task_request( - asc_location=asc_location, - task_name=task_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityTask", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def update_subscription_level_task_state( - self, - asc_location: str, - task_name: str, - task_update_action_type: Union[str, _models.TaskUpdateActionType], - **kwargs: Any - ) -> None: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param task_name: Name of the task object, will be a GUID. Required. - :type task_name: str - :param task_update_action_type: Type of the action to do on the task. Known values are: - "Activate", "Dismiss", "Start", "Resolve", and "Close". Required. - :type task_update_action_type: str or ~azure.mgmt.security.models.TaskUpdateActionType - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_subscription_level_task_state_request( - asc_location=asc_location, - task_name=task_name, - task_update_action_type=task_update_action_type, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, asc_location: str, filter: Optional[str] = None, **kwargs: Any - ) -> AsyncItemPaged["_models.SecurityTask"]: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: An iterator like instance of either SecurityTask or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.SecurityTask] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.SecurityTaskList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityTaskList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get_resource_group_level_task( - self, resource_group_name: str, asc_location: str, task_name: str, **kwargs: Any - ) -> _models.SecurityTask: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param task_name: Name of the task object, will be a GUID. Required. - :type task_name: str - :return: SecurityTask or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityTask - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.SecurityTask] = kwargs.pop("cls", None) - - _request = build_get_resource_group_level_task_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - task_name=task_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityTask", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def update_resource_group_level_task_state( - self, - resource_group_name: str, - asc_location: str, - task_name: str, - task_update_action_type: Union[str, _models.TaskUpdateActionType], - **kwargs: Any - ) -> None: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param task_name: Name of the task object, will be a GUID. Required. - :type task_name: str - :param task_update_action_type: Type of the action to do on the task. Known values are: - "Activate", "Dismiss", "Start", "Resolve", and "Close". Required. - :type task_update_action_type: str or ~azure.mgmt.security.models.TaskUpdateActionType - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_resource_group_level_task_state_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - task_name=task_name, - task_update_action_type=task_update_action_type, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_topology_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_topology_operations.py deleted file mode 100644 index 64d14ff808b4..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_topology_operations.py +++ /dev/null @@ -1,258 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._topology_operations import build_get_request, build_list_by_home_region_request, build_list_request -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class TopologyOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`topology` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.TopologyResource"]: - """Gets a list that allows to build a topology view of a subscription. - - :return: An iterator like instance of either TopologyResource or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.TopologyResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.TopologyList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("TopologyList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_home_region(self, asc_location: str, **kwargs: Any) -> AsyncItemPaged["_models.TopologyResource"]: - """Gets a list that allows to build a topology view of a subscription and location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either TopologyResource or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.TopologyResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.TopologyList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_home_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("TopologyList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get( - self, resource_group_name: str, asc_location: str, topology_resource_name: str, **kwargs: Any - ) -> _models.TopologyResource: - """Gets a specific topology component. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param topology_resource_name: Name of a topology resources collection. Required. - :type topology_resource_name: str - :return: TopologyResource or the result of cls(response) - :rtype: ~azure.mgmt.security.models.TopologyResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.TopologyResource] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - topology_resource_name=topology_resource_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("TopologyResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_workspace_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_workspace_settings_operations.py deleted file mode 100644 index 420a6a217f93..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/aio/operations/_workspace_settings_operations.py +++ /dev/null @@ -1,474 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import AsyncPipelineClient -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ..._utils.serialization import Deserializer, Serializer -from ...operations._workspace_settings_operations import ( - build_create_request, - build_delete_request, - build_get_request, - build_list_request, - build_update_request, -) -from .._configuration import SecurityCenterConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -List = list - - -class WorkspaceSettingsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.aio.SecurityCenter`'s - :attr:`workspace_settings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncItemPaged["_models.WorkspaceSetting"]: - """Settings about where we should store your security data and logs. If the result is empty, it - means that no custom-workspace configuration was set. - - :return: An iterator like instance of either WorkspaceSetting or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.security.models.WorkspaceSetting] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.WorkspaceSettingList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("WorkspaceSettingList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get(self, workspace_setting_name: str, **kwargs: Any) -> _models.WorkspaceSetting: - """Settings about where we should store your security data and logs. If the result is empty, it - means that no custom-workspace configuration was set. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.WorkspaceSetting] = kwargs.pop("cls", None) - - _request = build_get_request( - workspace_setting_name=workspace_setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("WorkspaceSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create( - self, - workspace_setting_name: str, - workspace_setting: _models.WorkspaceSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.WorkspaceSetting: - """creating settings about where we should store your security data and logs. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :param workspace_setting: Security data setting object. Required. - :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create( - self, - workspace_setting_name: str, - workspace_setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.WorkspaceSetting: - """creating settings about where we should store your security data and logs. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :param workspace_setting: Security data setting object. Required. - :type workspace_setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create( - self, workspace_setting_name: str, workspace_setting: Union[_models.WorkspaceSetting, IO[bytes]], **kwargs: Any - ) -> _models.WorkspaceSetting: - """creating settings about where we should store your security data and logs. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :param workspace_setting: Security data setting object. Is either a WorkspaceSetting type or a - IO[bytes] type. Required. - :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting or IO[bytes] - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.WorkspaceSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(workspace_setting, (IOBase, bytes)): - _content = workspace_setting - else: - _json = self._serialize.body(workspace_setting, "WorkspaceSetting") - - _request = build_create_request( - workspace_setting_name=workspace_setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("WorkspaceSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - workspace_setting_name: str, - workspace_setting: _models.WorkspaceSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.WorkspaceSetting: - """Settings about where we should store your security data and logs. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :param workspace_setting: Security data setting object. Required. - :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - workspace_setting_name: str, - workspace_setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.WorkspaceSetting: - """Settings about where we should store your security data and logs. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :param workspace_setting: Security data setting object. Required. - :type workspace_setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, workspace_setting_name: str, workspace_setting: Union[_models.WorkspaceSetting, IO[bytes]], **kwargs: Any - ) -> _models.WorkspaceSetting: - """Settings about where we should store your security data and logs. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :param workspace_setting: Security data setting object. Is either a WorkspaceSetting type or a - IO[bytes] type. Required. - :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting or IO[bytes] - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.WorkspaceSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(workspace_setting, (IOBase, bytes)): - _content = workspace_setting - else: - _json = self._serialize.body(workspace_setting, "WorkspaceSetting") - - _request = build_update_request( - workspace_setting_name=workspace_setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("WorkspaceSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete(self, workspace_setting_name: str, **kwargs: Any) -> None: - """Deletes the custom workspace settings for this subscription. new VMs will report to the default - workspace. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - workspace_setting_name=workspace_setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/__init__.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/__init__.py index c926df57234a..8ff8590f497c 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/__init__.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/__init__.py @@ -3,7 +3,7 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- # pylint: disable=wrong-import-position @@ -14,53 +14,48 @@ from ._patch import * # pylint: disable=unused-wildcard-import -from ._models_py3 import ( # type: ignore - AadConnectivityState, +from ._models import ( # type: ignore AadExternalSecuritySolution, AadSolutionProperties, AccessTokenAuthentication, ActionableRemediation, - ActiveConnectionsNotInAllowedRange, AdditionalData, AdditionalWorkspacesProperties, + AdvancedThreatProtectionProperties, AdvancedThreatProtectionSetting, AgentlessConfiguration, Alert, AlertEntity, - AlertList, + AlertProperties, AlertPropertiesSupportingEvidence, AlertSimulatorBundlesRequestProperties, AlertSimulatorRequestBody, AlertSimulatorRequestProperties, + AlertSyncSettingProperties, AlertSyncSettings, AlertsSuppressionRule, - AlertsSuppressionRulesList, - AllowedConnectionsList, + AlertsSuppressionRuleProperties, AllowedConnectionsResource, + AllowedConnectionsResourceProperties, AllowlistCustomAlertRule, - AmqpC2DMessagesNotInAllowedRange, - AmqpC2DRejectedMessagesNotInAllowedRange, - AmqpD2CMessagesNotInAllowedRange, ApiCollection, - ApiCollectionList, + ApiCollectionProperties, Application, - ApplicationCondition, - ApplicationsList, + ApplicationProperties, ArcAutoProvisioning, ArcAutoProvisioningAws, ArcAutoProvisioningConfiguration, ArcAutoProvisioningGcp, + ArmErrorAdditionalInfo, AscLocation, - AscLocationList, AssessmentLinks, AssessmentStatus, AssessmentStatusResponse, AssignedAssessmentItem, AssignedComponentItem, AssignedStandardItem, - AssignedStandardItemAutoGenerated, Assignment, - AssignmentList, + AssignmentProperties, AssignmentPropertiesAdditionalData, AtaExternalSecuritySolution, AtaSolutionProperties, @@ -68,13 +63,13 @@ Authentication, Authorization, AutoProvisioningSetting, - AutoProvisioningSettingList, + AutoProvisioningSettingProperties, Automation, AutomationAction, AutomationActionEventHub, AutomationActionLogicApp, AutomationActionWorkspace, - AutomationList, + AutomationProperties, AutomationRuleSet, AutomationScope, AutomationSource, @@ -88,21 +83,15 @@ AzureDevOpsOrg, AzureDevOpsOrgListResponse, AzureDevOpsOrgProperties, - AzureDevOpsOrganizationConfiguration, AzureDevOpsProject, - AzureDevOpsProjectConfiguration, - AzureDevOpsProjectListResponse, AzureDevOpsProjectProperties, AzureDevOpsRepository, - AzureDevOpsRepositoryListResponse, AzureDevOpsRepositoryProperties, AzureDevOpsScopeEnvironmentData, AzureResourceDetails, AzureResourceIdentifier, AzureResourceLink, AzureServersSetting, - AzureTrackedResourceLocation, - BaseResourceConfiguration, Baseline, BaselineAdjustedResult, BenchmarkReference, @@ -113,60 +102,18 @@ CategoryConfiguration, CefExternalSecuritySolution, CefSolutionProperties, - CloudErrorAutoGenerated, - CloudErrorAutoGenerated10, - CloudErrorAutoGenerated11, - CloudErrorAutoGenerated12, - CloudErrorAutoGenerated13, - CloudErrorAutoGenerated14, - CloudErrorAutoGenerated15, - CloudErrorAutoGenerated16, - CloudErrorAutoGenerated17, - CloudErrorAutoGenerated18, - CloudErrorAutoGenerated19, - CloudErrorAutoGenerated2, - CloudErrorAutoGenerated20, - CloudErrorAutoGenerated3, - CloudErrorAutoGenerated4, - CloudErrorAutoGenerated5, - CloudErrorAutoGenerated6, - CloudErrorAutoGenerated7, - CloudErrorAutoGenerated8, - CloudErrorAutoGenerated9, + CloudError, CloudErrorBody, - CloudErrorBodyAutoGenerated, - CloudErrorBodyAutoGenerated10, - CloudErrorBodyAutoGenerated11, - CloudErrorBodyAutoGenerated12, - CloudErrorBodyAutoGenerated13, - CloudErrorBodyAutoGenerated14, - CloudErrorBodyAutoGenerated15, - CloudErrorBodyAutoGenerated16, - CloudErrorBodyAutoGenerated17, - CloudErrorBodyAutoGenerated18, - CloudErrorBodyAutoGenerated19, - CloudErrorBodyAutoGenerated2, - CloudErrorBodyAutoGenerated20, - CloudErrorBodyAutoGenerated3, - CloudErrorBodyAutoGenerated4, - CloudErrorBodyAutoGenerated5, - CloudErrorBodyAutoGenerated6, - CloudErrorBodyAutoGenerated7, - CloudErrorBodyAutoGenerated8, - CloudErrorBodyAutoGenerated9, CloudOffering, + CommonResourceDetails, Compliance, - ComplianceList, + ComplianceProperties, ComplianceResult, - ComplianceResultList, + ComplianceResultProperties, ComplianceSegment, - Components1Uu4J47SchemasSecurityassessmentpropertiesbasePropertiesRiskPropertiesPathsItemsPropertiesEdgesItems, - Condition, ConnectableResource, ConnectedResource, ConnectedWorkspace, - ConnectionFromIpNotAllowed, - ConnectionToIpNotAllowed, ContainerRegistryVulnerabilityProperties, CspmMonitorAwsOffering, CspmMonitorAwsOfferingNativeCloudConnection, @@ -179,12 +126,13 @@ CspmMonitorJFrogOffering, CustomAlertRule, CustomRecommendation, - CustomRecommendationsList, + CustomRecommendationProperties, + DataExportSettingProperties, DataExportSettings, DefenderCspmAwsOffering, DefenderCspmAwsOfferingCiem, - DefenderCspmAwsOfferingCiemDiscovery, - DefenderCspmAwsOfferingCiemOidc, + DefenderCspmAwsOfferingCiemCiemDiscovery, + DefenderCspmAwsOfferingCiemCiemOidc, DefenderCspmAwsOfferingDataSensitivityDiscovery, DefenderCspmAwsOfferingDatabasesDspm, DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S, @@ -239,173 +187,137 @@ DefenderForServersGcpOfferingVaAutoProvisioningConfiguration, DefenderForServersGcpOfferingVmScanners, DefenderForStorageSetting, - DefenderForStorageSettingList, DefenderForStorageSettingProperties, DenylistCustomAlertRule, DevOpsCapability, DevOpsConfiguration, - DevOpsConfigurationListResponse, DevOpsConfigurationProperties, DeviceSecurityGroup, - DeviceSecurityGroupList, - DirectMethodInvokesNotInAllowedRange, + DeviceSecurityGroupProperties, DiscoveredSecuritySolution, - DiscoveredSecuritySolutionList, + DiscoveredSecuritySolutionProperties, DockerHubEnvironmentData, - ETag, - EdgeIdentifiers, EnvironmentData, EnvironmentDetails, - ErrorAdditionalInfo, ErrorDetail, - ErrorDetailAutoGenerated, - ErrorDetailAutoGenerated2, ErrorResponse, - ErrorResponseAutoGenerated, - ErrorResponseAutoGenerated2, ExecuteGovernanceRuleParams, Extension, + ExtensionResource, ExternalSecuritySolution, - ExternalSecuritySolutionKind, - ExternalSecuritySolutionList, ExternalSecuritySolutionProperties, - FailedLocalLoginsNotInAllowedRange, - FileUploadsNotInAllowedRange, FilesScanSummary, GcpOrganizationalData, GcpOrganizationalDataMember, GcpOrganizationalDataOrganization, GcpProjectDetails, GcpProjectEnvironmentData, - GetSensitivitySettingsListResponse, GetSensitivitySettingsResponse, GetSensitivitySettingsResponseProperties, GetSensitivitySettingsResponsePropertiesMipInformation, GitHubOwner, - GitHubOwnerConfiguration, GitHubOwnerListResponse, GitHubOwnerProperties, GitHubRepository, - GitHubRepositoryListResponse, GitHubRepositoryProperties, GitLabGroup, - GitLabGroupConfiguration, GitLabGroupListResponse, GitLabGroupProperties, GitLabProject, - GitLabProjectListResponse, GitLabProjectProperties, GithubScopeEnvironmentData, GitlabScopeEnvironmentData, GovernanceAssignment, GovernanceAssignmentAdditionalData, - GovernanceAssignmentsList, + GovernanceAssignmentProperties, GovernanceEmailNotification, GovernanceRule, GovernanceRuleEmailNotification, - GovernanceRuleList, GovernanceRuleMetadata, GovernanceRuleOwnerSource, + GovernanceRuleProperties, HealthDataClassification, HealthReport, - HealthReportsList, - HttpC2DMessagesNotInAllowedRange, - HttpC2DRejectedMessagesNotInAllowedRange, - HttpD2CMessagesNotInAllowedRange, + HealthReportProperties, Identity, InfoType, InformationProtectionKeyword, InformationProtectionPolicy, - InformationProtectionPolicyList, + InformationProtectionPolicyProperties, InformationType, InventoryList, IoTSecurityAggregatedAlert, - IoTSecurityAggregatedAlertList, + IoTSecurityAggregatedAlertProperties, IoTSecurityAggregatedAlertPropertiesTopDevicesListItem, IoTSecurityAggregatedRecommendation, - IoTSecurityAggregatedRecommendationList, + IoTSecurityAggregatedRecommendationProperties, IoTSecurityAlertedDevice, IoTSecurityDeviceAlert, IoTSecurityDeviceRecommendation, IoTSecuritySolutionAnalyticsModel, IoTSecuritySolutionAnalyticsModelList, + IoTSecuritySolutionAnalyticsModelProperties, IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, IoTSecuritySolutionModel, - IoTSecuritySolutionsList, + IoTSecuritySolutionProperties, IoTSeverityMetrics, Issue, IssueCreationRequest, JFrogEnvironmentData, - JitNetworkAccessPoliciesList, JitNetworkAccessPolicy, JitNetworkAccessPolicyInitiatePort, JitNetworkAccessPolicyInitiateRequest, JitNetworkAccessPolicyInitiateVirtualMachine, + JitNetworkAccessPolicyProperties, JitNetworkAccessPolicyVirtualMachine, JitNetworkAccessPortRule, JitNetworkAccessRequest, JitNetworkAccessRequestPort, JitNetworkAccessRequestVirtualMachine, - Kind, Label, ListCustomAlertRule, - LocalUserNotAllowed, - Location, LogAnalyticsIdentifier, MalwareScan, MalwareScanProperties, MalwareScanningProperties, MdeOnboardingData, - MdeOnboardingDataList, - MqttC2DMessagesNotInAllowedRange, - MqttC2DRejectedMessagesNotInAllowedRange, - MqttD2CMessagesNotInAllowedRange, - NodeIdentifier, - OnPremiseResourceDetails, - OnPremiseSqlResourceDetails, + MdeOnboardingDataProperties, + NotificationsSource, + NotificationsSourceAlert, + NotificationsSourceAttackPath, OnUploadFilters, OnUploadProperties, Operation, OperationDisplay, - OperationListResult, OperationResultAutoGenerated, OperationStatus, - OperationStatusAutoGenerated, OperationStatusResult, - OperationStatusResultAutoGenerated, PartialAssessmentProperties, - Path, Pricing, - PricingList, + PricingProperties, PrivateEndpoint, PrivateEndpointConnection, - PrivateEndpointConnectionListResult, - PrivateLinkParameters, + PrivateEndpointConnectionProperties, + PrivateLinkGroupResource, + PrivateLinkProperties, PrivateLinkResource, - PrivateLinkResourceAutoGenerated, - PrivateLinkResourceListResult, + PrivateLinkResourceProperties, PrivateLinkServiceConnectionState, PrivateLinkUpdate, - PrivateLinksList, - ProcessNotAllowed, + Private_link_parameters, ProxyResource, QueryCheck, - QueuePurgesNotInAllowedRange, RecommendationConfigurationProperties, RegulatoryComplianceAssessment, - RegulatoryComplianceAssessmentList, + RegulatoryComplianceAssessmentProperties, RegulatoryComplianceControl, - RegulatoryComplianceControlList, + RegulatoryComplianceControlProperties, RegulatoryComplianceStandard, - RegulatoryComplianceStandardList, + RegulatoryComplianceStandardProperties, Remediation, RemediationEta, Resource, - ResourceAutoGenerated, - ResourceAutoGenerated2, - ResourceAutoGenerated3, ResourceDetails, - ResourceDetailsAutoGenerated, ResourceIdentifier, RuleResults, RuleResultsInput, @@ -415,60 +327,58 @@ ScanPropertiesV2, ScanResult, ScanResultProperties, - ScanResults, ScanSummary, ScanV2, - ScansV2, ScopeElement, + ScoreDetails, SecureScoreControlDefinitionItem, - SecureScoreControlDefinitionList, + SecureScoreControlDefinitionItemProperties, SecureScoreControlDefinitionSource, SecureScoreControlDetails, - SecureScoreControlList, - SecureScoreControlScore, + SecureScoreControlScoreDetails, SecureScoreItem, - SecureScoresList, + SecureScoreItemProperties, SecurityAssessment, - SecurityAssessmentList, - SecurityAssessmentMetadata, SecurityAssessmentMetadataPartnerData, SecurityAssessmentMetadataProperties, SecurityAssessmentMetadataPropertiesResponse, SecurityAssessmentMetadataPropertiesResponsePublishDates, SecurityAssessmentMetadataResponse, - SecurityAssessmentMetadataResponseList, SecurityAssessmentPartnerData, SecurityAssessmentProperties, SecurityAssessmentPropertiesBase, SecurityAssessmentPropertiesBaseRisk, SecurityAssessmentPropertiesBaseRiskPathsItem, - SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem, + SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem, + SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem, SecurityAssessmentPropertiesResponse, SecurityAssessmentResponse, SecurityConnector, - SecurityConnectorsList, + SecurityConnectorProperties, + SecurityContact, + SecurityContactProperties, + SecurityContactPropertiesNotificationsByRole, SecurityOperator, - SecurityOperatorList, SecuritySolution, - SecuritySolutionList, + SecuritySolutionProperties, SecuritySolutionsReferenceData, SecuritySolutionsReferenceDataList, + SecuritySolutionsReferenceDataProperties, SecurityStandard, - SecurityStandardList, + SecurityStandardProperties, SecuritySubAssessment, - SecuritySubAssessmentList, + SecuritySubAssessmentProperties, SecurityTask, - SecurityTaskList, SecurityTaskParameters, + SecurityTaskProperties, SensitiveDataDiscoveryProperties, SensitivityLabel, ServerVulnerabilityAssessment, - ServerVulnerabilityAssessmentsList, + ServerVulnerabilityAssessmentProperties, + ServerVulnerabilityAssessmentsAzureSettingProperties, ServerVulnerabilityAssessmentsSetting, - ServerVulnerabilityAssessmentsSettingsList, ServerVulnerabilityProperties, Setting, - SettingsList, SqlServerVulnerabilityProperties, SqlVulnerabilityAssessmentScanOperationResult, SqlVulnerabilityAssessmentScanOperationResultProperties, @@ -477,12 +387,12 @@ Standard, StandardAssignment, StandardAssignmentMetadata, + StandardAssignmentProperties, StandardAssignmentPropertiesAttestationData, StandardAssignmentPropertiesExemptionData, - StandardAssignmentsList, StandardComponentProperties, - StandardList, StandardMetadata, + StandardProperties, StatusAutoGenerated, SubAssessmentStatus, SuppressionAlertsScope, @@ -492,15 +402,13 @@ TargetBranchConfiguration, ThresholdCustomAlertRule, TimeWindowCustomAlertRule, - TopologyList, TopologyResource, + TopologyResourceProperties, TopologySingleResource, TopologySingleResourceChild, TopologySingleResourceParent, TrackedResource, - TrackedResourceAutoGenerated, - TwinUpdatesNotInAllowedRange, - UnauthorizedOperationsNotInAllowedRange, + UpdateIoTSecuritySolutionProperties, UpdateIotSecuritySolutionData, UpdateSensitivitySettingsRequest, UserDefinedResourcesProperties, @@ -511,10 +419,10 @@ VmScannersBaseConfiguration, VmScannersGcp, WorkspaceSetting, - WorkspaceSettingList, + WorkspaceSettingProperties, ) -from ._security_center_enums import ( # type: ignore +from ._enums import ( # type: ignore AadConnectivityStateEnum, ActionType, ActionableRemediationState, @@ -524,8 +432,8 @@ AlertSeverity, AlertStatus, AnnotateDefaultBranchState, - ApplicationConditionOperator, ApplicationSourceResourceType, + ArmActionType, AssessedResourceType, AssessmentStatusCode, AssessmentType, @@ -538,12 +446,10 @@ BundleType, Categories, CloudName, - Code, ConnectionType, ControlType, CreatedByType, DataSource, - DesiredOnboardingState, DevOpsProvisioningState, Effect, Enforce, @@ -554,7 +460,6 @@ ExpandEnum, ExportData, ExternalSecuritySolutionKindEnum, - GovernanceRuleConditionOperator, GovernanceRuleOwnerSourceType, GovernanceRuleSourceResourceType, GovernanceRuleType, @@ -567,10 +472,12 @@ InventoryListKind, IsEnabled, KindEnum, + MinimalRiskLevel, + MinimalSeverity, MipIntegrationStatus, OfferingType, OnboardingState, - OperationResult, + OperationResultStatus, Operator, OrganizationMembershipType, Origin, @@ -587,6 +494,7 @@ RecommendationType, ReportedSeverity, ResourceIdentifierType, + ResourceIdentityType, ResourceStatus, ResourcesCoverageStatus, RiskLevel, @@ -599,6 +507,8 @@ ScanState, ScanTriggerType, ScanningMode, + SecurityContactName, + SecurityContactRole, SecurityFamily, SecurityIssue, SecuritySolutionStatus, @@ -608,16 +518,16 @@ ServerVulnerabilityAssessmentsSettingKindName, SettingKind, SettingName, - SettingNameAutoGenerated, Severity, SeverityEnum, Source, + SourceType, SqlVulnerabilityAssessmentState, StandardSupportedCloud, StandardSupportedClouds, StandardType, State, - Status, + StatusEnum, StatusName, StatusReason, SubAssessmentStatusCode, @@ -636,52 +546,47 @@ from ._patch import patch_sdk as _patch_sdk __all__ = [ - "AadConnectivityState", "AadExternalSecuritySolution", "AadSolutionProperties", "AccessTokenAuthentication", "ActionableRemediation", - "ActiveConnectionsNotInAllowedRange", "AdditionalData", "AdditionalWorkspacesProperties", + "AdvancedThreatProtectionProperties", "AdvancedThreatProtectionSetting", "AgentlessConfiguration", "Alert", "AlertEntity", - "AlertList", + "AlertProperties", "AlertPropertiesSupportingEvidence", "AlertSimulatorBundlesRequestProperties", "AlertSimulatorRequestBody", "AlertSimulatorRequestProperties", + "AlertSyncSettingProperties", "AlertSyncSettings", "AlertsSuppressionRule", - "AlertsSuppressionRulesList", - "AllowedConnectionsList", + "AlertsSuppressionRuleProperties", "AllowedConnectionsResource", + "AllowedConnectionsResourceProperties", "AllowlistCustomAlertRule", - "AmqpC2DMessagesNotInAllowedRange", - "AmqpC2DRejectedMessagesNotInAllowedRange", - "AmqpD2CMessagesNotInAllowedRange", "ApiCollection", - "ApiCollectionList", + "ApiCollectionProperties", "Application", - "ApplicationCondition", - "ApplicationsList", + "ApplicationProperties", "ArcAutoProvisioning", "ArcAutoProvisioningAws", "ArcAutoProvisioningConfiguration", "ArcAutoProvisioningGcp", + "ArmErrorAdditionalInfo", "AscLocation", - "AscLocationList", "AssessmentLinks", "AssessmentStatus", "AssessmentStatusResponse", "AssignedAssessmentItem", "AssignedComponentItem", "AssignedStandardItem", - "AssignedStandardItemAutoGenerated", "Assignment", - "AssignmentList", + "AssignmentProperties", "AssignmentPropertiesAdditionalData", "AtaExternalSecuritySolution", "AtaSolutionProperties", @@ -689,13 +594,13 @@ "Authentication", "Authorization", "AutoProvisioningSetting", - "AutoProvisioningSettingList", + "AutoProvisioningSettingProperties", "Automation", "AutomationAction", "AutomationActionEventHub", "AutomationActionLogicApp", "AutomationActionWorkspace", - "AutomationList", + "AutomationProperties", "AutomationRuleSet", "AutomationScope", "AutomationSource", @@ -709,21 +614,15 @@ "AzureDevOpsOrg", "AzureDevOpsOrgListResponse", "AzureDevOpsOrgProperties", - "AzureDevOpsOrganizationConfiguration", "AzureDevOpsProject", - "AzureDevOpsProjectConfiguration", - "AzureDevOpsProjectListResponse", "AzureDevOpsProjectProperties", "AzureDevOpsRepository", - "AzureDevOpsRepositoryListResponse", "AzureDevOpsRepositoryProperties", "AzureDevOpsScopeEnvironmentData", "AzureResourceDetails", "AzureResourceIdentifier", "AzureResourceLink", "AzureServersSetting", - "AzureTrackedResourceLocation", - "BaseResourceConfiguration", "Baseline", "BaselineAdjustedResult", "BenchmarkReference", @@ -734,60 +633,18 @@ "CategoryConfiguration", "CefExternalSecuritySolution", "CefSolutionProperties", - "CloudErrorAutoGenerated", - "CloudErrorAutoGenerated10", - "CloudErrorAutoGenerated11", - "CloudErrorAutoGenerated12", - "CloudErrorAutoGenerated13", - "CloudErrorAutoGenerated14", - "CloudErrorAutoGenerated15", - "CloudErrorAutoGenerated16", - "CloudErrorAutoGenerated17", - "CloudErrorAutoGenerated18", - "CloudErrorAutoGenerated19", - "CloudErrorAutoGenerated2", - "CloudErrorAutoGenerated20", - "CloudErrorAutoGenerated3", - "CloudErrorAutoGenerated4", - "CloudErrorAutoGenerated5", - "CloudErrorAutoGenerated6", - "CloudErrorAutoGenerated7", - "CloudErrorAutoGenerated8", - "CloudErrorAutoGenerated9", + "CloudError", "CloudErrorBody", - "CloudErrorBodyAutoGenerated", - "CloudErrorBodyAutoGenerated10", - "CloudErrorBodyAutoGenerated11", - "CloudErrorBodyAutoGenerated12", - "CloudErrorBodyAutoGenerated13", - "CloudErrorBodyAutoGenerated14", - "CloudErrorBodyAutoGenerated15", - "CloudErrorBodyAutoGenerated16", - "CloudErrorBodyAutoGenerated17", - "CloudErrorBodyAutoGenerated18", - "CloudErrorBodyAutoGenerated19", - "CloudErrorBodyAutoGenerated2", - "CloudErrorBodyAutoGenerated20", - "CloudErrorBodyAutoGenerated3", - "CloudErrorBodyAutoGenerated4", - "CloudErrorBodyAutoGenerated5", - "CloudErrorBodyAutoGenerated6", - "CloudErrorBodyAutoGenerated7", - "CloudErrorBodyAutoGenerated8", - "CloudErrorBodyAutoGenerated9", "CloudOffering", + "CommonResourceDetails", "Compliance", - "ComplianceList", + "ComplianceProperties", "ComplianceResult", - "ComplianceResultList", + "ComplianceResultProperties", "ComplianceSegment", - "Components1Uu4J47SchemasSecurityassessmentpropertiesbasePropertiesRiskPropertiesPathsItemsPropertiesEdgesItems", - "Condition", "ConnectableResource", "ConnectedResource", "ConnectedWorkspace", - "ConnectionFromIpNotAllowed", - "ConnectionToIpNotAllowed", "ContainerRegistryVulnerabilityProperties", "CspmMonitorAwsOffering", "CspmMonitorAwsOfferingNativeCloudConnection", @@ -800,12 +657,13 @@ "CspmMonitorJFrogOffering", "CustomAlertRule", "CustomRecommendation", - "CustomRecommendationsList", + "CustomRecommendationProperties", + "DataExportSettingProperties", "DataExportSettings", "DefenderCspmAwsOffering", "DefenderCspmAwsOfferingCiem", - "DefenderCspmAwsOfferingCiemDiscovery", - "DefenderCspmAwsOfferingCiemOidc", + "DefenderCspmAwsOfferingCiemCiemDiscovery", + "DefenderCspmAwsOfferingCiemCiemOidc", "DefenderCspmAwsOfferingDataSensitivityDiscovery", "DefenderCspmAwsOfferingDatabasesDspm", "DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S", @@ -860,173 +718,137 @@ "DefenderForServersGcpOfferingVaAutoProvisioningConfiguration", "DefenderForServersGcpOfferingVmScanners", "DefenderForStorageSetting", - "DefenderForStorageSettingList", "DefenderForStorageSettingProperties", "DenylistCustomAlertRule", "DevOpsCapability", "DevOpsConfiguration", - "DevOpsConfigurationListResponse", "DevOpsConfigurationProperties", "DeviceSecurityGroup", - "DeviceSecurityGroupList", - "DirectMethodInvokesNotInAllowedRange", + "DeviceSecurityGroupProperties", "DiscoveredSecuritySolution", - "DiscoveredSecuritySolutionList", + "DiscoveredSecuritySolutionProperties", "DockerHubEnvironmentData", - "ETag", - "EdgeIdentifiers", "EnvironmentData", "EnvironmentDetails", - "ErrorAdditionalInfo", "ErrorDetail", - "ErrorDetailAutoGenerated", - "ErrorDetailAutoGenerated2", "ErrorResponse", - "ErrorResponseAutoGenerated", - "ErrorResponseAutoGenerated2", "ExecuteGovernanceRuleParams", "Extension", + "ExtensionResource", "ExternalSecuritySolution", - "ExternalSecuritySolutionKind", - "ExternalSecuritySolutionList", "ExternalSecuritySolutionProperties", - "FailedLocalLoginsNotInAllowedRange", - "FileUploadsNotInAllowedRange", "FilesScanSummary", "GcpOrganizationalData", "GcpOrganizationalDataMember", "GcpOrganizationalDataOrganization", "GcpProjectDetails", "GcpProjectEnvironmentData", - "GetSensitivitySettingsListResponse", "GetSensitivitySettingsResponse", "GetSensitivitySettingsResponseProperties", "GetSensitivitySettingsResponsePropertiesMipInformation", "GitHubOwner", - "GitHubOwnerConfiguration", "GitHubOwnerListResponse", "GitHubOwnerProperties", "GitHubRepository", - "GitHubRepositoryListResponse", "GitHubRepositoryProperties", "GitLabGroup", - "GitLabGroupConfiguration", "GitLabGroupListResponse", "GitLabGroupProperties", "GitLabProject", - "GitLabProjectListResponse", "GitLabProjectProperties", "GithubScopeEnvironmentData", "GitlabScopeEnvironmentData", "GovernanceAssignment", "GovernanceAssignmentAdditionalData", - "GovernanceAssignmentsList", + "GovernanceAssignmentProperties", "GovernanceEmailNotification", "GovernanceRule", "GovernanceRuleEmailNotification", - "GovernanceRuleList", "GovernanceRuleMetadata", "GovernanceRuleOwnerSource", + "GovernanceRuleProperties", "HealthDataClassification", "HealthReport", - "HealthReportsList", - "HttpC2DMessagesNotInAllowedRange", - "HttpC2DRejectedMessagesNotInAllowedRange", - "HttpD2CMessagesNotInAllowedRange", + "HealthReportProperties", "Identity", "InfoType", "InformationProtectionKeyword", "InformationProtectionPolicy", - "InformationProtectionPolicyList", + "InformationProtectionPolicyProperties", "InformationType", "InventoryList", "IoTSecurityAggregatedAlert", - "IoTSecurityAggregatedAlertList", + "IoTSecurityAggregatedAlertProperties", "IoTSecurityAggregatedAlertPropertiesTopDevicesListItem", "IoTSecurityAggregatedRecommendation", - "IoTSecurityAggregatedRecommendationList", + "IoTSecurityAggregatedRecommendationProperties", "IoTSecurityAlertedDevice", "IoTSecurityDeviceAlert", "IoTSecurityDeviceRecommendation", "IoTSecuritySolutionAnalyticsModel", "IoTSecuritySolutionAnalyticsModelList", + "IoTSecuritySolutionAnalyticsModelProperties", "IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem", "IoTSecuritySolutionModel", - "IoTSecuritySolutionsList", + "IoTSecuritySolutionProperties", "IoTSeverityMetrics", "Issue", "IssueCreationRequest", "JFrogEnvironmentData", - "JitNetworkAccessPoliciesList", "JitNetworkAccessPolicy", "JitNetworkAccessPolicyInitiatePort", "JitNetworkAccessPolicyInitiateRequest", "JitNetworkAccessPolicyInitiateVirtualMachine", + "JitNetworkAccessPolicyProperties", "JitNetworkAccessPolicyVirtualMachine", "JitNetworkAccessPortRule", "JitNetworkAccessRequest", "JitNetworkAccessRequestPort", "JitNetworkAccessRequestVirtualMachine", - "Kind", "Label", "ListCustomAlertRule", - "LocalUserNotAllowed", - "Location", "LogAnalyticsIdentifier", "MalwareScan", "MalwareScanProperties", "MalwareScanningProperties", "MdeOnboardingData", - "MdeOnboardingDataList", - "MqttC2DMessagesNotInAllowedRange", - "MqttC2DRejectedMessagesNotInAllowedRange", - "MqttD2CMessagesNotInAllowedRange", - "NodeIdentifier", - "OnPremiseResourceDetails", - "OnPremiseSqlResourceDetails", + "MdeOnboardingDataProperties", + "NotificationsSource", + "NotificationsSourceAlert", + "NotificationsSourceAttackPath", "OnUploadFilters", "OnUploadProperties", "Operation", "OperationDisplay", - "OperationListResult", "OperationResultAutoGenerated", "OperationStatus", - "OperationStatusAutoGenerated", "OperationStatusResult", - "OperationStatusResultAutoGenerated", "PartialAssessmentProperties", - "Path", "Pricing", - "PricingList", + "PricingProperties", "PrivateEndpoint", "PrivateEndpointConnection", - "PrivateEndpointConnectionListResult", - "PrivateLinkParameters", + "PrivateEndpointConnectionProperties", + "PrivateLinkGroupResource", + "PrivateLinkProperties", "PrivateLinkResource", - "PrivateLinkResourceAutoGenerated", - "PrivateLinkResourceListResult", + "PrivateLinkResourceProperties", "PrivateLinkServiceConnectionState", "PrivateLinkUpdate", - "PrivateLinksList", - "ProcessNotAllowed", + "Private_link_parameters", "ProxyResource", "QueryCheck", - "QueuePurgesNotInAllowedRange", "RecommendationConfigurationProperties", "RegulatoryComplianceAssessment", - "RegulatoryComplianceAssessmentList", + "RegulatoryComplianceAssessmentProperties", "RegulatoryComplianceControl", - "RegulatoryComplianceControlList", + "RegulatoryComplianceControlProperties", "RegulatoryComplianceStandard", - "RegulatoryComplianceStandardList", + "RegulatoryComplianceStandardProperties", "Remediation", "RemediationEta", "Resource", - "ResourceAutoGenerated", - "ResourceAutoGenerated2", - "ResourceAutoGenerated3", "ResourceDetails", - "ResourceDetailsAutoGenerated", "ResourceIdentifier", "RuleResults", "RuleResultsInput", @@ -1036,60 +858,58 @@ "ScanPropertiesV2", "ScanResult", "ScanResultProperties", - "ScanResults", "ScanSummary", "ScanV2", - "ScansV2", "ScopeElement", + "ScoreDetails", "SecureScoreControlDefinitionItem", - "SecureScoreControlDefinitionList", + "SecureScoreControlDefinitionItemProperties", "SecureScoreControlDefinitionSource", "SecureScoreControlDetails", - "SecureScoreControlList", - "SecureScoreControlScore", + "SecureScoreControlScoreDetails", "SecureScoreItem", - "SecureScoresList", + "SecureScoreItemProperties", "SecurityAssessment", - "SecurityAssessmentList", - "SecurityAssessmentMetadata", "SecurityAssessmentMetadataPartnerData", "SecurityAssessmentMetadataProperties", "SecurityAssessmentMetadataPropertiesResponse", "SecurityAssessmentMetadataPropertiesResponsePublishDates", "SecurityAssessmentMetadataResponse", - "SecurityAssessmentMetadataResponseList", "SecurityAssessmentPartnerData", "SecurityAssessmentProperties", "SecurityAssessmentPropertiesBase", "SecurityAssessmentPropertiesBaseRisk", "SecurityAssessmentPropertiesBaseRiskPathsItem", - "SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem", + "SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem", + "SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem", "SecurityAssessmentPropertiesResponse", "SecurityAssessmentResponse", "SecurityConnector", - "SecurityConnectorsList", + "SecurityConnectorProperties", + "SecurityContact", + "SecurityContactProperties", + "SecurityContactPropertiesNotificationsByRole", "SecurityOperator", - "SecurityOperatorList", "SecuritySolution", - "SecuritySolutionList", + "SecuritySolutionProperties", "SecuritySolutionsReferenceData", "SecuritySolutionsReferenceDataList", + "SecuritySolutionsReferenceDataProperties", "SecurityStandard", - "SecurityStandardList", + "SecurityStandardProperties", "SecuritySubAssessment", - "SecuritySubAssessmentList", + "SecuritySubAssessmentProperties", "SecurityTask", - "SecurityTaskList", "SecurityTaskParameters", + "SecurityTaskProperties", "SensitiveDataDiscoveryProperties", "SensitivityLabel", "ServerVulnerabilityAssessment", - "ServerVulnerabilityAssessmentsList", + "ServerVulnerabilityAssessmentProperties", + "ServerVulnerabilityAssessmentsAzureSettingProperties", "ServerVulnerabilityAssessmentsSetting", - "ServerVulnerabilityAssessmentsSettingsList", "ServerVulnerabilityProperties", "Setting", - "SettingsList", "SqlServerVulnerabilityProperties", "SqlVulnerabilityAssessmentScanOperationResult", "SqlVulnerabilityAssessmentScanOperationResultProperties", @@ -1098,12 +918,12 @@ "Standard", "StandardAssignment", "StandardAssignmentMetadata", + "StandardAssignmentProperties", "StandardAssignmentPropertiesAttestationData", "StandardAssignmentPropertiesExemptionData", - "StandardAssignmentsList", "StandardComponentProperties", - "StandardList", "StandardMetadata", + "StandardProperties", "StatusAutoGenerated", "SubAssessmentStatus", "SuppressionAlertsScope", @@ -1113,15 +933,13 @@ "TargetBranchConfiguration", "ThresholdCustomAlertRule", "TimeWindowCustomAlertRule", - "TopologyList", "TopologyResource", + "TopologyResourceProperties", "TopologySingleResource", "TopologySingleResourceChild", "TopologySingleResourceParent", "TrackedResource", - "TrackedResourceAutoGenerated", - "TwinUpdatesNotInAllowedRange", - "UnauthorizedOperationsNotInAllowedRange", + "UpdateIoTSecuritySolutionProperties", "UpdateIotSecuritySolutionData", "UpdateSensitivitySettingsRequest", "UserDefinedResourcesProperties", @@ -1132,7 +950,7 @@ "VmScannersBaseConfiguration", "VmScannersGcp", "WorkspaceSetting", - "WorkspaceSettingList", + "WorkspaceSettingProperties", "AadConnectivityStateEnum", "ActionType", "ActionableRemediationState", @@ -1142,8 +960,8 @@ "AlertSeverity", "AlertStatus", "AnnotateDefaultBranchState", - "ApplicationConditionOperator", "ApplicationSourceResourceType", + "ArmActionType", "AssessedResourceType", "AssessmentStatusCode", "AssessmentType", @@ -1156,12 +974,10 @@ "BundleType", "Categories", "CloudName", - "Code", "ConnectionType", "ControlType", "CreatedByType", "DataSource", - "DesiredOnboardingState", "DevOpsProvisioningState", "Effect", "Enforce", @@ -1172,7 +988,6 @@ "ExpandEnum", "ExportData", "ExternalSecuritySolutionKindEnum", - "GovernanceRuleConditionOperator", "GovernanceRuleOwnerSourceType", "GovernanceRuleSourceResourceType", "GovernanceRuleType", @@ -1185,10 +1000,12 @@ "InventoryListKind", "IsEnabled", "KindEnum", + "MinimalRiskLevel", + "MinimalSeverity", "MipIntegrationStatus", "OfferingType", "OnboardingState", - "OperationResult", + "OperationResultStatus", "Operator", "OrganizationMembershipType", "Origin", @@ -1205,6 +1022,7 @@ "RecommendationType", "ReportedSeverity", "ResourceIdentifierType", + "ResourceIdentityType", "ResourceStatus", "ResourcesCoverageStatus", "RiskLevel", @@ -1217,6 +1035,8 @@ "ScanState", "ScanTriggerType", "ScanningMode", + "SecurityContactName", + "SecurityContactRole", "SecurityFamily", "SecurityIssue", "SecuritySolutionStatus", @@ -1226,16 +1046,16 @@ "ServerVulnerabilityAssessmentsSettingKindName", "SettingKind", "SettingName", - "SettingNameAutoGenerated", "Severity", "SeverityEnum", "Source", + "SourceType", "SqlVulnerabilityAssessmentState", "StandardSupportedCloud", "StandardSupportedClouds", "StandardType", "State", - "Status", + "StatusEnum", "StatusName", "StatusReason", "SubAssessmentStatusCode", diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_security_center_enums.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_enums.py similarity index 71% rename from sdk/security/azure-mgmt-security/azure/mgmt/security/models/_security_center_enums.py rename to sdk/security/azure-mgmt-security/azure/mgmt/security/models/_enums.py index 00bdd7e22dc9..16e00d5e700c 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_security_center_enums.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_enums.py @@ -1,9 +1,9 @@ -# pylint: disable=too-many-lines +# pylint: disable=line-too-long,useless-suppression,too-many-lines # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- @@ -15,8 +15,11 @@ class AadConnectivityStateEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The connectivity state of the external AAD solution.""" DISCOVERED = "Discovered" + """Discovered.""" NOT_LICENSED = "NotLicensed" + """NotLicensed.""" CONNECTED = "Connected" + """Connected.""" class ActionableRemediationState(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -25,66 +28,80 @@ class ActionableRemediationState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ NONE = "None" + """None.""" DISABLED = "Disabled" + """Disabled.""" ENABLED = "Enabled" + """Enabled.""" class ActionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.""" + """Enum. Indicates the action type.""" - INTERNAL = "Internal" LOGIC_APP = "LogicApp" + """LogicApp.""" EVENT_HUB = "EventHub" + """EventHub.""" WORKSPACE = "Workspace" + """Workspace.""" + INTERNAL = "Internal" + """Internal.""" class AdditionalWorkspaceDataType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Data types sent to workspace.""" ALERTS = "Alerts" + """Alerts.""" RAW_EVENTS = "RawEvents" + """RawEvents.""" class AdditionalWorkspaceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Workspace type.""" SENTINEL = "Sentinel" + """Sentinel.""" class AgentlessEnablement(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Agentless Enablement states.""" DISABLED = "Disabled" + """Disabled.""" ENABLED = "Enabled" + """Enabled.""" NOT_APPLICABLE = "NotApplicable" + """NotApplicable.""" class AlertSeverity(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The risk level of the threat that was detected. Learn more: - https://docs.microsoft.com/en-us/azure/security-center/security-center-alerts-overview#how-are-alerts-classified. + `https://docs.microsoft.com/en-us/azure/security-center/security-center-alerts-overview#how-are-alerts-classified + `_. """ INFORMATIONAL = "Informational" - """Informational""" + """Informational.""" LOW = "Low" - """Low""" + """Low.""" MEDIUM = "Medium" - """Medium""" + """Medium.""" HIGH = "High" - """High""" + """High.""" class AlertStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The life cycle status of the alert.""" ACTIVE = "Active" - """An alert which doesn't specify a value is assigned the status 'Active'""" + """An alert which doesn't specify a value is assigned the status 'Active'.""" IN_PROGRESS = "InProgress" - """An alert which is in handling state""" + """An alert which is in handling state.""" RESOLVED = "Resolved" - """Alert closed after handling""" + """Alert closed after handling.""" DISMISSED = "Dismissed" - """Alert dismissed as false positive""" + """Alert dismissed as false positive.""" class AnnotateDefaultBranchState(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -95,47 +112,47 @@ class AnnotateDefaultBranchState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ DISABLED = "Disabled" + """Disabled.""" ENABLED = "Enabled" - - -class ApplicationConditionOperator(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The application Condition's Operator, for example Contains for id or In for list of possible - IDs, see examples. - """ - - CONTAINS = "Contains" - """Checks that the string value of the data defined in Property contains the given value""" - EQUALS = "Equals" - """Checks that the string value of the data defined in Property equals the given value""" - IN = "In" - """Checks that the string value of the data defined in Property equals any of the given values - (exact fit)""" + """Enabled.""" class ApplicationSourceResourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The application source, what it affects, e.g. Assessments.""" ASSESSMENTS = "Assessments" - """The source of the application is assessments""" + """The source of the application is assessments.""" + + +class ArmActionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal + only APIs. + """ + + INTERNAL = "Internal" + """Actions are for internal-only APIs.""" class AssessedResourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Sub-assessment resource type.""" SQL_SERVER_VULNERABILITY = "SqlServerVulnerability" + """SqlServerVulnerability.""" CONTAINER_REGISTRY_VULNERABILITY = "ContainerRegistryVulnerability" + """ContainerRegistryVulnerability.""" SERVER_VULNERABILITY = "ServerVulnerability" + """ServerVulnerability.""" class AssessmentStatusCode(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Programmatic code for the status of the assessment.""" HEALTHY = "Healthy" - """The resource is healthy""" + """The resource is healthy.""" UNHEALTHY = "Unhealthy" - """The resource has a security issue that needs to be addressed""" + """The resource has a security issue that needs to be addressed.""" NOT_APPLICABLE = "NotApplicable" - """Assessment for this resource did not happen""" + """Assessment for this resource did not happen.""" class AssessmentType(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -144,51 +161,58 @@ class AssessmentType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ UNKNOWN = "Unknown" - """Unknown assessment type""" + """Unknown assessment type.""" BUILT_IN = "BuiltIn" - """Microsoft Defender for Cloud managed assessments""" + """Microsoft Defender for Cloud managed assessments.""" CUSTOM = "Custom" - """User defined custom assessments""" + """User defined custom assessments.""" CUSTOM_POLICY = "CustomPolicy" """User defined policies that are automatically ingested from Azure Policy to Microsoft Defender - for Cloud""" + for Cloud.""" CUSTOMER_MANAGED = "CustomerManaged" """User assessments pushed directly by the user or other third party to Microsoft Defender for - Cloud""" + Cloud.""" BUILT_IN_POLICY = "BuiltInPolicy" - """Microsoft Defender for Cloud managed policies""" + """Microsoft Defender for Cloud managed policies.""" VERIFIED_PARTNER = "VerifiedPartner" - """Third party assessments that are verified by Microsoft Defender for Cloud""" + """Third party assessments that are verified by Microsoft Defender for Cloud.""" MANUAL_BUILT_IN_POLICY = "ManualBuiltInPolicy" - """Microsoft Defender for Cloud managed policies that are manually created by the user""" + """Microsoft Defender for Cloud managed policies that are manually created by the user.""" MANUAL_BUILT_IN = "ManualBuiltIn" - """Microsoft Defender for Cloud managed assessments that are manually created by the user""" + """Microsoft Defender for Cloud managed assessments that are manually created by the user.""" MANUAL_CUSTOM_POLICY = "ManualCustomPolicy" - """User defined policies that are manually created by the user""" + """User defined policies that are manually created by the user.""" DYNAMIC_BUILT_IN = "DynamicBuiltIn" - """Microsoft Defender for Cloud managed assessments that are dynamically created by the system""" + """Microsoft Defender for Cloud managed assessments that are dynamically created by the system.""" class AttestationComplianceState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Attest category of this assignment.""" UNKNOWN = "unknown" + """unknown.""" COMPLIANT = "compliant" + """compliant.""" NON_COMPLIANT = "nonCompliant" + """nonCompliant.""" class AuthenticationType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The authentication type.""" ACCESS_TOKEN = "AccessToken" + """AccessToken.""" class AutoDiscovery(str, Enum, metaclass=CaseInsensitiveEnumMeta): """AutoDiscovery states.""" DISABLED = "Disabled" + """Disabled.""" ENABLED = "Enabled" + """Enabled.""" NOT_APPLICABLE = "NotApplicable" + """NotApplicable.""" class AutomatedResponseType(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -204,9 +228,9 @@ class AutoProvision(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Describes what kind of security agent provisioning action to take.""" ON = "On" - """Install missing security agent on VMs automatically""" + """Install missing security agent on VMs automatically.""" OFF = "Off" - """Do not install security agent on the VMs automatically""" + """Do not install security agent on the VMs automatically.""" class BlobScanResultsOptions(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -222,87 +246,101 @@ class BundleType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Alert Simulator supported bundles.""" APP_SERVICES = "AppServices" + """AppServices.""" DNS = "DNS" + """DNS.""" KEY_VAULTS = "KeyVaults" + """KeyVaults.""" KUBERNETES_SERVICE = "KubernetesService" + """KubernetesService.""" RESOURCE_MANAGER = "ResourceManager" + """ResourceManager.""" SQL_SERVERS = "SqlServers" + """SqlServers.""" STORAGE_ACCOUNTS = "StorageAccounts" + """StorageAccounts.""" VIRTUAL_MACHINES = "VirtualMachines" + """VirtualMachines.""" COSMOS_DBS = "CosmosDbs" + """CosmosDbs.""" class Categories(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The categories of resource that is at risk when the assessment is unhealthy.""" COMPUTE = "Compute" + """Compute.""" NETWORKING = "Networking" + """Networking.""" DATA = "Data" + """Data.""" IDENTITY_AND_ACCESS = "IdentityAndAccess" + """IdentityAndAccess.""" IO_T = "IoT" + """IoT.""" CONTAINER = "Container" + """Container.""" APP_SERVICES = "AppServices" + """AppServices.""" class CloudName(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The multi cloud resource's cloud name.""" AZURE = "Azure" + """Azure.""" AWS = "AWS" + """AWS.""" GCP = "GCP" + """GCP.""" GITHUB = "Github" + """Github.""" AZURE_DEV_OPS = "AzureDevOps" + """AzureDevOps.""" GIT_LAB = "GitLab" + """GitLab.""" DOCKER_HUB = "DockerHub" + """DockerHub.""" J_FROG = "JFrog" - - -class Code(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The operation status code.""" - - SUCCEEDED = "Succeeded" - """Extension was created/updated successfully.""" - FAILED = "Failed" - """Extension was not created/updated successfully. See operation status message for more details.""" + """JFrog.""" class ConnectionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """ConnectionType.""" + """Type of ConnectionType.""" INTERNAL = "Internal" + """Internal.""" EXTERNAL = "External" + """External.""" class ControlType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The type of security control (for example, BuiltIn).""" BUILT_IN = "BuiltIn" - """Microsoft Defender for Cloud managed assessments""" + """Microsoft Defender for Cloud managed assessments.""" CUSTOM = "Custom" - """Non Microsoft Defender for Cloud managed assessments""" + """Non Microsoft Defender for Cloud managed assessments.""" class CreatedByType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The type of identity that created the resource.""" + """The kind of entity that created the resource.""" USER = "User" + """The entity was created by a user.""" APPLICATION = "Application" + """The entity was created by an application.""" MANAGED_IDENTITY = "ManagedIdentity" + """The entity was created by a managed identity.""" KEY = "Key" + """The entity was created by a key.""" class DataSource(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """DataSource.""" + """Type of DataSource.""" TWIN_DATA = "TwinData" - """Devices twin data""" - - -class DesiredOnboardingState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Onboarding states.""" - - DISABLED = "Disabled" - ENABLED = "Enabled" + """Devices twin data.""" class DevOpsProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -318,20 +356,30 @@ class DevOpsProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ SUCCEEDED = "Succeeded" + """Succeeded.""" FAILED = "Failed" + """Failed.""" CANCELED = "Canceled" + """Canceled.""" PENDING = "Pending" + """Pending.""" PENDING_DELETION = "PendingDeletion" + """PendingDeletion.""" DELETION_SUCCESS = "DeletionSuccess" + """DeletionSuccess.""" DELETION_FAILURE = "DeletionFailure" + """DeletionFailure.""" class Effect(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Expected effect of this assignment (Audit/Exempt/Attest).""" AUDIT = "Audit" + """Audit.""" EXEMPT = "Exempt" + """Exempt.""" ATTEST = "Attest" + """Attest.""" class Enforce(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -343,129 +391,147 @@ class Enforce(str, Enum, metaclass=CaseInsensitiveEnumMeta): FALSE = "False" """Allows the descendants of this scope to override the pricing configuration set on this scope - (allows setting inherited="False")""" + (allows setting inherited="False").""" TRUE = "True" - """Prevents overrides and forces the current scope's pricing configuration to all descendants""" + """Prevents overrides and forces the current scope's pricing configuration to all descendants.""" class EnvironmentType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The type of the environment data.""" AWS_ACCOUNT = "AwsAccount" + """AwsAccount.""" GCP_PROJECT = "GcpProject" + """GcpProject.""" GITHUB_SCOPE = "GithubScope" + """GithubScope.""" AZURE_DEV_OPS_SCOPE = "AzureDevOpsScope" + """AzureDevOpsScope.""" GITLAB_SCOPE = "GitlabScope" + """GitlabScope.""" DOCKER_HUB_ORGANIZATION = "DockerHubOrganization" + """DockerHubOrganization.""" J_FROG_ARTIFACTORY = "JFrogArtifactory" + """JFrogArtifactory.""" class EventSource(str, Enum, metaclass=CaseInsensitiveEnumMeta): """A valid event source type.""" ASSESSMENTS = "Assessments" + """Assessments.""" ASSESSMENTS_SNAPSHOT = "AssessmentsSnapshot" + """AssessmentsSnapshot.""" SUB_ASSESSMENTS = "SubAssessments" + """SubAssessments.""" SUB_ASSESSMENTS_SNAPSHOT = "SubAssessmentsSnapshot" + """SubAssessmentsSnapshot.""" ALERTS = "Alerts" + """Alerts.""" SECURE_SCORES = "SecureScores" + """SecureScores.""" SECURE_SCORES_SNAPSHOT = "SecureScoresSnapshot" + """SecureScoresSnapshot.""" SECURE_SCORE_CONTROLS = "SecureScoreControls" + """SecureScoreControls.""" SECURE_SCORE_CONTROLS_SNAPSHOT = "SecureScoreControlsSnapshot" + """SecureScoreControlsSnapshot.""" REGULATORY_COMPLIANCE_ASSESSMENT = "RegulatoryComplianceAssessment" + """RegulatoryComplianceAssessment.""" REGULATORY_COMPLIANCE_ASSESSMENT_SNAPSHOT = "RegulatoryComplianceAssessmentSnapshot" + """RegulatoryComplianceAssessmentSnapshot.""" ATTACK_PATHS = "AttackPaths" + """AttackPaths.""" ATTACK_PATHS_SNAPSHOT = "AttackPathsSnapshot" + """AttackPathsSnapshot.""" class ExemptionCategory(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Exemption category of this assignment.""" WAIVER = "waiver" + """waiver.""" MITIGATED = "mitigated" + """mitigated.""" class ExpandControlsEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """ExpandControlsEnum.""" + """Type of ExpandControlsEnum.""" DEFINITION = "definition" - """Add definition object for each control""" + """Add definition object for each control.""" class ExpandEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """ExpandEnum.""" + """Type of ExpandEnum.""" LINKS = "links" - """All links associated with an assessment""" + """All links associated with an assessment.""" METADATA = "metadata" - """Assessment metadata""" + """Assessment metadata.""" class ExportData(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """ExportData.""" + """Type of ExportData.""" RAW_EVENTS = "RawEvents" - """Agent raw events""" + """Agent raw events.""" class ExternalSecuritySolutionKindEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The kind of the external solution.""" CEF = "CEF" + """CEF.""" ATA = "ATA" + """ATA.""" AAD = "AAD" - - -class GovernanceRuleConditionOperator(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The governance rule Condition's Operator, for example Equals for severity or In for list of - assessments, see examples. - """ - - EQUALS = "Equals" - """Checks that the string value of the data defined in Property equals the given value - exact fit""" - IN = "In" - """Checks that the string value of the data defined in Property equals any of the given values - (exact fit)""" + """AAD.""" class GovernanceRuleOwnerSourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The owner type for the governance rule owner source.""" BY_TAG = "ByTag" - """The rule source type defined using resource tag""" + """The rule source type defined using resource tag.""" MANUALLY = "Manually" - """The rule source type defined manually""" + """The rule source type defined manually.""" class GovernanceRuleSourceResourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The governance rule source, what the rule affects, e.g. Assessments.""" ASSESSMENTS = "Assessments" - """The source of the governance rule is assessments""" + """The source of the governance rule is assessments.""" class GovernanceRuleType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The rule type of the governance rule, defines the source of the rule e.g. Integrated.""" INTEGRATED = "Integrated" - """The source of the rule type definition is integrated""" + """The source of the rule type definition is integrated.""" SERVICE_NOW = "ServiceNow" - """The source of the rule type definition is ServiceNow""" + """The source of the rule type definition is ServiceNow.""" class ImplementationEffort(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The implementation effort required to remediate this assessment.""" LOW = "Low" + """Low.""" MODERATE = "Moderate" + """Moderate.""" HIGH = "High" + """High.""" class InformationProtectionPolicyName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """InformationProtectionPolicyName.""" + """Type of InformationProtectionPolicyName.""" EFFECTIVE = "effective" + """effective.""" CUSTOM = "custom" + """custom.""" class Inherited(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -477,10 +543,10 @@ class Inherited(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ TRUE = "True" - """Indicates that the current scope is inheriting its pricing configuration from its parent""" + """Indicates that the current scope is inheriting its pricing configuration from its parent.""" FALSE = "False" """Indicates that the current scope sets its own pricing configuration and does not inherit it - from its parent""" + from its parent.""" class InheritFromParentState(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -491,7 +557,9 @@ class InheritFromParentState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ DISABLED = "Disabled" + """Disabled.""" ENABLED = "Enabled" + """Enabled.""" class Intent(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -500,7 +568,7 @@ class Intent(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ UNKNOWN = "Unknown" - """Unknown""" + """Unknown.""" PRE_ATTACK = "PreAttack" """PreAttack could be either an attempt to access a certain resource regardless of a malicious intent, or a failed attempt to gain access to a target system to gather information prior to @@ -557,66 +625,120 @@ class InventoryKind(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Types for inventory kind.""" AZURE_DEV_OPS_ORGANIZATION = "AzureDevOpsOrganization" + """AzureDevOpsOrganization.""" AZURE_DEV_OPS_PROJECT = "AzureDevOpsProject" + """AzureDevOpsProject.""" AZURE_DEV_OPS_REPOSITORY = "AzureDevOpsRepository" + """AzureDevOpsRepository.""" GIT_HUB_OWNER = "GitHubOwner" + """GitHubOwner.""" GIT_HUB_REPOSITORY = "GitHubRepository" + """GitHubRepository.""" class InventoryListKind(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Types for inventory list.""" INCLUSION = "Inclusion" + """Inclusion.""" EXCLUSION = "Exclusion" + """Exclusion.""" class IsEnabled(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Indicates whether the extension is enabled.""" TRUE = "True" - """Indicates the extension is enabled""" + """Indicates the extension is enabled.""" FALSE = "False" - """Indicates the extension is disabled""" + """Indicates the extension is disabled.""" class KindEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The kind of alert simulation.""" BUNDLES = "Bundles" - """Simulate alerts according to bundles""" + """Simulate alerts according to bundles.""" + + +class MinimalRiskLevel(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Defines the minimal attack path risk level which will be sent as email notifications.""" + + CRITICAL = "Critical" + """Get notifications on new attack paths with Critical risk level.""" + HIGH = "High" + """Get notifications on new attack paths with High or Critical risk level.""" + MEDIUM = "Medium" + """Get notifications on new attach paths with Medium, High or Critical risk level.""" + LOW = "Low" + """Get notifications on new attach paths with Low, Medium, High or Critical risk level.""" + + +class MinimalSeverity(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Defines the minimal alert severity which will be sent as email notifications.""" + + HIGH = "High" + """Get notifications on new alerts with High severity.""" + MEDIUM = "Medium" + """Get notifications on new alerts with Medium or High severity.""" + LOW = "Low" + """Get notifications on new alerts with Low, Medium or High severity.""" class MipIntegrationStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Microsoft information protection integration status.""" OK = "Ok" + """Ok.""" NO_CONSENT = "noConsent" + """noConsent.""" NO_AUTO_LABELING_RULES = "noAutoLabelingRules" + """noAutoLabelingRules.""" NO_MIP_LABELS = "noMipLabels" + """noMipLabels.""" class OfferingType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The type of the security offering.""" CSPM_MONITOR_AWS = "CspmMonitorAws" + """CspmMonitorAws.""" DEFENDER_FOR_CONTAINERS_AWS = "DefenderForContainersAws" + """DefenderForContainersAws.""" DEFENDER_FOR_SERVERS_AWS = "DefenderForServersAws" + """DefenderForServersAws.""" DEFENDER_FOR_DATABASES_AWS = "DefenderForDatabasesAws" + """DefenderForDatabasesAws.""" CSPM_MONITOR_GCP = "CspmMonitorGcp" + """CspmMonitorGcp.""" CSPM_MONITOR_GITHUB = "CspmMonitorGithub" + """CspmMonitorGithub.""" CSPM_MONITOR_AZURE_DEV_OPS = "CspmMonitorAzureDevOps" + """CspmMonitorAzureDevOps.""" DEFENDER_FOR_SERVERS_GCP = "DefenderForServersGcp" + """DefenderForServersGcp.""" DEFENDER_FOR_CONTAINERS_GCP = "DefenderForContainersGcp" + """DefenderForContainersGcp.""" DEFENDER_FOR_DATABASES_GCP = "DefenderForDatabasesGcp" + """DefenderForDatabasesGcp.""" DEFENDER_CSPM_AWS = "DefenderCspmAws" + """DefenderCspmAws.""" DEFENDER_CSPM_GCP = "DefenderCspmGcp" + """DefenderCspmGcp.""" CSPM_MONITOR_GIT_LAB = "CspmMonitorGitLab" + """CspmMonitorGitLab.""" CSPM_MONITOR_DOCKER_HUB = "CspmMonitorDockerHub" + """CspmMonitorDockerHub.""" DEFENDER_FOR_CONTAINERS_DOCKER_HUB = "DefenderForContainersDockerHub" + """DefenderForContainersDockerHub.""" DEFENDER_CSPM_DOCKER_HUB = "DefenderCspmDockerHub" + """DefenderCspmDockerHub.""" CSPM_MONITOR_J_FROG = "CspmMonitorJFrog" + """CspmMonitorJFrog.""" DEFENDER_FOR_CONTAINERS_J_FROG = "DefenderForContainersJFrog" + """DefenderForContainersJFrog.""" DEFENDER_CSPM_J_FROG = "DefenderCspmJFrog" + """DefenderCspmJFrog.""" class OnboardingState(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -630,20 +752,24 @@ class OnboardingState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ NOT_APPLICABLE = "NotApplicable" + """NotApplicable.""" ONBOARDED_BY_OTHER_CONNECTOR = "OnboardedByOtherConnector" + """OnboardedByOtherConnector.""" ONBOARDED = "Onboarded" + """Onboarded.""" NOT_ONBOARDED = "NotOnboarded" + """NotOnboarded.""" -class OperationResult(str, Enum, metaclass=CaseInsensitiveEnumMeta): +class OperationResultStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The status of the long run operation result of governance rule.""" SUCCEEDED = "Succeeded" - """The operation succeeded""" + """The operation succeeded.""" FAILED = "Failed" - """The operation failed""" + """The operation failed.""" CANCELED = "Canceled" - """The operation canceled""" + """The operation canceled.""" class Operator(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -652,30 +778,32 @@ class Operator(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ EQUALS = "Equals" - """Applies for decimal and non-decimal operands""" + """Applies for decimal and non-decimal operands.""" GREATER_THAN = "GreaterThan" - """Applies only for decimal operands""" + """Applies only for decimal operands.""" GREATER_THAN_OR_EQUAL_TO = "GreaterThanOrEqualTo" - """Applies only for decimal operands""" + """Applies only for decimal operands.""" LESSER_THAN = "LesserThan" - """Applies only for decimal operands""" + """Applies only for decimal operands.""" LESSER_THAN_OR_EQUAL_TO = "LesserThanOrEqualTo" - """Applies only for decimal operands""" + """Applies only for decimal operands.""" NOT_EQUALS = "NotEquals" - """Applies for decimal and non-decimal operands""" + """Applies for decimal and non-decimal operands.""" CONTAINS = "Contains" - """Applies only for non-decimal operands""" + """Applies only for non-decimal operands.""" STARTS_WITH = "StartsWith" - """Applies only for non-decimal operands""" + """Applies only for non-decimal operands.""" ENDS_WITH = "EndsWith" - """Applies only for non-decimal operands""" + """Applies only for non-decimal operands.""" class OrganizationMembershipType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The multi cloud account's membership type in the organization.""" MEMBER = "Member" + """Member.""" ORGANIZATION = "Organization" + """Organization.""" class Origin(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -684,8 +812,11 @@ class Origin(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ USER = "user" + """Indicates the operation is initiated by a user.""" SYSTEM = "system" + """Indicates the operation is initiated by a system.""" USER_SYSTEM = "user,system" + """Indicates the operation is initiated by a user or system.""" class PricingTier(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -695,9 +826,9 @@ class PricingTier(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ FREE = "Free" - """Get free Microsoft Defender for Cloud experience with basic security features""" + """Get free Microsoft Defender for Cloud experience with basic security features.""" STANDARD = "Standard" - """Get the standard Microsoft Defender for Cloud experience with advanced security features""" + """Get the standard Microsoft Defender for Cloud experience with advanced security features.""" class PrivateEndpointConnectionProvisioningState( # pylint: disable=name-too-long @@ -706,17 +837,24 @@ class PrivateEndpointConnectionProvisioningState( # pylint: disable=name-too-lo """The current provisioning state.""" SUCCEEDED = "Succeeded" + """Connection has been provisioned.""" CREATING = "Creating" + """Connection is being created.""" DELETING = "Deleting" + """Connection is being deleted.""" FAILED = "Failed" + """Connection provisioning has failed.""" class PrivateEndpointServiceConnectionStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The private endpoint connection status.""" PENDING = "Pending" + """Connection waiting for approval or rejection.""" APPROVED = "Approved" + """Connection approved.""" REJECTED = "Rejected" + """Connection Rejected.""" class PropertyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -725,42 +863,71 @@ class PropertyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ STRING = "String" + """String.""" INTEGER = "Integer" + """Integer.""" NUMBER = "Number" + """Number.""" BOOLEAN = "Boolean" + """Boolean.""" class ProtocolEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """ProtocolEnum.""" + """Type of ProtocolEnum.""" TCP = "TCP" + """TCP.""" UDP = "UDP" + """UDP.""" ALL = "*" + """ + + *.""" class ProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The security family provisioning State.""" + """The current provisioning state of the resource. Indicates the status of the last operation + performed on the resource. + """ SUCCEEDED = "Succeeded" - FAILED = "Failed" + """The resource has been successfully provisioned and is ready for use.""" + CREATING = "Creating" + """The resource is being created. This is a transitional state.""" UPDATING = "Updating" + """The resource is being updated. This is a transitional state.""" + DELETING = "Deleting" + """The resource is being deleted. This is a transitional state.""" + FAILED = "Failed" + """The last operation on the resource failed. Check the error details for more information.""" + CANCELED = "Canceled" + """The operation was canceled before completion.""" + IN_PROGRESS = "InProgress" + """InProgress.""" class PublicNetworkAccess(str, Enum, metaclass=CaseInsensitiveEnumMeta): """This determines if traffic is allowed over public network. By default it is disabled.""" ENABLED = "Enabled" + """Enabled.""" DISABLED = "Disabled" + """Disabled.""" class Rank(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The rank of the sensitivity label.""" NONE = "None" + """None.""" LOW = "Low" + """Low.""" MEDIUM = "Medium" + """Medium.""" HIGH = "High" + """High.""" CRITICAL = "Critical" + """Critical.""" class RecommendationConfigStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -769,15 +936,20 @@ class RecommendationConfigStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ DISABLED = "Disabled" + """Disabled.""" ENABLED = "Enabled" + """Enabled.""" class RecommendationSupportedClouds(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The cloud that the recommendation is supported on.""" AZURE = "Azure" + """Azure.""" AWS = "AWS" + """AWS.""" GCP = "GCP" + """GCP.""" class RecommendationType(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -833,9 +1005,13 @@ class ReportedSeverity(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Assessed alert severity.""" INFORMATIONAL = "Informational" + """Informational.""" LOW = "Low" + """Low.""" MEDIUM = "Medium" + """Medium.""" HIGH = "High" + """High.""" class ResourceIdentifierType(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -844,7 +1020,16 @@ class ResourceIdentifierType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ AZURE_RESOURCE = "AzureResource" + """AzureResource.""" LOG_ANALYTICS = "LogAnalytics" + """LogAnalytics.""" + + +class ResourceIdentityType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """ResourceIdentityType.""" + + SYSTEM_ASSIGNED = "SystemAssigned" + """SYSTEM_ASSIGNED.""" class ResourcesCoverageStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -870,23 +1055,28 @@ class ResourceStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The status of the resource regarding a single assessment.""" HEALTHY = "Healthy" - """This assessment on the resource is healthy""" + """This assessment on the resource is healthy.""" NOT_APPLICABLE = "NotApplicable" - """This assessment is not applicable to this resource""" + """This assessment is not applicable to this resource.""" OFF_BY_POLICY = "OffByPolicy" - """This assessment is turned off by policy on this subscription""" + """This assessment is turned off by policy on this subscription.""" NOT_HEALTHY = "NotHealthy" - """This assessment on the resource is not healthy""" + """This assessment on the resource is not healthy.""" class RiskLevel(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The risk level.""" NONE = "None" + """None.""" LOW = "Low" + """Low.""" MEDIUM = "Medium" + """Medium.""" HIGH = "High" + """High.""" CRITICAL = "Critical" + """Critical.""" class RuleCategory(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -895,11 +1085,17 @@ class RuleCategory(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ CODE = "Code" + """Code.""" ARTIFACTS = "Artifacts" + """Artifacts.""" DEPENDENCIES = "Dependencies" + """Dependencies.""" SECRETS = "Secrets" + """Secrets.""" IA_C = "IaC" + """IaC.""" CONTAINERS = "Containers" + """Containers.""" class RuleSeverity(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -921,8 +1117,11 @@ class RuleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Possible states of the rule.""" ENABLED = "Enabled" + """Enabled.""" DISABLED = "Disabled" + """Disabled.""" EXPIRED = "Expired" + """Expired.""" class RuleStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -942,19 +1141,20 @@ class RuleType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The rule type.""" BINARY = "Binary" - """Binary""" + """Binary.""" BASELINE_EXPECTED = "BaselineExpected" - """BaselineExpected""" + """BaselineExpected.""" POSITIVE_LIST = "PositiveList" - """PositiveList""" + """PositiveList.""" NEGATIVE_LIST = "NegativeList" - """NegativeList""" + """NegativeList.""" class ScanningMode(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The scanning mode for the VM scan.""" DEFAULT = "Default" + """Default.""" class ScanOperationStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -974,49 +1174,81 @@ class ScanState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The scan status.""" FAILED = "Failed" - """Failed""" + """Failed.""" FAILED_TO_RUN = "FailedToRun" - """FailedToRun""" + """FailedToRun.""" IN_PROGRESS = "InProgress" - """InProgress""" + """InProgress.""" PASSED = "Passed" - """Passed""" + """Passed.""" class ScanTriggerType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The scan trigger type.""" ON_DEMAND = "OnDemand" - """OnDemand""" + """OnDemand.""" RECURRING = "Recurring" - """Recurring""" + """Recurring.""" + + +class SecurityContactName(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Type of SecurityContactName.""" + + DEFAULT = "default" + """The single applicable name of the security contact object.""" + + +class SecurityContactRole(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """A possible role to configure sending security notification alerts to.""" + + ACCOUNT_ADMIN = "AccountAdmin" + """If enabled, send notification on new alerts to the account admins.""" + SERVICE_ADMIN = "ServiceAdmin" + """If enabled, send notification on new alerts to the service admins.""" + OWNER = "Owner" + """If enabled, send notification on new alerts to the subscription owners.""" + CONTRIBUTOR = "Contributor" + """If enabled, send notification on new alerts to the subscription contributors.""" class SecurityFamily(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The security family of the discovered solution.""" WAF = "Waf" + """Waf.""" NGFW = "Ngfw" + """Ngfw.""" SAAS_WAF = "SaasWaf" + """SaasWaf.""" VA = "Va" + """Va.""" class SecurityIssue(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The severity to relate to the assessments generated by this Recommendation.""" VULNERABILITY = "Vulnerability" + """Vulnerability.""" EXCESSIVE_PERMISSIONS = "ExcessivePermissions" + """ExcessivePermissions.""" ANONYMOUS_ACCESS = "AnonymousAccess" + """AnonymousAccess.""" NETWORK_EXPOSURE = "NetworkExposure" + """NetworkExposure.""" TRAFFIC_ENCRYPTION = "TrafficEncryption" + """TrafficEncryption.""" BEST_PRACTICES = "BestPractices" + """BestPractices.""" class SecuritySolutionStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Status of the IoT Security solution.""" ENABLED = "Enabled" + """Enabled.""" DISABLED = "Disabled" + """Disabled.""" class ServerVulnerabilityAssessmentPropertiesProvisioningState( # pylint: disable=name-too-long @@ -1025,10 +1257,15 @@ class ServerVulnerabilityAssessmentPropertiesProvisioningState( # pylint: disab """The provisioningState of the vulnerability assessment capability on the VM.""" SUCCEEDED = "Succeeded" + """Succeeded.""" FAILED = "Failed" + """Failed.""" CANCELED = "Canceled" + """Canceled.""" PROVISIONING = "Provisioning" + """Provisioning.""" DEPROVISIONING = "Deprovisioning" + """Deprovisioning.""" class ServerVulnerabilityAssessmentsAzureSettingSelectedProvider( # pylint: disable=name-too-long @@ -1046,328 +1283,512 @@ class ServerVulnerabilityAssessmentsSettingKind( # pylint: disable=name-too-lon """The kind of the server vulnerability assessments setting.""" AZURE_SERVERS_SETTING = "AzureServersSetting" + """AzureServersSetting.""" class ServerVulnerabilityAssessmentsSettingKindName( # pylint: disable=name-too-long str, Enum, metaclass=CaseInsensitiveEnumMeta ): - """ServerVulnerabilityAssessmentsSettingKindName.""" + """Type of ServerVulnerabilityAssessmentsSettingKindName.""" AZURE_SERVERS_SETTING = "azureServersSetting" + """azureServersSetting.""" class SettingKind(str, Enum, metaclass=CaseInsensitiveEnumMeta): """the kind of the settings string.""" DATA_EXPORT_SETTINGS = "DataExportSettings" + """DataExportSettings.""" ALERT_SUPPRESSION_SETTING = "AlertSuppressionSetting" + """AlertSuppressionSetting.""" ALERT_SYNC_SETTINGS = "AlertSyncSettings" + """AlertSyncSettings.""" class SettingName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """SettingName.""" + """Type of SettingName.""" MCAS = "MCAS" + """MCAS.""" WDATP = "WDATP" + """WDATP.""" WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW = "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW" + """WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW.""" WDATP_UNIFIED_SOLUTION = "WDATP_UNIFIED_SOLUTION" + """WDATP_UNIFIED_SOLUTION.""" SENTINEL = "Sentinel" - - -class SettingNameAutoGenerated(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """SettingNameAutoGenerated.""" - + """Sentinel.""" CURRENT = "current" """Name of the Defender for Storage Settings name.""" class Severity(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The sub-assessment severity level.""" + """The severity level of the assessment.""" LOW = "Low" + """Low.""" MEDIUM = "Medium" + """Medium.""" HIGH = "High" + """High.""" + CRITICAL = "Critical" + """Critical.""" class SeverityEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The severity to relate to the assessments generated by this Recommendation.""" HIGH = "High" + """High.""" MEDIUM = "Medium" + """Medium.""" LOW = "Low" + """Low.""" class Source(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The platform where the assessed resource resides.""" AZURE = "Azure" - """Resource is in Azure""" + """Resource is in Azure.""" ON_PREMISE = "OnPremise" - """Resource in an on premise machine connected to Azure cloud""" + """Resource in an on premise machine connected to Azure cloud.""" ON_PREMISE_SQL = "OnPremiseSql" - """SQL Resource in an on premise machine connected to Azure cloud""" + """SQL Resource in an on premise machine connected to Azure cloud.""" + AWS = "Aws" + """Aws.""" + GCP = "Gcp" + """Gcp.""" + + +class SourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """The source type that will trigger the notification.""" + + ALERT = "Alert" + """Alert.""" + ATTACK_PATH = "AttackPath" + """AttackPath.""" class SqlVulnerabilityAssessmentState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Represents the state of a SQL Vulnerability Assessment.""" ENABLED = "Enabled" - """Enabled""" + """Enabled.""" DISABLED = "Disabled" - """Disabled""" + """Disabled.""" class StandardSupportedCloud(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The cloud that the standard is supported on.""" AZURE = "Azure" + """Azure.""" AWS = "AWS" + """AWS.""" GCP = "GCP" + """GCP.""" class StandardSupportedClouds(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The cloud that the standard is supported on.""" AWS = "AWS" + """AWS.""" GCP = "GCP" + """GCP.""" class StandardType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Standard type (Custom or Default or Compliance only currently).""" CUSTOM = "Custom" + """Custom.""" DEFAULT = "Default" + """Default.""" COMPLIANCE = "Compliance" + """Compliance.""" class State(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Aggregative state based on the standard's supported controls states.""" PASSED = "Passed" - """All supported regulatory compliance controls in the given standard have a passed state""" + """All supported regulatory compliance controls in the given standard have a passed state.""" FAILED = "Failed" """At least one supported regulatory compliance control in the given standard has a state of - failed""" + failed.""" SKIPPED = "Skipped" - """All supported regulatory compliance controls in the given standard have a state of skipped""" + """All supported regulatory compliance controls in the given standard have a state of skipped.""" UNSUPPORTED = "Unsupported" - """No supported regulatory compliance data for the given standard""" + """No supported regulatory compliance data for the given standard.""" + ON = "On" + """Send notification on new alerts to the subscription's admins.""" + OFF = "Off" + """Don't send notification on new alerts to the subscription's admins.""" -class Status(str, Enum, metaclass=CaseInsensitiveEnumMeta): +class StatusEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The status of the port.""" REVOKED = "Revoked" + """Revoked.""" INITIATED = "Initiated" + """Initiated.""" class StatusName(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The status of the health report.""" HEALTHY = "Healthy" + """Healthy.""" NOT_HEALTHY = "NotHealthy" + """NotHealthy.""" NOT_APPLICABLE = "NotApplicable" + """NotApplicable.""" class StatusReason(str, Enum, metaclass=CaseInsensitiveEnumMeta): """A description of why the ``status`` has its value.""" EXPIRED = "Expired" + """Expired.""" USER_REQUESTED = "UserRequested" + """UserRequested.""" NEWER_REQUEST_INITIATED = "NewerRequestInitiated" + """NewerRequestInitiated.""" class SubAssessmentStatusCode(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Programmatic code for the status of the assessment.""" HEALTHY = "Healthy" - """The resource is healthy""" + """The resource is healthy.""" UNHEALTHY = "Unhealthy" - """The resource has a security issue that needs to be addressed""" + """The resource has a security issue that needs to be addressed.""" NOT_APPLICABLE = "NotApplicable" - """Assessment for this resource did not happen""" + """Assessment for this resource did not happen.""" class SubPlan(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The available sub plans.""" P1 = "P1" + """P1.""" P2 = "P2" + """P2.""" class Tactics(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Tactic of the assessment.""" RECONNAISSANCE = "Reconnaissance" + """Reconnaissance.""" RESOURCE_DEVELOPMENT = "Resource Development" + """Resource Development.""" INITIAL_ACCESS = "Initial Access" + """Initial Access.""" EXECUTION = "Execution" + """Execution.""" PERSISTENCE = "Persistence" + """Persistence.""" PRIVILEGE_ESCALATION = "Privilege Escalation" + """Privilege Escalation.""" DEFENSE_EVASION = "Defense Evasion" + """Defense Evasion.""" CREDENTIAL_ACCESS = "Credential Access" + """Credential Access.""" DISCOVERY = "Discovery" + """Discovery.""" LATERAL_MOVEMENT = "Lateral Movement" + """Lateral Movement.""" COLLECTION = "Collection" + """Collection.""" COMMAND_AND_CONTROL = "Command and Control" + """Command and Control.""" EXFILTRATION = "Exfiltration" + """Exfiltration.""" IMPACT = "Impact" + """Impact.""" class TaskUpdateActionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """TaskUpdateActionType.""" + """Type of TaskUpdateActionType.""" ACTIVATE = "Activate" + """Activate.""" DISMISS = "Dismiss" + """Dismiss.""" START = "Start" + """Start.""" RESOLVE = "Resolve" + """Resolve.""" CLOSE = "Close" + """Close.""" class Techniques(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Techniques of the assessment.""" ABUSE_ELEVATION_CONTROL_MECHANISM = "Abuse Elevation Control Mechanism" + """Abuse Elevation Control Mechanism.""" ACCESS_TOKEN_MANIPULATION = "Access Token Manipulation" + """Access Token Manipulation.""" ACCOUNT_DISCOVERY = "Account Discovery" + """Account Discovery.""" ACCOUNT_MANIPULATION = "Account Manipulation" + """Account Manipulation.""" ACTIVE_SCANNING = "Active Scanning" + """Active Scanning.""" APPLICATION_LAYER_PROTOCOL = "Application Layer Protocol" + """Application Layer Protocol.""" AUDIO_CAPTURE = "Audio Capture" + """Audio Capture.""" BOOT_OR_LOGON_AUTOSTART_EXECUTION = "Boot or Logon Autostart Execution" + """Boot or Logon Autostart Execution.""" BOOT_OR_LOGON_INITIALIZATION_SCRIPTS = "Boot or Logon Initialization Scripts" + """Boot or Logon Initialization Scripts.""" BRUTE_FORCE = "Brute Force" + """Brute Force.""" CLOUD_INFRASTRUCTURE_DISCOVERY = "Cloud Infrastructure Discovery" + """Cloud Infrastructure Discovery.""" CLOUD_SERVICE_DASHBOARD = "Cloud Service Dashboard" + """Cloud Service Dashboard.""" CLOUD_SERVICE_DISCOVERY = "Cloud Service Discovery" + """Cloud Service Discovery.""" COMMAND_AND_SCRIPTING_INTERPRETER = "Command and Scripting Interpreter" + """Command and Scripting Interpreter.""" COMPROMISE_CLIENT_SOFTWARE_BINARY = "Compromise Client Software Binary" + """Compromise Client Software Binary.""" COMPROMISE_INFRASTRUCTURE = "Compromise Infrastructure" + """Compromise Infrastructure.""" CONTAINER_AND_RESOURCE_DISCOVERY = "Container and Resource Discovery" + """Container and Resource Discovery.""" CREATE_ACCOUNT = "Create Account" + """Create Account.""" CREATE_OR_MODIFY_SYSTEM_PROCESS = "Create or Modify System Process" + """Create or Modify System Process.""" CREDENTIALS_FROM_PASSWORD_STORES = "Credentials from Password Stores" + """Credentials from Password Stores.""" DATA_DESTRUCTION = "Data Destruction" + """Data Destruction.""" DATA_ENCRYPTED_FOR_IMPACT = "Data Encrypted for Impact" + """Data Encrypted for Impact.""" DATA_FROM_CLOUD_STORAGE_OBJECT = "Data from Cloud Storage Object" + """Data from Cloud Storage Object.""" DATA_FROM_CONFIGURATION_REPOSITORY = "Data from Configuration Repository" + """Data from Configuration Repository.""" DATA_FROM_INFORMATION_REPOSITORIES = "Data from Information Repositories" + """Data from Information Repositories.""" DATA_FROM_LOCAL_SYSTEM = "Data from Local System" + """Data from Local System.""" DATA_MANIPULATION = "Data Manipulation" + """Data Manipulation.""" DATA_STAGED = "Data Staged" + """Data Staged.""" DEFACEMENT = "Defacement" + """Defacement.""" DEOBFUSCATE_DECODE_FILES_OR_INFORMATION = "Deobfuscate/Decode Files or Information" + """Deobfuscate/Decode Files or Information.""" DISK_WIPE = "Disk Wipe" + """Disk Wipe.""" DOMAIN_TRUST_DISCOVERY = "Domain Trust Discovery" + """Domain Trust Discovery.""" DRIVE_BY_COMPROMISE = "Drive-by Compromise" + """Drive-by Compromise.""" DYNAMIC_RESOLUTION = "Dynamic Resolution" + """Dynamic Resolution.""" ENDPOINT_DENIAL_OF_SERVICE = "Endpoint Denial of Service" + """Endpoint Denial of Service.""" EVENT_TRIGGERED_EXECUTION = "Event Triggered Execution" + """Event Triggered Execution.""" EXFILTRATION_OVER_ALTERNATIVE_PROTOCOL = "Exfiltration Over Alternative Protocol" + """Exfiltration Over Alternative Protocol.""" EXPLOIT_PUBLIC_FACING_APPLICATION = "Exploit Public-Facing Application" + """Exploit Public-Facing Application.""" EXPLOITATION_FOR_CLIENT_EXECUTION = "Exploitation for Client Execution" + """Exploitation for Client Execution.""" EXPLOITATION_FOR_CREDENTIAL_ACCESS = "Exploitation for Credential Access" + """Exploitation for Credential Access.""" EXPLOITATION_FOR_DEFENSE_EVASION = "Exploitation for Defense Evasion" + """Exploitation for Defense Evasion.""" EXPLOITATION_FOR_PRIVILEGE_ESCALATION = "Exploitation for Privilege Escalation" + """Exploitation for Privilege Escalation.""" EXPLOITATION_OF_REMOTE_SERVICES = "Exploitation of Remote Services" + """Exploitation of Remote Services.""" EXTERNAL_REMOTE_SERVICES = "External Remote Services" + """External Remote Services.""" FALLBACK_CHANNELS = "Fallback Channels" + """Fallback Channels.""" FILE_AND_DIRECTORY_DISCOVERY = "File and Directory Discovery" + """File and Directory Discovery.""" GATHER_VICTIM_NETWORK_INFORMATION = "Gather Victim Network Information" + """Gather Victim Network Information.""" HIDE_ARTIFACTS = "Hide Artifacts" + """Hide Artifacts.""" HIJACK_EXECUTION_FLOW = "Hijack Execution Flow" + """Hijack Execution Flow.""" IMPAIR_DEFENSES = "Impair Defenses" + """Impair Defenses.""" IMPLANT_CONTAINER_IMAGE = "Implant Container Image" + """Implant Container Image.""" INDICATOR_REMOVAL_ON_HOST = "Indicator Removal on Host" + """Indicator Removal on Host.""" INDIRECT_COMMAND_EXECUTION = "Indirect Command Execution" + """Indirect Command Execution.""" INGRESS_TOOL_TRANSFER = "Ingress Tool Transfer" + """Ingress Tool Transfer.""" INPUT_CAPTURE = "Input Capture" + """Input Capture.""" INTER_PROCESS_COMMUNICATION = "Inter-Process Communication" + """Inter-Process Communication.""" LATERAL_TOOL_TRANSFER = "Lateral Tool Transfer" + """Lateral Tool Transfer.""" MAN_IN_THE_MIDDLE = "Man-in-the-Middle" + """Man-in-the-Middle.""" MASQUERADING = "Masquerading" + """Masquerading.""" MODIFY_AUTHENTICATION_PROCESS = "Modify Authentication Process" + """Modify Authentication Process.""" MODIFY_REGISTRY = "Modify Registry" + """Modify Registry.""" NETWORK_DENIAL_OF_SERVICE = "Network Denial of Service" + """Network Denial of Service.""" NETWORK_SERVICE_SCANNING = "Network Service Scanning" + """Network Service Scanning.""" NETWORK_SNIFFING = "Network Sniffing" + """Network Sniffing.""" NON_APPLICATION_LAYER_PROTOCOL = "Non-Application Layer Protocol" + """Non-Application Layer Protocol.""" NON_STANDARD_PORT = "Non-Standard Port" + """Non-Standard Port.""" OBTAIN_CAPABILITIES = "Obtain Capabilities" + """Obtain Capabilities.""" OBFUSCATED_FILES_OR_INFORMATION = "Obfuscated Files or Information" + """Obfuscated Files or Information.""" OFFICE_APPLICATION_STARTUP = "Office Application Startup" + """Office Application Startup.""" OS_CREDENTIAL_DUMPING = "OS Credential Dumping" + """OS Credential Dumping.""" PERMISSION_GROUPS_DISCOVERY = "Permission Groups Discovery" + """Permission Groups Discovery.""" PHISHING = "Phishing" + """Phishing.""" PRE_OS_BOOT = "Pre-OS Boot" + """Pre-OS Boot.""" PROCESS_DISCOVERY = "Process Discovery" + """Process Discovery.""" PROCESS_INJECTION = "Process Injection" + """Process Injection.""" PROTOCOL_TUNNELING = "Protocol Tunneling" + """Protocol Tunneling.""" PROXY = "Proxy" + """Proxy.""" QUERY_REGISTRY = "Query Registry" + """Query Registry.""" REMOTE_ACCESS_SOFTWARE = "Remote Access Software" + """Remote Access Software.""" REMOTE_SERVICE_SESSION_HIJACKING = "Remote Service Session Hijacking" + """Remote Service Session Hijacking.""" REMOTE_SERVICES = "Remote Services" + """Remote Services.""" REMOTE_SYSTEM_DISCOVERY = "Remote System Discovery" + """Remote System Discovery.""" RESOURCE_HIJACKING = "Resource Hijacking" + """Resource Hijacking.""" SCHEDULED_TASK_JOB = "Scheduled Task/Job" + """Scheduled Task/Job.""" SCREEN_CAPTURE = "Screen Capture" + """Screen Capture.""" SEARCH_VICTIM_OWNED_WEBSITES = "Search Victim-Owned Websites" + """Search Victim-Owned Websites.""" SERVER_SOFTWARE_COMPONENT = "Server Software Component" + """Server Software Component.""" SERVICE_STOP = "Service Stop" + """Service Stop.""" SIGNED_BINARY_PROXY_EXECUTION = "Signed Binary Proxy Execution" + """Signed Binary Proxy Execution.""" SOFTWARE_DEPLOYMENT_TOOLS = "Software Deployment Tools" + """Software Deployment Tools.""" SQL_STORED_PROCEDURES = "SQL Stored Procedures" + """SQL Stored Procedures.""" STEAL_OR_FORGE_KERBEROS_TICKETS = "Steal or Forge Kerberos Tickets" + """Steal or Forge Kerberos Tickets.""" SUBVERT_TRUST_CONTROLS = "Subvert Trust Controls" + """Subvert Trust Controls.""" SUPPLY_CHAIN_COMPROMISE = "Supply Chain Compromise" + """Supply Chain Compromise.""" SYSTEM_INFORMATION_DISCOVERY = "System Information Discovery" + """System Information Discovery.""" TAINT_SHARED_CONTENT = "Taint Shared Content" + """Taint Shared Content.""" TRAFFIC_SIGNALING = "Traffic Signaling" + """Traffic Signaling.""" TRANSFER_DATA_TO_CLOUD_ACCOUNT = "Transfer Data to Cloud Account" + """Transfer Data to Cloud Account.""" TRUSTED_RELATIONSHIP = "Trusted Relationship" + """Trusted Relationship.""" UNSECURED_CREDENTIALS = "Unsecured Credentials" + """Unsecured Credentials.""" USER_EXECUTION = "User Execution" + """User Execution.""" VALID_ACCOUNTS = "Valid Accounts" + """Valid Accounts.""" WINDOWS_MANAGEMENT_INSTRUMENTATION = "Windows Management Instrumentation" + """Windows Management Instrumentation.""" FILE_AND_DIRECTORY_PERMISSIONS_MODIFICATION = "File and Directory Permissions Modification" + """File and Directory Permissions Modification.""" class Threats(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Threats impact of the assessment.""" ACCOUNT_BREACH = "accountBreach" + """accountBreach.""" DATA_EXFILTRATION = "dataExfiltration" + """dataExfiltration.""" DATA_SPILLAGE = "dataSpillage" + """dataSpillage.""" MALICIOUS_INSIDER = "maliciousInsider" + """maliciousInsider.""" ELEVATION_OF_PRIVILEGE = "elevationOfPrivilege" + """elevationOfPrivilege.""" THREAT_RESISTANCE = "threatResistance" + """threatResistance.""" MISSING_COVERAGE = "missingCoverage" + """missingCoverage.""" DENIAL_OF_SERVICE = "denialOfService" + """denialOfService.""" class Type(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or 'Qualys'.""" QUALYS = "Qualys" + """Qualys.""" TVM = "TVM" + """TVM.""" class UnmaskedIpLoggingStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Unmasked IP address logging status.""" DISABLED = "Disabled" - """Unmasked IP logging is disabled""" + """Unmasked IP logging is disabled.""" ENABLED = "Enabled" - """Unmasked IP logging is enabled""" + """Unmasked IP logging is enabled.""" class UserImpact(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The user impact of the assessment.""" LOW = "Low" + """Low.""" MODERATE = "Moderate" + """Moderate.""" HIGH = "High" + """High.""" class ValueType(str, Enum, metaclass=CaseInsensitiveEnumMeta): diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_models.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_models.py new file mode 100644 index 000000000000..a0a6156c2dcc --- /dev/null +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_models.py @@ -0,0 +1,19019 @@ +# pylint: disable=line-too-long,useless-suppression,too-many-lines +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +# pylint: disable=useless-super-delegation + +import datetime +from typing import Any, Literal, Mapping, Optional, TYPE_CHECKING, Union, overload + +from .._utils.model_base import Model as _Model, rest_discriminator, rest_field +from ._enums import ( + ActionType, + AssessedResourceType, + AuthenticationType, + EnvironmentType, + ExternalSecuritySolutionKindEnum, + KindEnum, + OfferingType, + OrganizationMembershipType, + ResourceIdentifierType, + ServerVulnerabilityAssessmentsSettingKind, + SettingKind, + Source, + SourceType, +) + +if TYPE_CHECKING: + from .. import models as _models + + +class Resource(_Model): + """Resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + """ + + id: Optional[str] = rest_field(visibility=["read"]) + """Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.""" + name: Optional[str] = rest_field(visibility=["read"]) + """The name of the resource.""" + type: Optional[str] = rest_field(visibility=["read"]) + """The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or + \"Microsoft.Storage/storageAccounts\".""" + system_data: Optional["_models.SystemData"] = rest_field(name="systemData", visibility=["read"]) + """Azure Resource Manager metadata containing createdBy and modifiedBy information.""" + + +class ProxyResource(Resource): + """Proxy Resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + """ + + +class ExternalSecuritySolution(ProxyResource): + """Represents a security solution external to Microsoft Defender for Cloud which sends information + to an OMS workspace and whose data is displayed by Microsoft Defender for Cloud. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AadExternalSecuritySolution, AtaExternalSecuritySolution, CefExternalSecuritySolution + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: The resource-specific properties for this resource. + :vartype properties: any + :ivar kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". + :vartype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum + :ivar location: Location where the resource is stored. Required. + :vartype location: str + """ + + __mapping__: dict[str, _Model] = {} + properties: Optional[Any] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The resource-specific properties for this resource.""" + kind: str = rest_discriminator(name="kind", visibility=["read", "create", "update", "delete", "query"]) + """The kind of the external solution. Known values are: \"CEF\", \"ATA\", and \"AAD\".""" + location: str = rest_field(visibility=["read"]) + """Location where the resource is stored. Required.""" + + @overload + def __init__( + self, + *, + properties: Optional[Any] = None, + kind: str = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AadExternalSecuritySolution(ExternalSecuritySolution, discriminator="AAD"): + """Represents an AAD identity protection solution which sends logs to an OMS workspace. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar location: Location where the resource is stored. Required. + :vartype location: str + :ivar properties: The external security solution properties for AAD solutions. + :vartype properties: ~azure.mgmt.security.models.AadSolutionProperties + :ivar kind: Required. AAD. + :vartype kind: str or ~azure.mgmt.security.models.AAD + """ + + properties: Optional["_models.AadSolutionProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The external security solution properties for AAD solutions.""" + kind: Literal[ExternalSecuritySolutionKindEnum.AAD] = rest_discriminator(name="kind", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Required. AAD.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.AadSolutionProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.kind = ExternalSecuritySolutionKindEnum.AAD # type: ignore + + +class AadSolutionProperties(_Model): + """The external security solution properties for AAD solutions. + + :ivar device_vendor: + :vartype device_vendor: str + :ivar device_type: + :vartype device_type: str + :ivar workspace: Represents an OMS workspace to which the solution is connected. + :vartype workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :ivar connectivity_state: The connectivity state of the external AAD solution. Known values + are: "Discovered", "NotLicensed", and "Connected". + :vartype connectivity_state: str or ~azure.mgmt.security.models.AadConnectivityStateEnum + """ + + device_vendor: Optional[str] = rest_field( + name="deviceVendor", visibility=["read", "create", "update", "delete", "query"] + ) + device_type: Optional[str] = rest_field( + name="deviceType", visibility=["read", "create", "update", "delete", "query"] + ) + workspace: Optional["_models.ConnectedWorkspace"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Represents an OMS workspace to which the solution is connected.""" + connectivity_state: Optional[Union[str, "_models.AadConnectivityStateEnum"]] = rest_field( + name="connectivityState", visibility=["read", "create", "update", "delete", "query"] + ) + """The connectivity state of the external AAD solution. Known values are: \"Discovered\", + \"NotLicensed\", and \"Connected\".""" + + @overload + def __init__( + self, + *, + device_vendor: Optional[str] = None, + device_type: Optional[str] = None, + workspace: Optional["_models.ConnectedWorkspace"] = None, + connectivity_state: Optional[Union[str, "_models.AadConnectivityStateEnum"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Authentication(_Model): + """The environment authentication details. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AccessTokenAuthentication + + :ivar authentication_type: The authentication type. Required. "AccessToken" + :vartype authentication_type: str or ~azure.mgmt.security.models.AuthenticationType + """ + + __mapping__: dict[str, _Model] = {} + authentication_type: str = rest_discriminator( + name="authenticationType", visibility=["read", "create", "update", "delete", "query"] + ) + """The authentication type. Required. \"AccessToken\"""" + + @overload + def __init__( + self, + *, + authentication_type: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AccessTokenAuthentication(Authentication, discriminator="AccessToken"): + """The environment authentication details. + + :ivar username: The user name that will be used while authenticating with the onboarded + environment. + :vartype username: str + :ivar access_token: The access token that will be used while authenticating with the onboarded + environment. + :vartype access_token: str + :ivar authentication_type: The authentication type. Required. AccessToken. + :vartype authentication_type: str or ~azure.mgmt.security.models.ACCESS_TOKEN + """ + + username: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The user name that will be used while authenticating with the onboarded environment.""" + access_token: Optional[str] = rest_field( + name="accessToken", visibility=["read", "create", "update", "delete", "query"] + ) + """The access token that will be used while authenticating with the onboarded environment.""" + authentication_type: Literal[AuthenticationType.ACCESS_TOKEN] = rest_discriminator(name="authenticationType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The authentication type. Required. AccessToken.""" + + @overload + def __init__( + self, + *, + username: Optional[str] = None, + access_token: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.authentication_type = AuthenticationType.ACCESS_TOKEN # type: ignore + + +class ActionableRemediation(_Model): + """Configuration payload for PR Annotations. + + :ivar state: ActionableRemediation Setting. None - the setting was never set. Enabled - + ActionableRemediation is enabled. Disabled - ActionableRemediation is disabled. Known values + are: "None", "Disabled", and "Enabled". + :vartype state: str or ~azure.mgmt.security.models.ActionableRemediationState + :ivar category_configurations: Gets or sets list of categories and severity levels. + :vartype category_configurations: list[~azure.mgmt.security.models.CategoryConfiguration] + :ivar branch_configuration: Repository branch configuration for PR Annotations. + :vartype branch_configuration: ~azure.mgmt.security.models.TargetBranchConfiguration + :ivar inherit_from_parent_state: Update Settings. + + Enabled - Resource should inherit configurations from parent. + Disabled - Resource should not inherit configurations from parent. Known values are: "Disabled" + and "Enabled". + :vartype inherit_from_parent_state: str or ~azure.mgmt.security.models.InheritFromParentState + """ + + state: Optional[Union[str, "_models.ActionableRemediationState"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """ActionableRemediation Setting. None - the setting was never set. Enabled - + ActionableRemediation is enabled. Disabled - ActionableRemediation is disabled. Known values + are: \"None\", \"Disabled\", and \"Enabled\".""" + category_configurations: Optional[list["_models.CategoryConfiguration"]] = rest_field( + name="categoryConfigurations", visibility=["read", "create", "update", "delete", "query"] + ) + """Gets or sets list of categories and severity levels.""" + branch_configuration: Optional["_models.TargetBranchConfiguration"] = rest_field( + name="branchConfiguration", visibility=["read", "create", "update", "delete", "query"] + ) + """Repository branch configuration for PR Annotations.""" + inherit_from_parent_state: Optional[Union[str, "_models.InheritFromParentState"]] = rest_field( + name="inheritFromParentState", visibility=["read", "create", "update", "delete", "query"] + ) + """Update Settings. + + Enabled - Resource should inherit configurations from parent. + Disabled - Resource should not inherit configurations from parent. Known values are: + \"Disabled\" and \"Enabled\".""" + + @overload + def __init__( + self, + *, + state: Optional[Union[str, "_models.ActionableRemediationState"]] = None, + category_configurations: Optional[list["_models.CategoryConfiguration"]] = None, + branch_configuration: Optional["_models.TargetBranchConfiguration"] = None, + inherit_from_parent_state: Optional[Union[str, "_models.InheritFromParentState"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AdditionalData(_Model): + """Details of the sub-assessment. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + ContainerRegistryVulnerabilityProperties, ServerVulnerabilityProperties, + SqlServerVulnerabilityProperties + + :ivar assessed_resource_type: Sub-assessment resource type. Required. Known values are: + "SqlServerVulnerability", "ContainerRegistryVulnerability", and "ServerVulnerability". + :vartype assessed_resource_type: str or ~azure.mgmt.security.models.AssessedResourceType + """ + + __mapping__: dict[str, _Model] = {} + assessed_resource_type: str = rest_discriminator( + name="assessedResourceType", visibility=["read", "create", "update", "delete", "query"] + ) + """Sub-assessment resource type. Required. Known values are: \"SqlServerVulnerability\", + \"ContainerRegistryVulnerability\", and \"ServerVulnerability\".""" + + @overload + def __init__( + self, + *, + assessed_resource_type: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AdditionalWorkspacesProperties(_Model): + """Properties of the additional workspaces. + + :ivar workspace: Workspace resource id. + :vartype workspace: str + :ivar type: Workspace type. "Sentinel" + :vartype type: str or ~azure.mgmt.security.models.AdditionalWorkspaceType + :ivar data_types: List of data types sent to workspace. + :vartype data_types: list[str or ~azure.mgmt.security.models.AdditionalWorkspaceDataType] + """ + + workspace: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Workspace resource id.""" + type: Optional[Union[str, "_models.AdditionalWorkspaceType"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Workspace type. \"Sentinel\"""" + data_types: Optional[list[Union[str, "_models.AdditionalWorkspaceDataType"]]] = rest_field( + name="dataTypes", visibility=["read", "create", "update", "delete", "query"] + ) + """List of data types sent to workspace.""" + + @overload + def __init__( + self, + *, + workspace: Optional[str] = None, + type: Optional[Union[str, "_models.AdditionalWorkspaceType"]] = None, + data_types: Optional[list[Union[str, "_models.AdditionalWorkspaceDataType"]]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AdvancedThreatProtectionProperties(_Model): + """The Advanced Threat Protection settings. + + :ivar is_enabled: Indicates whether Advanced Threat Protection is enabled. + :vartype is_enabled: bool + """ + + is_enabled: Optional[bool] = rest_field( + name="isEnabled", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether Advanced Threat Protection is enabled.""" + + @overload + def __init__( + self, + *, + is_enabled: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ExtensionResource(Resource): + """The base extension resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + """ + + +class AdvancedThreatProtectionSetting(ExtensionResource): + """The Advanced Threat Protection resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: The Advanced Threat Protection settings. + :vartype properties: ~azure.mgmt.security.models.AdvancedThreatProtectionProperties + """ + + properties: Optional["_models.AdvancedThreatProtectionProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The Advanced Threat Protection settings.""" + + __flattened_items = ["is_enabled"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.AdvancedThreatProtectionProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class AgentlessConfiguration(_Model): + """Details about Agentless configuration. + + :ivar agentless_enabled: Agentless Enablement states. Known values are: "Disabled", "Enabled", + and "NotApplicable". + :vartype agentless_enabled: str or ~azure.mgmt.security.models.AgentlessEnablement + :ivar agentless_auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", + and "NotApplicable". + :vartype agentless_auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery + :ivar scanners: Gets or sets the scanners for the connector. + :vartype scanners: list[str] + :ivar inventory_list_type: Types for inventory list. Known values are: "Inclusion" and + "Exclusion". + :vartype inventory_list_type: str or ~azure.mgmt.security.models.InventoryListKind + :ivar inventory_list: Gets or sets the inventory list for inclusion or exclusion from + Agentless. Will be ignored if agentless auto-discovery is enabled. + :vartype inventory_list: list[~azure.mgmt.security.models.InventoryList] + """ + + agentless_enabled: Optional[Union[str, "_models.AgentlessEnablement"]] = rest_field( + name="agentlessEnabled", visibility=["read", "create", "update", "delete", "query"] + ) + """Agentless Enablement states. Known values are: \"Disabled\", \"Enabled\", and + \"NotApplicable\".""" + agentless_auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = rest_field( + name="agentlessAutoDiscovery", visibility=["read", "create", "update", "delete", "query"] + ) + """AutoDiscovery states. Known values are: \"Disabled\", \"Enabled\", and \"NotApplicable\".""" + scanners: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Gets or sets the scanners for the connector.""" + inventory_list_type: Optional[Union[str, "_models.InventoryListKind"]] = rest_field( + name="inventoryListType", visibility=["read", "create", "update", "delete", "query"] + ) + """Types for inventory list. Known values are: \"Inclusion\" and \"Exclusion\".""" + inventory_list: Optional[list["_models.InventoryList"]] = rest_field( + name="inventoryList", visibility=["read", "create", "update", "delete", "query"] + ) + """Gets or sets the inventory list for inclusion or exclusion from Agentless. Will be ignored if + agentless auto-discovery is enabled.""" + + @overload + def __init__( + self, + *, + agentless_enabled: Optional[Union[str, "_models.AgentlessEnablement"]] = None, + agentless_auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, + scanners: Optional[list[str]] = None, + inventory_list_type: Optional[Union[str, "_models.InventoryListKind"]] = None, + inventory_list: Optional[list["_models.InventoryList"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Alert(ProxyResource): + """Security alert. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: describes security alert properties. + :vartype properties: ~azure.mgmt.security.models.AlertProperties + """ + + properties: Optional["_models.AlertProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """describes security alert properties.""" + + __flattened_items = [ + "version", + "alert_type", + "system_alert_id", + "product_component_name", + "alert_display_name", + "description", + "severity", + "intent", + "start_time_utc", + "end_time_utc", + "resource_identifiers", + "remediation_steps", + "vendor_name", + "status", + "extended_links", + "alert_uri", + "time_generated_utc", + "product_name", + "processing_end_time_utc", + "entities", + "is_incident", + "correlation_key", + "extended_properties", + "compromised_entity", + "techniques", + "sub_techniques", + "supporting_evidence", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.AlertProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class AlertEntity(_Model): + """Changing set of properties depending on the entity type. + + :ivar type: Type of entity. + :vartype type: str + """ + + type: Optional[str] = rest_field(visibility=["read"]) + """Type of entity.""" + + +class AlertProperties(_Model): + """describes security alert properties. + + :ivar version: Schema version. + :vartype version: str + :ivar alert_type: Unique identifier for the detection logic (all alert instances from the same + detection logic will have the same alertType). + :vartype alert_type: str + :ivar system_alert_id: Unique identifier for the alert. + :vartype system_alert_id: str + :ivar product_component_name: The name of Azure Security Center pricing tier which powering + this alert. Learn more: + `https://docs.microsoft.com/en-us/azure/security-center/security-center-pricing + `_. + :vartype product_component_name: str + :ivar alert_display_name: The display name of the alert. + :vartype alert_display_name: str + :ivar description: Description of the suspicious activity that was detected. + :vartype description: str + :ivar severity: The risk level of the threat that was detected. Learn more: + `https://docs.microsoft.com/en-us/azure/security-center/security-center-alerts-overview#how-are-alerts-classified + `_. + Known values are: "Informational", "Low", "Medium", and "High". + :vartype severity: str or ~azure.mgmt.security.models.AlertSeverity + :ivar intent: The kill chain related intent behind the alert. For list of supported values, and + explanations of Azure Security Center's supported kill chain intents. Known values are: + "Unknown", "PreAttack", "InitialAccess", "Persistence", "PrivilegeEscalation", + "DefenseEvasion", "CredentialAccess", "Discovery", "LateralMovement", "Execution", + "Collection", "Exfiltration", "CommandAndControl", "Impact", "Probing", and "Exploitation". + :vartype intent: str or ~azure.mgmt.security.models.Intent + :ivar start_time_utc: The UTC time of the first event or activity included in the alert in + ISO8601 format. + :vartype start_time_utc: ~datetime.datetime + :ivar end_time_utc: The UTC time of the last event or activity included in the alert in ISO8601 + format. + :vartype end_time_utc: ~datetime.datetime + :ivar resource_identifiers: The resource identifiers that can be used to direct the alert to + the right product exposure group (tenant, workspace, subscription etc.). There can be multiple + identifiers of different type per alert. + :vartype resource_identifiers: list[~azure.mgmt.security.models.ResourceIdentifier] + :ivar remediation_steps: Manual action items to take to remediate the alert. + :vartype remediation_steps: list[str] + :ivar vendor_name: The name of the vendor that raises the alert. + :vartype vendor_name: str + :ivar status: The life cycle status of the alert. Known values are: "Active", "InProgress", + "Resolved", and "Dismissed". + :vartype status: str or ~azure.mgmt.security.models.AlertStatus + :ivar extended_links: Links related to the alert. + :vartype extended_links: list[dict[str, str]] + :ivar alert_uri: A direct link to the alert page in Azure Portal. + :vartype alert_uri: str + :ivar time_generated_utc: The UTC time the alert was generated in ISO8601 format. + :vartype time_generated_utc: ~datetime.datetime + :ivar product_name: The name of the product which published this alert (Microsoft Sentinel, + Microsoft Defender for Identity, Microsoft Defender for Endpoint, Microsoft Defender for + Office, Microsoft Defender for Cloud Apps, and so on). + :vartype product_name: str + :ivar processing_end_time_utc: The UTC processing end time of the alert in ISO8601 format. + :vartype processing_end_time_utc: ~datetime.datetime + :ivar entities: A list of entities related to the alert. + :vartype entities: list[~azure.mgmt.security.models.AlertEntity] + :ivar is_incident: This field determines whether the alert is an incident (a compound grouping + of several alerts) or a single alert. + :vartype is_incident: bool + :ivar correlation_key: Key for corelating related alerts. Alerts with the same correlation key + considered to be related. + :vartype correlation_key: str + :ivar extended_properties: Custom properties for the alert. + :vartype extended_properties: dict[str, str] + :ivar compromised_entity: The display name of the resource most related to this alert. + :vartype compromised_entity: str + :ivar techniques: kill chain related techniques behind the alert. + :vartype techniques: list[str] + :ivar sub_techniques: Kill chain related sub-techniques behind the alert. + :vartype sub_techniques: list[str] + :ivar supporting_evidence: Changing set of properties depending on the supportingEvidence type. + :vartype supporting_evidence: ~azure.mgmt.security.models.AlertPropertiesSupportingEvidence + """ + + version: Optional[str] = rest_field(visibility=["read"]) + """Schema version.""" + alert_type: Optional[str] = rest_field(name="alertType", visibility=["read"]) + """Unique identifier for the detection logic (all alert instances from the same detection logic + will have the same alertType).""" + system_alert_id: Optional[str] = rest_field(name="systemAlertId", visibility=["read"]) + """Unique identifier for the alert.""" + product_component_name: Optional[str] = rest_field(name="productComponentName", visibility=["read"]) + """The name of Azure Security Center pricing tier which powering this alert. Learn more: + `https://docs.microsoft.com/en-us/azure/security-center/security-center-pricing + `_.""" + alert_display_name: Optional[str] = rest_field(name="alertDisplayName", visibility=["read"]) + """The display name of the alert.""" + description: Optional[str] = rest_field(visibility=["read"]) + """Description of the suspicious activity that was detected.""" + severity: Optional[Union[str, "_models.AlertSeverity"]] = rest_field(visibility=["read"]) + """The risk level of the threat that was detected. Learn more: + `https://docs.microsoft.com/en-us/azure/security-center/security-center-alerts-overview#how-are-alerts-classified + `_. + Known values are: \"Informational\", \"Low\", \"Medium\", and \"High\".""" + intent: Optional[Union[str, "_models.Intent"]] = rest_field(visibility=["read"]) + """The kill chain related intent behind the alert. For list of supported values, and explanations + of Azure Security Center's supported kill chain intents. Known values are: \"Unknown\", + \"PreAttack\", \"InitialAccess\", \"Persistence\", \"PrivilegeEscalation\", \"DefenseEvasion\", + \"CredentialAccess\", \"Discovery\", \"LateralMovement\", \"Execution\", \"Collection\", + \"Exfiltration\", \"CommandAndControl\", \"Impact\", \"Probing\", and \"Exploitation\".""" + start_time_utc: Optional[datetime.datetime] = rest_field(name="startTimeUtc", visibility=["read"], format="rfc3339") + """The UTC time of the first event or activity included in the alert in ISO8601 format.""" + end_time_utc: Optional[datetime.datetime] = rest_field(name="endTimeUtc", visibility=["read"], format="rfc3339") + """The UTC time of the last event or activity included in the alert in ISO8601 format.""" + resource_identifiers: Optional[list["_models.ResourceIdentifier"]] = rest_field( + name="resourceIdentifiers", visibility=["read"] + ) + """The resource identifiers that can be used to direct the alert to the right product exposure + group (tenant, workspace, subscription etc.). There can be multiple identifiers of different + type per alert.""" + remediation_steps: Optional[list[str]] = rest_field(name="remediationSteps", visibility=["read"]) + """Manual action items to take to remediate the alert.""" + vendor_name: Optional[str] = rest_field(name="vendorName", visibility=["read"]) + """The name of the vendor that raises the alert.""" + status: Optional[Union[str, "_models.AlertStatus"]] = rest_field(visibility=["read"]) + """The life cycle status of the alert. Known values are: \"Active\", \"InProgress\", \"Resolved\", + and \"Dismissed\".""" + extended_links: Optional[list[dict[str, str]]] = rest_field(name="extendedLinks", visibility=["read"]) + """Links related to the alert.""" + alert_uri: Optional[str] = rest_field(name="alertUri", visibility=["read"]) + """A direct link to the alert page in Azure Portal.""" + time_generated_utc: Optional[datetime.datetime] = rest_field( + name="timeGeneratedUtc", visibility=["read"], format="rfc3339" + ) + """The UTC time the alert was generated in ISO8601 format.""" + product_name: Optional[str] = rest_field(name="productName", visibility=["read"]) + """The name of the product which published this alert (Microsoft Sentinel, Microsoft Defender for + Identity, Microsoft Defender for Endpoint, Microsoft Defender for Office, Microsoft Defender + for Cloud Apps, and so on).""" + processing_end_time_utc: Optional[datetime.datetime] = rest_field( + name="processingEndTimeUtc", visibility=["read"], format="rfc3339" + ) + """The UTC processing end time of the alert in ISO8601 format.""" + entities: Optional[list["_models.AlertEntity"]] = rest_field(visibility=["read"]) + """A list of entities related to the alert.""" + is_incident: Optional[bool] = rest_field(name="isIncident", visibility=["read"]) + """This field determines whether the alert is an incident (a compound grouping of several alerts) + or a single alert.""" + correlation_key: Optional[str] = rest_field(name="correlationKey", visibility=["read"]) + """Key for corelating related alerts. Alerts with the same correlation key considered to be + related.""" + extended_properties: Optional[dict[str, str]] = rest_field( + name="extendedProperties", visibility=["read", "create", "update", "delete", "query"] + ) + """Custom properties for the alert.""" + compromised_entity: Optional[str] = rest_field(name="compromisedEntity", visibility=["read"]) + """The display name of the resource most related to this alert.""" + techniques: Optional[list[str]] = rest_field(visibility=["read"]) + """kill chain related techniques behind the alert.""" + sub_techniques: Optional[list[str]] = rest_field(name="subTechniques", visibility=["read"]) + """Kill chain related sub-techniques behind the alert.""" + supporting_evidence: Optional["_models.AlertPropertiesSupportingEvidence"] = rest_field( + name="supportingEvidence", visibility=["read", "create", "update", "delete", "query"] + ) + """Changing set of properties depending on the supportingEvidence type.""" + + @overload + def __init__( # pylint: disable=too-many-locals + self, + *, + extended_properties: Optional[dict[str, str]] = None, + supporting_evidence: Optional["_models.AlertPropertiesSupportingEvidence"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AlertPropertiesSupportingEvidence(_Model): + """Changing set of properties depending on the supportingEvidence type. + + :ivar type: Type of the supportingEvidence. + :vartype type: str + """ + + type: Optional[str] = rest_field(visibility=["read"]) + """Type of the supportingEvidence.""" + + +class AlertSimulatorRequestProperties(_Model): + """Describes properties of an alert simulation request. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AlertSimulatorBundlesRequestProperties + + :ivar kind: The kind of alert simulation. Required. "Bundles" + :vartype kind: str or ~azure.mgmt.security.models.KindEnum + """ + + __mapping__: dict[str, _Model] = {} + kind: str = rest_discriminator(name="kind", visibility=["read", "create", "update", "delete", "query"]) + """The kind of alert simulation. Required. \"Bundles\"""" + + @overload + def __init__( + self, + *, + kind: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AlertSimulatorBundlesRequestProperties(AlertSimulatorRequestProperties, discriminator="Bundles"): + """Simulate alerts according to this bundles. + + :ivar bundles: Bundles list. + :vartype bundles: list[str or ~azure.mgmt.security.models.BundleType] + :ivar kind: The kind of alert simulation. Required. Simulate alerts according to bundles. + :vartype kind: str or ~azure.mgmt.security.models.BUNDLES + """ + + bundles: Optional[list[Union[str, "_models.BundleType"]]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Bundles list.""" + kind: Literal[KindEnum.BUNDLES] = rest_discriminator(name="kind", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The kind of alert simulation. Required. Simulate alerts according to bundles.""" + + @overload + def __init__( + self, + *, + bundles: Optional[list[Union[str, "_models.BundleType"]]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.kind = KindEnum.BUNDLES # type: ignore + + +class AlertSimulatorRequestBody(_Model): + """Alert Simulator request body. + + :ivar properties: Alert Simulator request body data. + :vartype properties: ~azure.mgmt.security.models.AlertSimulatorRequestProperties + """ + + properties: Optional["_models.AlertSimulatorRequestProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Alert Simulator request body data.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.AlertSimulatorRequestProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AlertsSuppressionRule(ProxyResource): + """Describes the suppression rule. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: describes AlertsSuppressionRule properties. + :vartype properties: ~azure.mgmt.security.models.AlertsSuppressionRuleProperties + """ + + properties: Optional["_models.AlertsSuppressionRuleProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """describes AlertsSuppressionRule properties.""" + + __flattened_items = [ + "alert_type", + "last_modified_utc", + "expiration_date_utc", + "reason", + "state", + "comment", + "suppression_alerts_scope", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.AlertsSuppressionRuleProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class AlertsSuppressionRuleProperties(_Model): + """describes AlertsSuppressionRule properties. + + :ivar alert_type: Type of the alert to automatically suppress. For all alert types, use '*'. + Required. + :vartype alert_type: str + :ivar last_modified_utc: The last time this rule was modified. + :vartype last_modified_utc: ~datetime.datetime + :ivar expiration_date_utc: Expiration date of the rule, if value is not provided or provided as + null there will no expiration at all. + :vartype expiration_date_utc: ~datetime.datetime + :ivar reason: The reason for dismissing the alert. Required. + :vartype reason: str + :ivar state: Possible states of the rule. Required. Known values are: "Enabled", "Disabled", + and "Expired". + :vartype state: str or ~azure.mgmt.security.models.RuleState + :ivar comment: Any comment regarding the rule. + :vartype comment: str + :ivar suppression_alerts_scope: The suppression conditions. + :vartype suppression_alerts_scope: ~azure.mgmt.security.models.SuppressionAlertsScope + """ + + alert_type: str = rest_field(name="alertType", visibility=["read", "create", "update", "delete", "query"]) + """Type of the alert to automatically suppress. For all alert types, use '*'. Required.""" + last_modified_utc: Optional[datetime.datetime] = rest_field( + name="lastModifiedUtc", visibility=["read"], format="rfc3339" + ) + """The last time this rule was modified.""" + expiration_date_utc: Optional[datetime.datetime] = rest_field( + name="expirationDateUtc", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """Expiration date of the rule, if value is not provided or provided as null there will no + expiration at all.""" + reason: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The reason for dismissing the alert. Required.""" + state: Union[str, "_models.RuleState"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Possible states of the rule. Required. Known values are: \"Enabled\", \"Disabled\", and + \"Expired\".""" + comment: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Any comment regarding the rule.""" + suppression_alerts_scope: Optional["_models.SuppressionAlertsScope"] = rest_field( + name="suppressionAlertsScope", visibility=["read", "create", "update", "delete", "query"] + ) + """The suppression conditions.""" + + @overload + def __init__( + self, + *, + alert_type: str, + reason: str, + state: Union[str, "_models.RuleState"], + expiration_date_utc: Optional[datetime.datetime] = None, + comment: Optional[str] = None, + suppression_alerts_scope: Optional["_models.SuppressionAlertsScope"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AlertSyncSettingProperties(_Model): + """The alert sync setting properties. + + :ivar enabled: Is the alert sync setting enabled. Required. + :vartype enabled: bool + """ + + enabled: bool = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is the alert sync setting enabled. Required.""" + + @overload + def __init__( + self, + *, + enabled: bool, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Setting(ProxyResource): + """The kind of the security setting. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AlertSyncSettings, DataExportSettings + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: The resource-specific properties for this resource. + :vartype properties: any + :ivar kind: the kind of the settings string. Required. Known values are: "DataExportSettings", + "AlertSuppressionSetting", and "AlertSyncSettings". + :vartype kind: str or ~azure.mgmt.security.models.SettingKind + """ + + __mapping__: dict[str, _Model] = {} + properties: Optional[Any] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The resource-specific properties for this resource.""" + kind: str = rest_discriminator(name="kind", visibility=["read", "create", "update", "delete", "query"]) + """the kind of the settings string. Required. Known values are: \"DataExportSettings\", + \"AlertSuppressionSetting\", and \"AlertSyncSettings\".""" + + @overload + def __init__( + self, + *, + kind: str, + properties: Optional[Any] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AlertSyncSettings(Setting, discriminator="AlertSyncSettings"): + """Represents an alert sync setting. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Alert sync setting data. + :vartype properties: ~azure.mgmt.security.models.AlertSyncSettingProperties + :ivar kind: the kind of the settings string. Required. AlertSyncSettings. + :vartype kind: str or ~azure.mgmt.security.models.ALERT_SYNC_SETTINGS + """ + + properties: Optional["_models.AlertSyncSettingProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Alert sync setting data.""" + kind: Literal[SettingKind.ALERT_SYNC_SETTINGS] = rest_discriminator(name="kind", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """the kind of the settings string. Required. AlertSyncSettings.""" + + __flattened_items = ["enabled"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.AlertSyncSettingProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class AllowedConnectionsResource(ProxyResource): + """The resource whose properties describes the allowed traffic between Azure resources. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Describes the allowed traffic between Azure resources. + :vartype properties: ~azure.mgmt.security.models.AllowedConnectionsResourceProperties + :ivar location: Location where the resource is stored. Required. + :vartype location: str + """ + + properties: Optional["_models.AllowedConnectionsResourceProperties"] = rest_field(visibility=["read"]) + """Describes the allowed traffic between Azure resources.""" + location: str = rest_field(visibility=["read"]) + """Location where the resource is stored. Required.""" + + __flattened_items = ["calculated_date_time", "connectable_resources"] + + +class AllowedConnectionsResourceProperties(_Model): + """Describes the allowed traffic between Azure resources. + + :ivar calculated_date_time: The UTC time on which the allowed connections resource was + calculated. + :vartype calculated_date_time: ~datetime.datetime + :ivar connectable_resources: List of connectable resources. + :vartype connectable_resources: list[~azure.mgmt.security.models.ConnectableResource] + """ + + calculated_date_time: Optional[datetime.datetime] = rest_field( + name="calculatedDateTime", visibility=["read"], format="rfc3339" + ) + """The UTC time on which the allowed connections resource was calculated.""" + connectable_resources: Optional[list["_models.ConnectableResource"]] = rest_field( + name="connectableResources", visibility=["read"] + ) + """List of connectable resources.""" + + +class CustomAlertRule(_Model): + """A custom alert rule. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AllowlistCustomAlertRule, DenylistCustomAlertRule, ListCustomAlertRule, + ThresholdCustomAlertRule, TimeWindowCustomAlertRule + + :ivar display_name: The display name of the custom alert. + :vartype display_name: str + :ivar description: The description of the custom alert. + :vartype description: str + :ivar is_enabled: Status of the custom alert. Required. + :vartype is_enabled: bool + :ivar rule_type: The type of the custom alert rule. Required. Default value is None. + :vartype rule_type: str + """ + + __mapping__: dict[str, _Model] = {} + display_name: Optional[str] = rest_field(name="displayName", visibility=["read"]) + """The display name of the custom alert.""" + description: Optional[str] = rest_field(visibility=["read"]) + """The description of the custom alert.""" + is_enabled: bool = rest_field(name="isEnabled", visibility=["read", "create", "update", "delete", "query"]) + """Status of the custom alert. Required.""" + rule_type: str = rest_discriminator(name="ruleType", visibility=["read", "create", "update", "delete", "query"]) + """The type of the custom alert rule. Required. Default value is None.""" + + @overload + def __init__( + self, + *, + is_enabled: bool, + rule_type: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ListCustomAlertRule(CustomAlertRule, discriminator="ListCustomAlertRule"): + """A List custom alert rule. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AllowlistCustomAlertRule, DenylistCustomAlertRule + + :ivar display_name: The display name of the custom alert. + :vartype display_name: str + :ivar description: The description of the custom alert. + :vartype description: str + :ivar is_enabled: Status of the custom alert. Required. + :vartype is_enabled: bool + :ivar value_type: The value type of the items in the list. Known values are: "IpCidr" and + "String". + :vartype value_type: str or ~azure.mgmt.security.models.ValueType + :ivar rule_type: Required. Default value is "ListCustomAlertRule". + :vartype rule_type: str + """ + + __mapping__: dict[str, _Model] = {} + value_type: Optional[Union[str, "_models.ValueType"]] = rest_field(name="valueType", visibility=["read"]) + """The value type of the items in the list. Known values are: \"IpCidr\" and \"String\".""" + rule_type: Literal["ListCustomAlertRule"] = rest_discriminator(name="ruleType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Required. Default value is \"ListCustomAlertRule\".""" + + @overload + def __init__( + self, + *, + is_enabled: bool, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.rule_type = "ListCustomAlertRule" # type: ignore + + +class AllowlistCustomAlertRule(ListCustomAlertRule, discriminator="AllowlistCustomAlertRule"): + """A custom alert rule that checks if a value (depends on the custom alert type) is allowed. + + :ivar display_name: The display name of the custom alert. + :vartype display_name: str + :ivar description: The description of the custom alert. + :vartype description: str + :ivar is_enabled: Status of the custom alert. Required. + :vartype is_enabled: bool + :ivar value_type: The value type of the items in the list. Known values are: "IpCidr" and + "String". + :vartype value_type: str or ~azure.mgmt.security.models.ValueType + :ivar allowlist_values: The values to allow. The format of the values depends on the rule type. + Required. + :vartype allowlist_values: list[str] + :ivar rule_type: Required. Default value is "AllowlistCustomAlertRule". + :vartype rule_type: str + """ + + allowlist_values: list[str] = rest_field( + name="allowlistValues", visibility=["read", "create", "update", "delete", "query"] + ) + """The values to allow. The format of the values depends on the rule type. Required.""" + rule_type: Literal["AllowlistCustomAlertRule"] = rest_discriminator(name="ruleType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Required. Default value is \"AllowlistCustomAlertRule\".""" + + @overload + def __init__( + self, + *, + is_enabled: bool, + allowlist_values: list[str], + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.rule_type = "AllowlistCustomAlertRule" # type: ignore + + +class ApiCollection(ExtensionResource): + """An API collection as represented by Microsoft Defender for APIs. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Describes the properties of an API collection. + :vartype properties: ~azure.mgmt.security.models.ApiCollectionProperties + """ + + properties: Optional["_models.ApiCollectionProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Describes the properties of an API collection.""" + + __flattened_items = [ + "provisioning_state", + "display_name", + "discovered_via", + "base_url", + "number_of_api_endpoints", + "number_of_inactive_api_endpoints", + "number_of_unauthenticated_api_endpoints", + "number_of_external_api_endpoints", + "number_of_api_endpoints_with_sensitive_data_exposed", + "sensitivity_label", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.ApiCollectionProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class ApiCollectionProperties(_Model): + """Describes the properties of an API collection. + + :ivar provisioning_state: Gets the provisioning state of the API collection. Known values are: + "Succeeded", "Creating", "Updating", "Deleting", "Failed", "Canceled", and "InProgress". + :vartype provisioning_state: str or ~azure.mgmt.security.models.ProvisioningState + :ivar display_name: The display name of the API collection. + :vartype display_name: str + :ivar discovered_via: The resource Id of the resource from where this API collection was + discovered. + :vartype discovered_via: str + :ivar base_url: The base URI for this API collection. All endpoints of this API collection + extend this base URI. + :vartype base_url: str + :ivar number_of_api_endpoints: The number of API endpoints discovered in this API collection. + :vartype number_of_api_endpoints: int + :ivar number_of_inactive_api_endpoints: The number of API endpoints in this API collection that + have not received any API traffic in the last 30 days. + :vartype number_of_inactive_api_endpoints: int + :ivar number_of_unauthenticated_api_endpoints: The number of API endpoints in this API + collection that are unauthenticated. + :vartype number_of_unauthenticated_api_endpoints: int + :ivar number_of_external_api_endpoints: The number of API endpoints in this API collection for + which API traffic from the internet was observed. + :vartype number_of_external_api_endpoints: int + :ivar number_of_api_endpoints_with_sensitive_data_exposed: The number of API endpoints in this + API collection which are exposing sensitive data in their requests and/or responses. + :vartype number_of_api_endpoints_with_sensitive_data_exposed: int + :ivar sensitivity_label: The highest priority sensitivity label from Microsoft Purview in this + API collection. + :vartype sensitivity_label: str + """ + + provisioning_state: Optional[Union[str, "_models.ProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """Gets the provisioning state of the API collection. Known values are: \"Succeeded\", + \"Creating\", \"Updating\", \"Deleting\", \"Failed\", \"Canceled\", and \"InProgress\".""" + display_name: Optional[str] = rest_field(name="displayName", visibility=["read"]) + """The display name of the API collection.""" + discovered_via: Optional[str] = rest_field(name="discoveredVia", visibility=["read"]) + """The resource Id of the resource from where this API collection was discovered.""" + base_url: Optional[str] = rest_field(name="baseUrl", visibility=["read"]) + """The base URI for this API collection. All endpoints of this API collection extend this base + URI.""" + number_of_api_endpoints: Optional[int] = rest_field(name="numberOfApiEndpoints", visibility=["read"]) + """The number of API endpoints discovered in this API collection.""" + number_of_inactive_api_endpoints: Optional[int] = rest_field( + name="numberOfInactiveApiEndpoints", visibility=["read"] + ) + """The number of API endpoints in this API collection that have not received any API traffic in + the last 30 days.""" + number_of_unauthenticated_api_endpoints: Optional[int] = rest_field( + name="numberOfUnauthenticatedApiEndpoints", visibility=["read"] + ) + """The number of API endpoints in this API collection that are unauthenticated.""" + number_of_external_api_endpoints: Optional[int] = rest_field( + name="numberOfExternalApiEndpoints", visibility=["read"] + ) + """The number of API endpoints in this API collection for which API traffic from the internet was + observed.""" + number_of_api_endpoints_with_sensitive_data_exposed: Optional[int] = rest_field( + name="numberOfApiEndpointsWithSensitiveDataExposed", visibility=["read"] + ) + """The number of API endpoints in this API collection which are exposing sensitive data in their + requests and/or responses.""" + sensitivity_label: Optional[str] = rest_field(name="sensitivityLabel", visibility=["read"]) + """The highest priority sensitivity label from Microsoft Purview in this API collection.""" + + +class Application(ProxyResource): + """Security Application over a given scope. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Properties of a security application. + :vartype properties: ~azure.mgmt.security.models.ApplicationProperties + """ + + properties: Optional["_models.ApplicationProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of a security application.""" + + __flattened_items = ["display_name", "description", "source_resource_type", "condition_sets"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.ApplicationProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class ApplicationProperties(_Model): + """Describes properties of an application. + + :ivar display_name: display name of the application. + :vartype display_name: str + :ivar description: description of the application. + :vartype description: str + :ivar source_resource_type: The application source, what it affects, e.g. Assessments. + Required. "Assessments" + :vartype source_resource_type: str or ~azure.mgmt.security.models.ApplicationSourceResourceType + :ivar condition_sets: The application conditionSets - see examples. Required. + :vartype condition_sets: list[any] + """ + + display_name: Optional[str] = rest_field( + name="displayName", visibility=["read", "create", "update", "delete", "query"] + ) + """display name of the application.""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """description of the application.""" + source_resource_type: Union[str, "_models.ApplicationSourceResourceType"] = rest_field( + name="sourceResourceType", visibility=["read", "create", "update", "delete", "query"] + ) + """The application source, what it affects, e.g. Assessments. Required. \"Assessments\"""" + condition_sets: list[Any] = rest_field( + name="conditionSets", visibility=["read", "create", "update", "delete", "query"] + ) + """The application conditionSets - see examples. Required.""" + + @overload + def __init__( + self, + *, + source_resource_type: Union[str, "_models.ApplicationSourceResourceType"], + condition_sets: list[Any], + display_name: Optional[str] = None, + description: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ArcAutoProvisioning(_Model): + """The ARC autoprovisioning configuration. + + :ivar enabled: Is arc auto provisioning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. + :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is arc auto provisioning enabled.""" + configuration: Optional["_models.ArcAutoProvisioningConfiguration"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Configuration for servers Arc auto provisioning for a given environment.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.ArcAutoProvisioningConfiguration"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ArcAutoProvisioningAws(ArcAutoProvisioning): + """The ARC autoprovisioning configuration for an AWS environment. + + :ivar enabled: Is arc auto provisioning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. + :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.ArcAutoProvisioningConfiguration"] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ArcAutoProvisioningConfiguration(_Model): + """Configuration for servers Arc auto provisioning for a given environment. + + :ivar proxy: Optional HTTP proxy endpoint to use for the Arc agent. + :vartype proxy: str + :ivar private_link_scope: Optional Arc private link scope resource id to link the Arc agent. + :vartype private_link_scope: str + """ + + proxy: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Optional HTTP proxy endpoint to use for the Arc agent.""" + private_link_scope: Optional[str] = rest_field( + name="privateLinkScope", visibility=["read", "create", "update", "delete", "query"] + ) + """Optional Arc private link scope resource id to link the Arc agent.""" + + @overload + def __init__( + self, + *, + proxy: Optional[str] = None, + private_link_scope: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ArcAutoProvisioningGcp(ArcAutoProvisioning): + """The ARC autoprovisioning configuration for an GCP environment. + + :ivar enabled: Is arc auto provisioning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. + :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration + """ + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.ArcAutoProvisioningConfiguration"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ArmErrorAdditionalInfo(_Model): + """The resource management error additional info. + + :ivar type: The additional info type. + :vartype type: str + :ivar info: The additional info. + :vartype info: any + """ + + type: Optional[str] = rest_field(visibility=["read"]) + """The additional info type.""" + info: Optional[Any] = rest_field(visibility=["read"]) + """The additional info.""" + + +class AscLocation(ProxyResource): + """The ASC location of the subscription is in the "name" field. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: An empty set of properties. + :vartype properties: any + """ + + properties: Optional[Any] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """An empty set of properties.""" + + __flattened_items = [""] + + @overload + def __init__( + self, + *, + properties: Optional[Any] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class AssessmentLinks(_Model): + """Links relevant to the assessment. + + :ivar azure_portal_uri: Link to assessment in Azure Portal. + :vartype azure_portal_uri: str + """ + + azure_portal_uri: Optional[str] = rest_field(name="azurePortalUri", visibility=["read"]) + """Link to assessment in Azure Portal.""" + + +class AssessmentStatus(_Model): + """The result of the assessment. + + :ivar code: Programmatic code for the status of the assessment. Required. Known values are: + "Healthy", "Unhealthy", and "NotApplicable". + :vartype code: str or ~azure.mgmt.security.models.AssessmentStatusCode + :ivar cause: Programmatic code for the cause of the assessment status. + :vartype cause: str + :ivar description: Human readable description of the assessment status. + :vartype description: str + """ + + code: Union[str, "_models.AssessmentStatusCode"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Programmatic code for the status of the assessment. Required. Known values are: \"Healthy\", + \"Unhealthy\", and \"NotApplicable\".""" + cause: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Programmatic code for the cause of the assessment status.""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Human readable description of the assessment status.""" + + @overload + def __init__( + self, + *, + code: Union[str, "_models.AssessmentStatusCode"], + cause: Optional[str] = None, + description: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AssessmentStatusResponse(AssessmentStatus): + """The result of the assessment. + + :ivar code: Programmatic code for the status of the assessment. Required. Known values are: + "Healthy", "Unhealthy", and "NotApplicable". + :vartype code: str or ~azure.mgmt.security.models.AssessmentStatusCode + :ivar cause: Programmatic code for the cause of the assessment status. + :vartype cause: str + :ivar description: Human readable description of the assessment status. + :vartype description: str + :ivar first_evaluation_date: The time that the assessment was created and first evaluated. + Returned as UTC time in ISO 8601 format. + :vartype first_evaluation_date: ~datetime.datetime + :ivar status_change_date: The time that the status of the assessment last changed. Returned as + UTC time in ISO 8601 format. + :vartype status_change_date: ~datetime.datetime + """ + + first_evaluation_date: Optional[datetime.datetime] = rest_field( + name="firstEvaluationDate", visibility=["read"], format="rfc3339" + ) + """The time that the assessment was created and first evaluated. Returned as UTC time in ISO 8601 + format.""" + status_change_date: Optional[datetime.datetime] = rest_field( + name="statusChangeDate", visibility=["read"], format="rfc3339" + ) + """The time that the status of the assessment last changed. Returned as UTC time in ISO 8601 + format.""" + + @overload + def __init__( + self, + *, + code: Union[str, "_models.AssessmentStatusCode"], + cause: Optional[str] = None, + description: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AssignedAssessmentItem(_Model): + """Describe the properties of a security assessment object reference (by key). + + :ivar assessment_key: Unique key to a security assessment object. + :vartype assessment_key: str + """ + + assessment_key: Optional[str] = rest_field( + name="assessmentKey", visibility=["read", "create", "update", "delete", "query"] + ) + """Unique key to a security assessment object.""" + + @overload + def __init__( + self, + *, + assessment_key: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AssignedComponentItem(_Model): + """describe the properties of a security assessment object reference (by key). + + :ivar key: unique key to a security assessment object. + :vartype key: str + """ + + key: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """unique key to a security assessment object.""" + + @overload + def __init__( + self, + *, + key: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AssignedStandardItem(_Model): + """Describe the properties of a of a standard assignments object reference. + + :ivar id: Full resourceId of the Microsoft.Security/standard object. + :vartype id: str + """ + + id: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Full resourceId of the Microsoft.Security/standard object.""" + + @overload + def __init__( + self, + *, + id: Optional[str] = None, # pylint: disable=redefined-builtin + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Assignment(ProxyResource): + """Security Assignment on a resource group over a given scope. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Properties of a security assignment. + :vartype properties: ~azure.mgmt.security.models.AssignmentProperties + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. + :vartype location: str + :ivar kind: Kind of the resource. + :vartype kind: str + :ivar etag: Entity tag is used for comparing two or more entities from the same requested + resource. + :vartype etag: str + """ + + properties: Optional["_models.AssignmentProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of a security assignment.""" + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + location: Optional[str] = rest_field(visibility=["read", "create"]) + """The geo-location where the resource lives.""" + kind: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Kind of the resource.""" + etag: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Entity tag is used for comparing two or more entities from the same requested resource.""" + + __flattened_items = [ + "display_name", + "description", + "assigned_standard", + "assigned_component", + "scope", + "effect", + "expires_on", + "additional_data", + "metadata", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.AssignmentProperties"] = None, + tags: Optional[dict[str, str]] = None, + location: Optional[str] = None, + kind: Optional[str] = None, + etag: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class AssignmentProperties(_Model): + """Describes the properties of a standardAssignment. + + :ivar display_name: display name of the standardAssignment. + :vartype display_name: str + :ivar description: description of the standardAssignment. + :vartype description: str + :ivar assigned_standard: Standard item with key as applied to this standard assignment over the + given scope. + :vartype assigned_standard: ~azure.mgmt.security.models.AssignedStandardItem + :ivar assigned_component: Component item with key as applied to this standard assignment over + the given scope. + :vartype assigned_component: ~azure.mgmt.security.models.AssignedComponentItem + :ivar scope: Scope to which the standardAssignment applies - can be a subscription path or a + resource group under that subscription. + :vartype scope: str + :ivar effect: expected effect of this assignment (Disable/Exempt/etc). + :vartype effect: str + :ivar expires_on: Expiration date of this assignment as a full ISO date. + :vartype expires_on: ~datetime.datetime + :ivar additional_data: Additional data about the assignment. + :vartype additional_data: ~azure.mgmt.security.models.AssignmentPropertiesAdditionalData + :ivar metadata: The assignment metadata. Metadata is an open ended object and is typically a + collection of key value pairs. + :vartype metadata: any + """ + + display_name: Optional[str] = rest_field( + name="displayName", visibility=["read", "create", "update", "delete", "query"] + ) + """display name of the standardAssignment.""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """description of the standardAssignment.""" + assigned_standard: Optional["_models.AssignedStandardItem"] = rest_field( + name="assignedStandard", visibility=["read", "create", "update", "delete", "query"] + ) + """Standard item with key as applied to this standard assignment over the given scope.""" + assigned_component: Optional["_models.AssignedComponentItem"] = rest_field( + name="assignedComponent", visibility=["read", "create", "update", "delete", "query"] + ) + """Component item with key as applied to this standard assignment over the given scope.""" + scope: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Scope to which the standardAssignment applies - can be a subscription path or a resource group + under that subscription.""" + effect: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """expected effect of this assignment (Disable/Exempt/etc).""" + expires_on: Optional[datetime.datetime] = rest_field( + name="expiresOn", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """Expiration date of this assignment as a full ISO date.""" + additional_data: Optional["_models.AssignmentPropertiesAdditionalData"] = rest_field( + name="additionalData", visibility=["read", "create", "update", "delete", "query"] + ) + """Additional data about the assignment.""" + metadata: Optional[Any] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The assignment metadata. Metadata is an open ended object and is typically a collection of key + value pairs.""" + + @overload + def __init__( + self, + *, + display_name: Optional[str] = None, + description: Optional[str] = None, + assigned_standard: Optional["_models.AssignedStandardItem"] = None, + assigned_component: Optional["_models.AssignedComponentItem"] = None, + scope: Optional[str] = None, + effect: Optional[str] = None, + expires_on: Optional[datetime.datetime] = None, + additional_data: Optional["_models.AssignmentPropertiesAdditionalData"] = None, + metadata: Optional[Any] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AssignmentPropertiesAdditionalData(_Model): + """Additional data about the assignment. + + :ivar exemption_category: Exemption category of this assignment. + :vartype exemption_category: str + """ + + exemption_category: Optional[str] = rest_field( + name="exemptionCategory", visibility=["read", "create", "update", "delete", "query"] + ) + """Exemption category of this assignment.""" + + @overload + def __init__( + self, + *, + exemption_category: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AtaExternalSecuritySolution(ExternalSecuritySolution, discriminator="ATA"): + """Represents an ATA security solution which sends logs to an OMS workspace. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar location: Location where the resource is stored. Required. + :vartype location: str + :ivar properties: The external security solution properties for ATA solutions. + :vartype properties: ~azure.mgmt.security.models.AtaSolutionProperties + :ivar kind: Required. ATA. + :vartype kind: str or ~azure.mgmt.security.models.ATA + """ + + properties: Optional["_models.AtaSolutionProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The external security solution properties for ATA solutions.""" + kind: Literal[ExternalSecuritySolutionKindEnum.ATA] = rest_discriminator(name="kind", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Required. ATA.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.AtaSolutionProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.kind = ExternalSecuritySolutionKindEnum.ATA # type: ignore + + +class ExternalSecuritySolutionProperties(_Model): + """The solution properties (correspond to the solution kind). + + :ivar device_vendor: + :vartype device_vendor: str + :ivar device_type: + :vartype device_type: str + :ivar workspace: Represents an OMS workspace to which the solution is connected. + :vartype workspace: ~azure.mgmt.security.models.ConnectedWorkspace + """ + + device_vendor: Optional[str] = rest_field( + name="deviceVendor", visibility=["read", "create", "update", "delete", "query"] + ) + device_type: Optional[str] = rest_field( + name="deviceType", visibility=["read", "create", "update", "delete", "query"] + ) + workspace: Optional["_models.ConnectedWorkspace"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Represents an OMS workspace to which the solution is connected.""" + + @overload + def __init__( + self, + *, + device_vendor: Optional[str] = None, + device_type: Optional[str] = None, + workspace: Optional["_models.ConnectedWorkspace"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AtaSolutionProperties(ExternalSecuritySolutionProperties): + """The external security solution properties for ATA solutions. + + :ivar device_vendor: + :vartype device_vendor: str + :ivar device_type: + :vartype device_type: str + :ivar workspace: Represents an OMS workspace to which the solution is connected. + :vartype workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :ivar last_event_received: + :vartype last_event_received: str + """ + + last_event_received: Optional[str] = rest_field( + name="lastEventReceived", visibility=["read", "create", "update", "delete", "query"] + ) + + @overload + def __init__( + self, + *, + device_vendor: Optional[str] = None, + device_type: Optional[str] = None, + workspace: Optional["_models.ConnectedWorkspace"] = None, + last_event_received: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AttestationEvidence(_Model): + """Describe the properties of a assignment attestation. + + :ivar description: The description of the evidence. + :vartype description: str + :ivar source_url: The source url of the evidence. + :vartype source_url: str + """ + + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The description of the evidence.""" + source_url: Optional[str] = rest_field(name="sourceUrl", visibility=["read", "create", "update", "delete", "query"]) + """The source url of the evidence.""" + + @overload + def __init__( + self, + *, + description: Optional[str] = None, + source_url: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Authorization(_Model): + """Authorization payload. + + :ivar code: Gets or sets one-time OAuth code to exchange for refresh and access tokens. + + Only used during PUT/PATCH operations. The secret is cleared during GET. + :vartype code: str + """ + + code: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Gets or sets one-time OAuth code to exchange for refresh and access tokens. + + Only used during PUT/PATCH operations. The secret is cleared during GET.""" + + @overload + def __init__( + self, + *, + code: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Automation(ProxyResource): + """The security automation resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Security automation data. + :vartype properties: ~azure.mgmt.security.models.AutomationProperties + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. + :vartype location: str + :ivar kind: Kind of the resource. + :vartype kind: str + :ivar etag: Entity tag is used for comparing two or more entities from the same requested + resource. + :vartype etag: str + """ + + properties: Optional["_models.AutomationProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Security automation data.""" + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + location: Optional[str] = rest_field(visibility=["read", "create", "update"]) + """The geo-location where the resource lives.""" + kind: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Kind of the resource.""" + etag: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Entity tag is used for comparing two or more entities from the same requested resource.""" + + __flattened_items = ["description", "is_enabled", "scopes", "sources", "actions"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.AutomationProperties"] = None, + tags: Optional[dict[str, str]] = None, + location: Optional[str] = None, + kind: Optional[str] = None, + etag: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class AutomationAction(_Model): + """The action that should be triggered. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AutomationActionEventHub, AutomationActionLogicApp, AutomationActionWorkspace + + :ivar action_type: The type of the action that will be triggered by the Automation. Required. + Known values are: "LogicApp", "EventHub", "Workspace", and "Internal". + :vartype action_type: str or ~azure.mgmt.security.models.ActionType + """ + + __mapping__: dict[str, _Model] = {} + action_type: str = rest_discriminator(name="actionType", visibility=["read", "create", "update", "delete", "query"]) + """The type of the action that will be triggered by the Automation. Required. Known values are: + \"LogicApp\", \"EventHub\", \"Workspace\", and \"Internal\".""" + + @overload + def __init__( + self, + *, + action_type: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AutomationActionEventHub(AutomationAction, discriminator="EventHub"): + """The target Event Hub to which event data will be exported. To learn more about Microsoft + Defender for Cloud continuous export capabilities, visit `https://aka.ms/ASCExportLearnMore + `_. + + :ivar event_hub_resource_id: The target Event Hub Azure Resource ID. + :vartype event_hub_resource_id: str + :ivar sas_policy_name: The target Event Hub SAS policy name. + :vartype sas_policy_name: str + :ivar connection_string: The target Event Hub connection string (it will not be included in any + response). + :vartype connection_string: str + :ivar is_trusted_service_enabled: Indicates whether the trusted service is enabled or not. + :vartype is_trusted_service_enabled: bool + :ivar action_type: The type of the action that will be triggered by the Automation. Required. + EventHub. + :vartype action_type: str or ~azure.mgmt.security.models.EVENT_HUB + """ + + event_hub_resource_id: Optional[str] = rest_field( + name="eventHubResourceId", visibility=["read", "create", "update", "delete", "query"] + ) + """The target Event Hub Azure Resource ID.""" + sas_policy_name: Optional[str] = rest_field(name="sasPolicyName", visibility=["read"]) + """The target Event Hub SAS policy name.""" + connection_string: Optional[str] = rest_field( + name="connectionString", visibility=["read", "create", "update", "delete", "query"] + ) + """The target Event Hub connection string (it will not be included in any response).""" + is_trusted_service_enabled: Optional[bool] = rest_field( + name="isTrustedServiceEnabled", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether the trusted service is enabled or not.""" + action_type: Literal[ActionType.EVENT_HUB] = rest_discriminator(name="actionType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the action that will be triggered by the Automation. Required. EventHub.""" + + @overload + def __init__( + self, + *, + event_hub_resource_id: Optional[str] = None, + connection_string: Optional[str] = None, + is_trusted_service_enabled: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.action_type = ActionType.EVENT_HUB # type: ignore + + +class AutomationActionLogicApp(AutomationAction, discriminator="LogicApp"): + """The logic app action that should be triggered. To learn more about Microsoft Defender for + Cloud's Workflow Automation capabilities, visit `https://aka.ms/ASCWorkflowAutomationLearnMore + `_. + + :ivar logic_app_resource_id: The triggered Logic App Azure Resource ID. This can also reside on + other subscriptions, given that you have permissions to trigger the Logic App. + :vartype logic_app_resource_id: str + :ivar uri: The Logic App trigger URI endpoint (it will not be included in any response). + :vartype uri: str + :ivar action_type: The type of the action that will be triggered by the Automation. Required. + LogicApp. + :vartype action_type: str or ~azure.mgmt.security.models.LOGIC_APP + """ + + logic_app_resource_id: Optional[str] = rest_field( + name="logicAppResourceId", visibility=["read", "create", "update", "delete", "query"] + ) + """The triggered Logic App Azure Resource ID. This can also reside on other subscriptions, given + that you have permissions to trigger the Logic App.""" + uri: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The Logic App trigger URI endpoint (it will not be included in any response).""" + action_type: Literal[ActionType.LOGIC_APP] = rest_discriminator(name="actionType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the action that will be triggered by the Automation. Required. LogicApp.""" + + @overload + def __init__( + self, + *, + logic_app_resource_id: Optional[str] = None, + uri: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.action_type = ActionType.LOGIC_APP # type: ignore + + +class AutomationActionWorkspace(AutomationAction, discriminator="Workspace"): + """The Log Analytics Workspace to which event data will be exported. Security alerts data will + reside in the 'SecurityAlert' table and the assessments data will reside in the + 'SecurityRecommendation' table (under the 'Security'/'SecurityCenterFree' solutions). Note that + in order to view the data in the workspace, the Security Center Log Analytics free/standard + solution needs to be enabled on that workspace. To learn more about Microsoft Defender for + Cloud continuous export capabilities, visit `https://aka.ms/ASCExportLearnMore + `_. + + :ivar workspace_resource_id: The fully qualified Log Analytics Workspace Azure Resource ID. + :vartype workspace_resource_id: str + :ivar action_type: The type of the action that will be triggered by the Automation. Required. + Workspace. + :vartype action_type: str or ~azure.mgmt.security.models.WORKSPACE + """ + + workspace_resource_id: Optional[str] = rest_field( + name="workspaceResourceId", visibility=["read", "create", "update", "delete", "query"] + ) + """The fully qualified Log Analytics Workspace Azure Resource ID.""" + action_type: Literal[ActionType.WORKSPACE] = rest_discriminator(name="actionType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the action that will be triggered by the Automation. Required. Workspace.""" + + @overload + def __init__( + self, + *, + workspace_resource_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.action_type = ActionType.WORKSPACE # type: ignore + + +class AutomationProperties(_Model): + """A set of properties that defines the behavior of the automation configuration. To learn more + about the supported security events data models schemas - please visit + `https://aka.ms/ASCAutomationSchemas `_. + + :ivar description: The security automation description. + :vartype description: str + :ivar is_enabled: Indicates whether the security automation is enabled. + :vartype is_enabled: bool + :ivar scopes: A collection of scopes on which the security automations logic is applied. + Supported scopes are the subscription itself or a resource group under that subscription. The + automation will only apply on defined scopes. + :vartype scopes: list[~azure.mgmt.security.models.AutomationScope] + :ivar sources: A collection of the source event types which evaluate the security automation + set of rules. + :vartype sources: list[~azure.mgmt.security.models.AutomationSource] + :ivar actions: A collection of the actions which are triggered if all the configured rules + evaluations, within at least one rule set, are true. + :vartype actions: list[~azure.mgmt.security.models.AutomationAction] + """ + + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The security automation description.""" + is_enabled: Optional[bool] = rest_field( + name="isEnabled", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether the security automation is enabled.""" + scopes: Optional[list["_models.AutomationScope"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """A collection of scopes on which the security automations logic is applied. Supported scopes are + the subscription itself or a resource group under that subscription. The automation will only + apply on defined scopes.""" + sources: Optional[list["_models.AutomationSource"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """A collection of the source event types which evaluate the security automation set of rules.""" + actions: Optional[list["_models.AutomationAction"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """A collection of the actions which are triggered if all the configured rules evaluations, within + at least one rule set, are true.""" + + @overload + def __init__( + self, + *, + description: Optional[str] = None, + is_enabled: Optional[bool] = None, + scopes: Optional[list["_models.AutomationScope"]] = None, + sources: Optional[list["_models.AutomationSource"]] = None, + actions: Optional[list["_models.AutomationAction"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AutomationRuleSet(_Model): + """A rule set which evaluates all its rules upon an event interception. Only when all the included + rules in the rule set will be evaluated as 'true', will the event trigger the defined actions. + + :ivar rules: + :vartype rules: list[~azure.mgmt.security.models.AutomationTriggeringRule] + """ + + rules: Optional[list["_models.AutomationTriggeringRule"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + + @overload + def __init__( + self, + *, + rules: Optional[list["_models.AutomationTriggeringRule"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AutomationScope(_Model): + """A single automation scope. + + :ivar description: The resources scope description. + :vartype description: str + :ivar scope_path: The resources scope path. Can be the subscription on which the automation is + defined on or a resource group under that subscription (fully qualified Azure resource IDs). + :vartype scope_path: str + """ + + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The resources scope description.""" + scope_path: Optional[str] = rest_field(name="scopePath", visibility=["read", "create", "update", "delete", "query"]) + """The resources scope path. Can be the subscription on which the automation is defined on or a + resource group under that subscription (fully qualified Azure resource IDs).""" + + @overload + def __init__( + self, + *, + description: Optional[str] = None, + scope_path: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AutomationSource(_Model): + """The source event types which evaluate the security automation set of rules. For example - + security alerts and security assessments. To learn more about the supported security events + data models schemas - please visit `https://aka.ms/ASCAutomationSchemas + `_. + + :ivar event_source: A valid event source type. Known values are: "Assessments", + "AssessmentsSnapshot", "SubAssessments", "SubAssessmentsSnapshot", "Alerts", "SecureScores", + "SecureScoresSnapshot", "SecureScoreControls", "SecureScoreControlsSnapshot", + "RegulatoryComplianceAssessment", "RegulatoryComplianceAssessmentSnapshot", "AttackPaths", and + "AttackPathsSnapshot". + :vartype event_source: str or ~azure.mgmt.security.models.EventSource + :ivar rule_sets: A set of rules which evaluate upon event interception. A logical disjunction + is applied between defined rule sets (logical 'or'). + :vartype rule_sets: list[~azure.mgmt.security.models.AutomationRuleSet] + """ + + event_source: Optional[Union[str, "_models.EventSource"]] = rest_field( + name="eventSource", visibility=["read", "create", "update", "delete", "query"] + ) + """A valid event source type. Known values are: \"Assessments\", \"AssessmentsSnapshot\", + \"SubAssessments\", \"SubAssessmentsSnapshot\", \"Alerts\", \"SecureScores\", + \"SecureScoresSnapshot\", \"SecureScoreControls\", \"SecureScoreControlsSnapshot\", + \"RegulatoryComplianceAssessment\", \"RegulatoryComplianceAssessmentSnapshot\", + \"AttackPaths\", and \"AttackPathsSnapshot\".""" + rule_sets: Optional[list["_models.AutomationRuleSet"]] = rest_field( + name="ruleSets", visibility=["read", "create", "update", "delete", "query"] + ) + """A set of rules which evaluate upon event interception. A logical disjunction is applied between + defined rule sets (logical 'or').""" + + @overload + def __init__( + self, + *, + event_source: Optional[Union[str, "_models.EventSource"]] = None, + rule_sets: Optional[list["_models.AutomationRuleSet"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AutomationTriggeringRule(_Model): + """A rule which is evaluated upon event interception. The rule is configured by comparing a + specific value from the event model to an expected value. This comparison is done by using one + of the supported operators set. + + :ivar property_j_path: The JPath of the entity model property that should be checked. + :vartype property_j_path: str + :ivar property_type: The data type of the compared operands (string, integer, floating point + number or a boolean [true/false]]. Known values are: "String", "Integer", "Number", and + "Boolean". + :vartype property_type: str or ~azure.mgmt.security.models.PropertyType + :ivar expected_value: The expected value. + :vartype expected_value: str + :ivar operator: A valid comparer operator to use. A case-insensitive comparison will be applied + for String PropertyType. Known values are: "Equals", "GreaterThan", "GreaterThanOrEqualTo", + "LesserThan", "LesserThanOrEqualTo", "NotEquals", "Contains", "StartsWith", and "EndsWith". + :vartype operator: str or ~azure.mgmt.security.models.Operator + """ + + property_j_path: Optional[str] = rest_field( + name="propertyJPath", visibility=["read", "create", "update", "delete", "query"] + ) + """The JPath of the entity model property that should be checked.""" + property_type: Optional[Union[str, "_models.PropertyType"]] = rest_field( + name="propertyType", visibility=["read", "create", "update", "delete", "query"] + ) + """The data type of the compared operands (string, integer, floating point number or a boolean + [true/false]]. Known values are: \"String\", \"Integer\", \"Number\", and \"Boolean\".""" + expected_value: Optional[str] = rest_field( + name="expectedValue", visibility=["read", "create", "update", "delete", "query"] + ) + """The expected value.""" + operator: Optional[Union[str, "_models.Operator"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """A valid comparer operator to use. A case-insensitive comparison will be applied for String + PropertyType. Known values are: \"Equals\", \"GreaterThan\", \"GreaterThanOrEqualTo\", + \"LesserThan\", \"LesserThanOrEqualTo\", \"NotEquals\", \"Contains\", \"StartsWith\", and + \"EndsWith\".""" + + @overload + def __init__( + self, + *, + property_j_path: Optional[str] = None, + property_type: Optional[Union[str, "_models.PropertyType"]] = None, + expected_value: Optional[str] = None, + operator: Optional[Union[str, "_models.Operator"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Tags(_Model): + """A list of key value pairs that describe the resource. + + :ivar tags: A list of key value pairs that describe the resource. + :vartype tags: dict[str, str] + """ + + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """A list of key value pairs that describe the resource.""" + + @overload + def __init__( + self, + *, + tags: Optional[dict[str, str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AutomationUpdateModel(Tags): + """The update model of security automation resource. + + :ivar tags: A list of key value pairs that describe the resource. + :vartype tags: dict[str, str] + :ivar properties: Security automation data. + :vartype properties: ~azure.mgmt.security.models.AutomationProperties + """ + + properties: Optional["_models.AutomationProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Security automation data.""" + + __flattened_items = ["description", "is_enabled", "scopes", "sources", "actions"] + + @overload + def __init__( + self, + *, + tags: Optional[dict[str, str]] = None, + properties: Optional["_models.AutomationProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class AutomationValidationStatus(_Model): + """The security automation model state property bag. + + :ivar is_valid: Indicates whether the model is valid or not. + :vartype is_valid: bool + :ivar message: The validation message. + :vartype message: str + """ + + is_valid: Optional[bool] = rest_field(name="isValid", visibility=["read", "create", "update", "delete", "query"]) + """Indicates whether the model is valid or not.""" + message: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The validation message.""" + + @overload + def __init__( + self, + *, + is_valid: Optional[bool] = None, + message: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AutoProvisioningSetting(ProxyResource): + """Auto provisioning setting. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Auto provisioning setting data. + :vartype properties: ~azure.mgmt.security.models.AutoProvisioningSettingProperties + """ + + properties: Optional["_models.AutoProvisioningSettingProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Auto provisioning setting data.""" + + __flattened_items = ["auto_provision"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.AutoProvisioningSettingProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class AutoProvisioningSettingProperties(_Model): + """describes properties of an auto provisioning setting. + + :ivar auto_provision: Describes what kind of security agent provisioning action to take. + Required. Known values are: "On" and "Off". + :vartype auto_provision: str or ~azure.mgmt.security.models.AutoProvision + """ + + auto_provision: Union[str, "_models.AutoProvision"] = rest_field( + name="autoProvision", visibility=["read", "create", "update", "delete", "query"] + ) + """Describes what kind of security agent provisioning action to take. Required. Known values are: + \"On\" and \"Off\".""" + + @overload + def __init__( + self, + *, + auto_provision: Union[str, "_models.AutoProvision"], + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class EnvironmentData(_Model): + """The security connector environment data. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AwsEnvironmentData, AzureDevOpsScopeEnvironmentData, DockerHubEnvironmentData, + GcpProjectEnvironmentData, GithubScopeEnvironmentData, GitlabScopeEnvironmentData, + JFrogEnvironmentData + + :ivar environment_type: The type of the environment data. Required. Known values are: + "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", + "DockerHubOrganization", and "JFrogArtifactory". + :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType + """ + + __mapping__: dict[str, _Model] = {} + environment_type: str = rest_discriminator( + name="environmentType", visibility=["read", "create", "update", "delete", "query"] + ) + """The type of the environment data. Required. Known values are: \"AwsAccount\", \"GcpProject\", + \"GithubScope\", \"AzureDevOpsScope\", \"GitlabScope\", \"DockerHubOrganization\", and + \"JFrogArtifactory\".""" + + @overload + def __init__( + self, + *, + environment_type: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AwsEnvironmentData(EnvironmentData, discriminator="AwsAccount"): + """The AWS connector environment data. + + :ivar organizational_data: The AWS account's organizational data. + :vartype organizational_data: ~azure.mgmt.security.models.AwsOrganizationalData + :ivar regions: list of regions to scan. + :vartype regions: list[str] + :ivar account_name: The AWS account name. + :vartype account_name: str + :ivar scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). + :vartype scan_interval: int + :ivar environment_type: The type of the environment data. Required. AwsAccount. + :vartype environment_type: str or ~azure.mgmt.security.models.AWS_ACCOUNT + """ + + organizational_data: Optional["_models.AwsOrganizationalData"] = rest_field( + name="organizationalData", visibility=["read", "create", "update", "delete", "query"] + ) + """The AWS account's organizational data.""" + regions: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """list of regions to scan.""" + account_name: Optional[str] = rest_field(name="accountName", visibility=["read"]) + """The AWS account name.""" + scan_interval: Optional[int] = rest_field( + name="scanInterval", visibility=["read", "create", "update", "delete", "query"] + ) + """Scan interval in hours (value should be between 1-hour to 24-hours).""" + environment_type: Literal[EnvironmentType.AWS_ACCOUNT] = rest_discriminator(name="environmentType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the environment data. Required. AwsAccount.""" + + @overload + def __init__( + self, + *, + organizational_data: Optional["_models.AwsOrganizationalData"] = None, + regions: Optional[list[str]] = None, + scan_interval: Optional[int] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.environment_type = EnvironmentType.AWS_ACCOUNT # type: ignore + + +class AwsOrganizationalData(_Model): + """The AWS organization data. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AwsOrganizationalDataMember, AwsOrganizationalDataMaster + + :ivar organization_membership_type: The multi cloud account's membership type in the + organization. Required. Known values are: "Member" and "Organization". + :vartype organization_membership_type: str or + ~azure.mgmt.security.models.OrganizationMembershipType + """ + + __mapping__: dict[str, _Model] = {} + organization_membership_type: str = rest_discriminator( + name="organizationMembershipType", visibility=["read", "create", "update", "delete", "query"] + ) + """The multi cloud account's membership type in the organization. Required. Known values are: + \"Member\" and \"Organization\".""" + + @overload + def __init__( + self, + *, + organization_membership_type: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AwsOrganizationalDataMaster(AwsOrganizationalData, discriminator="Organization"): + """The AWS organization data for the master account. + + :ivar stackset_name: If the multi cloud account is of membership type organization, this will + be the name of the onboarding stackset. + :vartype stackset_name: str + :ivar excluded_account_ids: If the multi cloud account is of membership type organization, list + of accounts excluded from offering. + :vartype excluded_account_ids: list[str] + :ivar organization_membership_type: The multi cloud account's membership type in the + organization. Required. Organization. + :vartype organization_membership_type: str or ~azure.mgmt.security.models.ORGANIZATION + """ + + stackset_name: Optional[str] = rest_field( + name="stacksetName", visibility=["read", "create", "update", "delete", "query"] + ) + """If the multi cloud account is of membership type organization, this will be the name of the + onboarding stackset.""" + excluded_account_ids: Optional[list[str]] = rest_field( + name="excludedAccountIds", visibility=["read", "create", "update", "delete", "query"] + ) + """If the multi cloud account is of membership type organization, list of accounts excluded from + offering.""" + organization_membership_type: Literal[OrganizationMembershipType.ORGANIZATION] = rest_discriminator(name="organizationMembershipType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The multi cloud account's membership type in the organization. Required. Organization.""" + + @overload + def __init__( + self, + *, + stackset_name: Optional[str] = None, + excluded_account_ids: Optional[list[str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.organization_membership_type = OrganizationMembershipType.ORGANIZATION # type: ignore + + +class AwsOrganizationalDataMember(AwsOrganizationalData, discriminator="Member"): + """The AWS organization data for the member account. + + :ivar parent_hierarchy_id: If the multi cloud account is not of membership type organization, + this will be the ID of the account's parent. + :vartype parent_hierarchy_id: str + :ivar organization_membership_type: The multi cloud account's membership type in the + organization. Required. Member. + :vartype organization_membership_type: str or ~azure.mgmt.security.models.MEMBER + """ + + parent_hierarchy_id: Optional[str] = rest_field( + name="parentHierarchyId", visibility=["read", "create", "update", "delete", "query"] + ) + """If the multi cloud account is not of membership type organization, this will be the ID of the + account's parent.""" + organization_membership_type: Literal[OrganizationMembershipType.MEMBER] = rest_discriminator(name="organizationMembershipType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The multi cloud account's membership type in the organization. Required. Member.""" + + @overload + def __init__( + self, + *, + parent_hierarchy_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.organization_membership_type = OrganizationMembershipType.MEMBER # type: ignore + + +class AzureDevOpsOrg(ProxyResource): + """Azure DevOps Organization resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Azure DevOps Organization properties. + :vartype properties: ~azure.mgmt.security.models.AzureDevOpsOrgProperties + """ + + properties: Optional["_models.AzureDevOpsOrgProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Azure DevOps Organization properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.AzureDevOpsOrgProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AzureDevOpsOrgListResponse(_Model): + """List of RP resources which supports pagination. + + :ivar value: The AzureDevOpsOrg items on this page. + :vartype value: list[~azure.mgmt.security.models.AzureDevOpsOrg] + :ivar next_link: The link to the next page of items. + :vartype next_link: str + """ + + value: Optional[list["_models.AzureDevOpsOrg"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The AzureDevOpsOrg items on this page.""" + next_link: Optional[str] = rest_field(name="nextLink", visibility=["read", "create", "update", "delete", "query"]) + """The link to the next page of items.""" + + @overload + def __init__( + self, + *, + value: Optional[list["_models.AzureDevOpsOrg"]] = None, + next_link: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AzureDevOpsOrgProperties(_Model): + """Azure DevOps Organization properties. + + :ivar provisioning_status_message: Gets the resource status message. + :vartype provisioning_status_message: str + :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. + :vartype provisioning_status_update_time_utc: ~datetime.datetime + :ivar provisioning_state: The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", + "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". + :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState + :ivar onboarding_state: Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". + :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState + :ivar actionable_remediation: Configuration payload for PR Annotations. + :vartype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation + """ + + provisioning_status_message: Optional[str] = rest_field(name="provisioningStatusMessage", visibility=["read"]) + """Gets the resource status message.""" + provisioning_status_update_time_utc: Optional[datetime.datetime] = rest_field( + name="provisioningStatusUpdateTimeUtc", visibility=["read"], format="rfc3339" + ) + """Gets the time when resource was last checked.""" + provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + \"Pending\", \"PendingDeletion\", \"DeletionSuccess\", and \"DeletionFailure\".""" + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = rest_field( + name="onboardingState", visibility=["read", "create", "update", "delete", "query"] + ) + """Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: \"NotApplicable\", \"OnboardedByOtherConnector\", \"Onboarded\", and \"NotOnboarded\".""" + actionable_remediation: Optional["_models.ActionableRemediation"] = rest_field( + name="actionableRemediation", visibility=["read", "create", "update", "delete", "query"] + ) + """Configuration payload for PR Annotations.""" + + @overload + def __init__( + self, + *, + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, + actionable_remediation: Optional["_models.ActionableRemediation"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AzureDevOpsProject(ProxyResource): + """Azure DevOps Project resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Azure DevOps Project properties. + :vartype properties: ~azure.mgmt.security.models.AzureDevOpsProjectProperties + """ + + properties: Optional["_models.AzureDevOpsProjectProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Azure DevOps Project properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.AzureDevOpsProjectProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AzureDevOpsProjectProperties(_Model): + """Azure DevOps Project properties. + + :ivar provisioning_status_message: Gets the resource status message. + :vartype provisioning_status_message: str + :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. + :vartype provisioning_status_update_time_utc: ~datetime.datetime + :ivar provisioning_state: The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", + "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". + :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState + :ivar parent_org_name: Gets or sets parent Azure DevOps Organization name. + :vartype parent_org_name: str + :ivar project_id: Gets or sets Azure DevOps Project id. + :vartype project_id: str + :ivar onboarding_state: Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". + :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState + :ivar actionable_remediation: Configuration payload for PR Annotations. + :vartype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation + """ + + provisioning_status_message: Optional[str] = rest_field(name="provisioningStatusMessage", visibility=["read"]) + """Gets the resource status message.""" + provisioning_status_update_time_utc: Optional[datetime.datetime] = rest_field( + name="provisioningStatusUpdateTimeUtc", visibility=["read"], format="rfc3339" + ) + """Gets the time when resource was last checked.""" + provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + \"Pending\", \"PendingDeletion\", \"DeletionSuccess\", and \"DeletionFailure\".""" + parent_org_name: Optional[str] = rest_field( + name="parentOrgName", visibility=["read", "create", "update", "delete", "query"] + ) + """Gets or sets parent Azure DevOps Organization name.""" + project_id: Optional[str] = rest_field(name="projectId", visibility=["read"]) + """Gets or sets Azure DevOps Project id.""" + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = rest_field( + name="onboardingState", visibility=["read", "create", "update", "delete", "query"] + ) + """Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: \"NotApplicable\", \"OnboardedByOtherConnector\", \"Onboarded\", and \"NotOnboarded\".""" + actionable_remediation: Optional["_models.ActionableRemediation"] = rest_field( + name="actionableRemediation", visibility=["read", "create", "update", "delete", "query"] + ) + """Configuration payload for PR Annotations.""" + + @overload + def __init__( + self, + *, + parent_org_name: Optional[str] = None, + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, + actionable_remediation: Optional["_models.ActionableRemediation"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AzureDevOpsRepository(ProxyResource): + """Azure DevOps Repository resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Azure DevOps Repository properties. + :vartype properties: ~azure.mgmt.security.models.AzureDevOpsRepositoryProperties + """ + + properties: Optional["_models.AzureDevOpsRepositoryProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Azure DevOps Repository properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.AzureDevOpsRepositoryProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AzureDevOpsRepositoryProperties(_Model): + """Azure DevOps Repository properties. + + :ivar provisioning_status_message: Gets the resource status message. + :vartype provisioning_status_message: str + :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. + :vartype provisioning_status_update_time_utc: ~datetime.datetime + :ivar provisioning_state: The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", + "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". + :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState + :ivar parent_org_name: Gets or sets parent Azure DevOps Organization name. + :vartype parent_org_name: str + :ivar parent_project_name: Gets or sets parent Azure DevOps Project name. + :vartype parent_project_name: str + :ivar repo_id: Gets or sets Azure DevOps Repository id. + :vartype repo_id: str + :ivar repo_url: Gets or sets Azure DevOps Repository url. + :vartype repo_url: str + :ivar visibility: Gets or sets Azure DevOps repository visibility, whether it is public or + private etc. + :vartype visibility: str + :ivar onboarding_state: Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". + :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState + :ivar actionable_remediation: Configuration payload for PR Annotations. + :vartype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation + """ + + provisioning_status_message: Optional[str] = rest_field(name="provisioningStatusMessage", visibility=["read"]) + """Gets the resource status message.""" + provisioning_status_update_time_utc: Optional[datetime.datetime] = rest_field( + name="provisioningStatusUpdateTimeUtc", visibility=["read"], format="rfc3339" + ) + """Gets the time when resource was last checked.""" + provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + \"Pending\", \"PendingDeletion\", \"DeletionSuccess\", and \"DeletionFailure\".""" + parent_org_name: Optional[str] = rest_field( + name="parentOrgName", visibility=["read", "create", "update", "delete", "query"] + ) + """Gets or sets parent Azure DevOps Organization name.""" + parent_project_name: Optional[str] = rest_field( + name="parentProjectName", visibility=["read", "create", "update", "delete", "query"] + ) + """Gets or sets parent Azure DevOps Project name.""" + repo_id: Optional[str] = rest_field(name="repoId", visibility=["read"]) + """Gets or sets Azure DevOps Repository id.""" + repo_url: Optional[str] = rest_field(name="repoUrl", visibility=["read"]) + """Gets or sets Azure DevOps Repository url.""" + visibility: Optional[str] = rest_field(visibility=["read"]) + """Gets or sets Azure DevOps repository visibility, whether it is public or private etc.""" + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = rest_field( + name="onboardingState", visibility=["read", "create", "update", "delete", "query"] + ) + """Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: \"NotApplicable\", \"OnboardedByOtherConnector\", \"Onboarded\", and \"NotOnboarded\".""" + actionable_remediation: Optional["_models.ActionableRemediation"] = rest_field( + name="actionableRemediation", visibility=["read", "create", "update", "delete", "query"] + ) + """Configuration payload for PR Annotations.""" + + @overload + def __init__( + self, + *, + parent_org_name: Optional[str] = None, + parent_project_name: Optional[str] = None, + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, + actionable_remediation: Optional["_models.ActionableRemediation"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AzureDevOpsScopeEnvironmentData(EnvironmentData, discriminator="AzureDevOpsScope"): + """The AzureDevOps scope connector's environment data. + + :ivar environment_type: The type of the environment data. Required. AzureDevOpsScope. + :vartype environment_type: str or ~azure.mgmt.security.models.AZURE_DEV_OPS_SCOPE + """ + + environment_type: Literal[EnvironmentType.AZURE_DEV_OPS_SCOPE] = rest_discriminator(name="environmentType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the environment data. Required. AzureDevOpsScope.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.environment_type = EnvironmentType.AZURE_DEV_OPS_SCOPE # type: ignore + + +class CommonResourceDetails(_Model): + """Details of the resource that was assessed. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AzureResourceDetails + + :ivar source: The platform where the assessed resource resides. Required. Known values are: + "Azure", "OnPremise", "OnPremiseSql", "Aws", and "Gcp". + :vartype source: str or ~azure.mgmt.security.models.Source + """ + + __mapping__: dict[str, _Model] = {} + source: str = rest_discriminator(name="source", visibility=["read", "create", "update", "delete", "query"]) + """The platform where the assessed resource resides. Required. Known values are: \"Azure\", + \"OnPremise\", \"OnPremiseSql\", \"Aws\", and \"Gcp\".""" + + @overload + def __init__( + self, + *, + source: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AzureResourceDetails(CommonResourceDetails, discriminator="Azure"): + """Details of the Azure resource that was assessed. + + :ivar id: Azure resource Id of the assessed resource. + :vartype id: str + :ivar source: The platform where the assessed resource resides. Required. Resource is in Azure. + :vartype source: str or ~azure.mgmt.security.models.AZURE + """ + + id: Optional[str] = rest_field(visibility=["read"]) + """Azure resource Id of the assessed resource.""" + source: Literal[Source.AZURE] = rest_discriminator(name="source", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The platform where the assessed resource resides. Required. Resource is in Azure.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.source = Source.AZURE # type: ignore + + +class ResourceIdentifier(_Model): + """A resource identifier for an alert which can be used to direct the alert to the right product + exposure group (tenant, workspace, subscription etc.). + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AzureResourceIdentifier, LogAnalyticsIdentifier + + :ivar type: There can be multiple identifiers of different type per alert, this field specify + the identifier type. Required. Known values are: "AzureResource" and "LogAnalytics". + :vartype type: str or ~azure.mgmt.security.models.ResourceIdentifierType + """ + + __mapping__: dict[str, _Model] = {} + type: str = rest_discriminator(name="type", visibility=["read", "create", "update", "delete", "query"]) + """There can be multiple identifiers of different type per alert, this field specify the + identifier type. Required. Known values are: \"AzureResource\" and \"LogAnalytics\".""" + + @overload + def __init__( + self, + *, + type: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AzureResourceIdentifier(ResourceIdentifier, discriminator="AzureResource"): + """Azure resource identifier. + + :ivar azure_resource_id: ARM resource identifier for the cloud resource being alerted on. + :vartype azure_resource_id: str + :ivar type: There can be multiple identifiers of different type per alert, this field specify + the identifier type. Required. AzureResource. + :vartype type: str or ~azure.mgmt.security.models.AZURE_RESOURCE + """ + + azure_resource_id: Optional[str] = rest_field(name="azureResourceId", visibility=["read"]) + """ARM resource identifier for the cloud resource being alerted on.""" + type: Literal[ResourceIdentifierType.AZURE_RESOURCE] = rest_discriminator(name="type", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """There can be multiple identifiers of different type per alert, this field specify the + identifier type. Required. AzureResource.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.type = ResourceIdentifierType.AZURE_RESOURCE # type: ignore + + +class AzureResourceLink(_Model): + """Describes an Azure resource with kind. + + :ivar id: Azure resource Id. + :vartype id: str + """ + + id: Optional[str] = rest_field(visibility=["read"]) + """Azure resource Id.""" + + +class ServerVulnerabilityAssessmentsSetting(ProxyResource): + """A base vulnerability assessments setting on servers in the defined scope. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + AzureServersSetting + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: The resource-specific properties for this resource. + :vartype properties: any + :ivar kind: The kind of the server vulnerability assessments setting. Required. + "AzureServersSetting" + :vartype kind: str or ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKind + """ + + __mapping__: dict[str, _Model] = {} + properties: Optional[Any] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The resource-specific properties for this resource.""" + kind: str = rest_discriminator(name="kind", visibility=["read", "create", "update", "delete", "query"]) + """The kind of the server vulnerability assessments setting. Required. \"AzureServersSetting\"""" + + @overload + def __init__( + self, + *, + kind: str, + properties: Optional[Any] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AzureServersSetting(ServerVulnerabilityAssessmentsSetting, discriminator="AzureServersSetting"): + """A vulnerability assessments setting on Azure servers in the defined scope. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: The vulnerability assessments setting properties on Azure servers in the + defined scope. + :vartype properties: + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsAzureSettingProperties + :ivar kind: The kind of the server vulnerability assessments setting. Required. + AzureServersSetting. + :vartype kind: str or ~azure.mgmt.security.models.AZURE_SERVERS_SETTING + """ + + properties: Optional["_models.ServerVulnerabilityAssessmentsAzureSettingProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The vulnerability assessments setting properties on Azure servers in the defined scope.""" + kind: Literal[ServerVulnerabilityAssessmentsSettingKind.AZURE_SERVERS_SETTING] = rest_discriminator(name="kind", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The kind of the server vulnerability assessments setting. Required. AzureServersSetting.""" + + __flattened_items = ["selected_provider"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.ServerVulnerabilityAssessmentsAzureSettingProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class Baseline(_Model): + """Baseline details. + + :ivar expected_results: Expected results. + :vartype expected_results: list[list[str]] + :ivar updated_time: Baseline update time (UTC). + :vartype updated_time: ~datetime.datetime + """ + + expected_results: Optional[list[list[str]]] = rest_field( + name="expectedResults", visibility=["read", "create", "update", "delete", "query"] + ) + """Expected results.""" + updated_time: Optional[datetime.datetime] = rest_field( + name="updatedTime", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """Baseline update time (UTC).""" + + @overload + def __init__( + self, + *, + expected_results: Optional[list[list[str]]] = None, + updated_time: Optional[datetime.datetime] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class BaselineAdjustedResult(_Model): + """The rule result adjusted with baseline. + + :ivar baseline: Baseline details. + :vartype baseline: ~azure.mgmt.security.models.Baseline + :ivar status: The rule result status. Known values are: "NonFinding", "Finding", + "InternalError", and "NotApplicable". + :vartype status: str or ~azure.mgmt.security.models.RuleStatus + :ivar results_not_in_baseline: Results that are not in the baseline. + :vartype results_not_in_baseline: list[list[str]] + :ivar results_only_in_baseline: Results that are in the baseline. + :vartype results_only_in_baseline: list[list[str]] + """ + + baseline: Optional["_models.Baseline"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Baseline details.""" + status: Optional[Union[str, "_models.RuleStatus"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The rule result status. Known values are: \"NonFinding\", \"Finding\", \"InternalError\", and + \"NotApplicable\".""" + results_not_in_baseline: Optional[list[list[str]]] = rest_field( + name="resultsNotInBaseline", visibility=["read", "create", "update", "delete", "query"] + ) + """Results that are not in the baseline.""" + results_only_in_baseline: Optional[list[list[str]]] = rest_field( + name="resultsOnlyInBaseline", visibility=["read", "create", "update", "delete", "query"] + ) + """Results that are in the baseline.""" + + @overload + def __init__( + self, + *, + baseline: Optional["_models.Baseline"] = None, + status: Optional[Union[str, "_models.RuleStatus"]] = None, + results_not_in_baseline: Optional[list[list[str]]] = None, + results_only_in_baseline: Optional[list[list[str]]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class BenchmarkReference(_Model): + """The benchmark references. + + :ivar benchmark: The benchmark name. + :vartype benchmark: str + :ivar reference: The benchmark reference. + :vartype reference: str + """ + + benchmark: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The benchmark name.""" + reference: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The benchmark reference.""" + + @overload + def __init__( + self, + *, + benchmark: Optional[str] = None, + reference: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class BlobsScanSummary(_Model): + """A summary of the scan results of the blobs that were scanned. + + :ivar total_blobs_scanned: The total number of blobs that were scanned. + :vartype total_blobs_scanned: int + :ivar malicious_blobs_count: The number of malicious blobs that were detected during the scan. + :vartype malicious_blobs_count: int + :ivar skipped_blobs_count: The number of blobs that were skipped. + :vartype skipped_blobs_count: int + :ivar failed_blobs_count: The number of failed blob scans. + :vartype failed_blobs_count: int + :ivar scanned_blobs_in_gb: The number of gigabytes of data that were scanned. + :vartype scanned_blobs_in_gb: float + """ + + total_blobs_scanned: Optional[int] = rest_field( + name="totalBlobsScanned", visibility=["read", "create", "update", "delete", "query"] + ) + """The total number of blobs that were scanned.""" + malicious_blobs_count: Optional[int] = rest_field( + name="maliciousBlobsCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of malicious blobs that were detected during the scan.""" + skipped_blobs_count: Optional[int] = rest_field( + name="skippedBlobsCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of blobs that were skipped.""" + failed_blobs_count: Optional[int] = rest_field( + name="failedBlobsCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of failed blob scans.""" + scanned_blobs_in_gb: Optional[float] = rest_field( + name="scannedBlobsInGB", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of gigabytes of data that were scanned.""" + + @overload + def __init__( + self, + *, + total_blobs_scanned: Optional[int] = None, + malicious_blobs_count: Optional[int] = None, + skipped_blobs_count: Optional[int] = None, + failed_blobs_count: Optional[int] = None, + scanned_blobs_in_gb: Optional[float] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class BuiltInInfoType(_Model): + """Pre-configured sensitive information type. + + :ivar name: Display name of the info type. + :vartype name: str + :ivar id: Id of the info type. + :vartype id: str + :ivar type: Category of the built-in info type. + :vartype type: str + """ + + name: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Display name of the info type.""" + id: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Id of the info type.""" + type: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Category of the built-in info type.""" + + @overload + def __init__( + self, + *, + name: Optional[str] = None, + id: Optional[str] = None, # pylint: disable=redefined-builtin + type: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class CategoryConfiguration(_Model): + """Severity level per category configuration for PR Annotations. + + :ivar minimum_severity_level: Gets or sets minimum severity level for a given category. + :vartype minimum_severity_level: str + :ivar category: Rule categories. Code - code scanning results. Artifact scanning results. + Dependencies scanning results. IaC results. Secrets scanning results. Container scanning + results. Known values are: "Code", "Artifacts", "Dependencies", "Secrets", "IaC", and + "Containers". + :vartype category: str or ~azure.mgmt.security.models.RuleCategory + """ + + minimum_severity_level: Optional[str] = rest_field( + name="minimumSeverityLevel", visibility=["read", "create", "update", "delete", "query"] + ) + """Gets or sets minimum severity level for a given category.""" + category: Optional[Union[str, "_models.RuleCategory"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Rule categories. Code - code scanning results. Artifact scanning results. Dependencies scanning + results. IaC results. Secrets scanning results. Container scanning results. Known values are: + \"Code\", \"Artifacts\", \"Dependencies\", \"Secrets\", \"IaC\", and \"Containers\".""" + + @overload + def __init__( + self, + *, + minimum_severity_level: Optional[str] = None, + category: Optional[Union[str, "_models.RuleCategory"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class CefExternalSecuritySolution(ExternalSecuritySolution, discriminator="CEF"): + """Represents a security solution which sends CEF logs to an OMS workspace. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar location: Location where the resource is stored. Required. + :vartype location: str + :ivar properties: The external security solution properties for CEF solutions. + :vartype properties: ~azure.mgmt.security.models.CefSolutionProperties + :ivar kind: Required. CEF. + :vartype kind: str or ~azure.mgmt.security.models.CEF + """ + + properties: Optional["_models.CefSolutionProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The external security solution properties for CEF solutions.""" + kind: Literal[ExternalSecuritySolutionKindEnum.CEF] = rest_discriminator(name="kind", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Required. CEF.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.CefSolutionProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.kind = ExternalSecuritySolutionKindEnum.CEF # type: ignore + + +class CefSolutionProperties(ExternalSecuritySolutionProperties): + """The external security solution properties for CEF solutions. + + :ivar device_vendor: + :vartype device_vendor: str + :ivar device_type: + :vartype device_type: str + :ivar workspace: Represents an OMS workspace to which the solution is connected. + :vartype workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :ivar hostname: + :vartype hostname: str + :ivar agent: + :vartype agent: str + :ivar last_event_received: + :vartype last_event_received: str + """ + + hostname: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + agent: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + last_event_received: Optional[str] = rest_field( + name="lastEventReceived", visibility=["read", "create", "update", "delete", "query"] + ) + + @overload + def __init__( + self, + *, + device_vendor: Optional[str] = None, + device_type: Optional[str] = None, + workspace: Optional["_models.ConnectedWorkspace"] = None, + hostname: Optional[str] = None, + agent: Optional[str] = None, + last_event_received: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class CloudError(_Model): + """Common error response for all Azure Resource Manager APIs to return error details for failed + operations. (This also follows the OData error response format.). + + :ivar error: The error object. + :vartype error: ~azure.mgmt.security.models.CloudErrorBody + """ + + error: Optional["_models.CloudErrorBody"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The error object.""" + + __flattened_items = ["code", "message", "target", "details", "additional_info"] + + @overload + def __init__( + self, + *, + error: Optional["_models.CloudErrorBody"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.error is None: + return None + return getattr(self.error, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.error is None: + self.error = self._attr_to_rest_field["error"]._class_type() + setattr(self.error, key, value) + else: + super().__setattr__(key, value) + + +class CloudErrorBody(_Model): + """The error detail. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.CloudErrorBody] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ArmErrorAdditionalInfo] + """ + + code: Optional[str] = rest_field(visibility=["read"]) + """The error code.""" + message: Optional[str] = rest_field(visibility=["read"]) + """The error message.""" + target: Optional[str] = rest_field(visibility=["read"]) + """The error target.""" + details: Optional[list["_models.CloudErrorBody"]] = rest_field(visibility=["read"]) + """The error details.""" + additional_info: Optional[list["_models.ArmErrorAdditionalInfo"]] = rest_field( + name="additionalInfo", visibility=["read"] + ) + """The error additional info.""" + + +class CloudOffering(_Model): + """The security offering details. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + CspmMonitorAwsOffering, CspmMonitorAzureDevOpsOffering, CspmMonitorDockerHubOffering, + CspmMonitorGcpOffering, CspmMonitorGitLabOffering, CspmMonitorGithubOffering, + CspmMonitorJFrogOffering, DefenderCspmAwsOffering, DefenderCspmDockerHubOffering, + DefenderCspmGcpOffering, DefenderCspmJFrogOffering, DefenderForContainersAwsOffering, + DefenderForContainersDockerHubOffering, DefenderForContainersGcpOffering, + DefenderForContainersJFrogOffering, DefenderFoDatabasesAwsOffering, + DefenderForDatabasesGcpOffering, DefenderForServersAwsOffering, DefenderForServersGcpOffering + + :ivar offering_type: The type of the security offering. Required. Known values are: + "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", + "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", + "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", + "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", + "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", + "DefenderForContainersJFrog", and "DefenderCspmJFrog". + :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType + :ivar description: The offering description. + :vartype description: str + """ + + __mapping__: dict[str, _Model] = {} + offering_type: str = rest_discriminator( + name="offeringType", visibility=["read", "create", "update", "delete", "query"] + ) + """The type of the security offering. Required. Known values are: \"CspmMonitorAws\", + \"DefenderForContainersAws\", \"DefenderForServersAws\", \"DefenderForDatabasesAws\", + \"CspmMonitorGcp\", \"CspmMonitorGithub\", \"CspmMonitorAzureDevOps\", + \"DefenderForServersGcp\", \"DefenderForContainersGcp\", \"DefenderForDatabasesGcp\", + \"DefenderCspmAws\", \"DefenderCspmGcp\", \"CspmMonitorGitLab\", \"CspmMonitorDockerHub\", + \"DefenderForContainersDockerHub\", \"DefenderCspmDockerHub\", \"CspmMonitorJFrog\", + \"DefenderForContainersJFrog\", and \"DefenderCspmJFrog\".""" + description: Optional[str] = rest_field(visibility=["read"]) + """The offering description.""" + + @overload + def __init__( + self, + *, + offering_type: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Compliance(ExtensionResource): + """Compliance of a scope. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Compliance data. + :vartype properties: ~azure.mgmt.security.models.ComplianceProperties + """ + + properties: Optional["_models.ComplianceProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Compliance data.""" + + __flattened_items = ["assessment_timestamp_utc_date", "resource_count", "assessment_result"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.ComplianceProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class ComplianceProperties(_Model): + """The Compliance score (percentage) of a Subscription is a sum of all Resources' Compliances + under the given Subscription. A Resource Compliance is defined as the compliant ('healthy') + Policy Definitions out of all Policy Definitions applicable to a given resource. + + :ivar assessment_timestamp_utc_date: The timestamp when the Compliance calculation was + conducted. + :vartype assessment_timestamp_utc_date: ~datetime.datetime + :ivar resource_count: The resource count of the given subscription for which the Compliance + calculation was conducted (needed for Management Group Compliance calculation). + :vartype resource_count: int + :ivar assessment_result: An array of segment, which is the actually the compliance assessment. + :vartype assessment_result: list[~azure.mgmt.security.models.ComplianceSegment] + """ + + assessment_timestamp_utc_date: Optional[datetime.datetime] = rest_field( + name="assessmentTimestampUtcDate", visibility=["read"], format="rfc3339" + ) + """The timestamp when the Compliance calculation was conducted.""" + resource_count: Optional[int] = rest_field(name="resourceCount", visibility=["read"]) + """The resource count of the given subscription for which the Compliance calculation was conducted + (needed for Management Group Compliance calculation).""" + assessment_result: Optional[list["_models.ComplianceSegment"]] = rest_field( + name="assessmentResult", visibility=["read"] + ) + """An array of segment, which is the actually the compliance assessment.""" + + +class ComplianceResult(ExtensionResource): + """a compliance result. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Compliance result data. + :vartype properties: ~azure.mgmt.security.models.ComplianceResultProperties + """ + + properties: Optional["_models.ComplianceResultProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Compliance result data.""" + + __flattened_items = ["resource_status"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.ComplianceResultProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class ComplianceResultProperties(_Model): + """Compliance result data. + + :ivar resource_status: The status of the resource regarding a single assessment. Known values + are: "Healthy", "NotApplicable", "OffByPolicy", and "NotHealthy". + :vartype resource_status: str or ~azure.mgmt.security.models.ResourceStatus + """ + + resource_status: Optional[Union[str, "_models.ResourceStatus"]] = rest_field( + name="resourceStatus", visibility=["read"] + ) + """The status of the resource regarding a single assessment. Known values are: \"Healthy\", + \"NotApplicable\", \"OffByPolicy\", and \"NotHealthy\".""" + + +class ComplianceSegment(_Model): + """A segment of a compliance assessment. + + :ivar segment_type: The segment type, e.g. compliant, non-compliance, insufficient coverage, + N/A, etc. + :vartype segment_type: str + :ivar percentage: The size (%) of the segment. + :vartype percentage: float + """ + + segment_type: Optional[str] = rest_field(name="segmentType", visibility=["read"]) + """The segment type, e.g. compliant, non-compliance, insufficient coverage, N/A, etc.""" + percentage: Optional[float] = rest_field(visibility=["read"]) + """The size (%) of the segment.""" + + +class ConnectableResource(_Model): + """Describes the allowed inbound and outbound traffic of an Azure resource. + + :ivar id: The Azure resource id. + :vartype id: str + :ivar inbound_connected_resources: The list of Azure resources that the resource has inbound + allowed connection from. + :vartype inbound_connected_resources: list[~azure.mgmt.security.models.ConnectedResource] + :ivar outbound_connected_resources: The list of Azure resources that the resource has outbound + allowed connection to. + :vartype outbound_connected_resources: list[~azure.mgmt.security.models.ConnectedResource] + """ + + id: Optional[str] = rest_field(visibility=["read"]) + """The Azure resource id.""" + inbound_connected_resources: Optional[list["_models.ConnectedResource"]] = rest_field( + name="inboundConnectedResources", visibility=["read"] + ) + """The list of Azure resources that the resource has inbound allowed connection from.""" + outbound_connected_resources: Optional[list["_models.ConnectedResource"]] = rest_field( + name="outboundConnectedResources", visibility=["read"] + ) + """The list of Azure resources that the resource has outbound allowed connection to.""" + + +class ConnectedResource(_Model): + """Describes properties of a connected resource. + + :ivar connected_resource_id: The Azure resource id of the connected resource. + :vartype connected_resource_id: str + :ivar tcp_ports: The allowed tcp ports. + :vartype tcp_ports: str + :ivar udp_ports: The allowed udp ports. + :vartype udp_ports: str + """ + + connected_resource_id: Optional[str] = rest_field(name="connectedResourceId", visibility=["read"]) + """The Azure resource id of the connected resource.""" + tcp_ports: Optional[str] = rest_field(name="tcpPorts", visibility=["read"]) + """The allowed tcp ports.""" + udp_ports: Optional[str] = rest_field(name="udpPorts", visibility=["read"]) + """The allowed udp ports.""" + + +class ConnectedWorkspace(_Model): + """Represents an OMS workspace to which the solution is connected. + + :ivar id: Azure resource ID of the connected OMS workspace. + :vartype id: str + """ + + id: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Azure resource ID of the connected OMS workspace.""" + + @overload + def __init__( + self, + *, + id: Optional[str] = None, # pylint: disable=redefined-builtin + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ContainerRegistryVulnerabilityProperties(AdditionalData, discriminator="ContainerRegistryVulnerability"): + """Additional context fields for container registry Vulnerability assessment. + + :ivar type: Vulnerability Type. e.g: Vulnerability, Potential Vulnerability, Information + Gathered, Vulnerability. + :vartype type: str + :ivar cvss: Dictionary from cvss version to cvss details object. + :vartype cvss: dict[str, ~azure.mgmt.security.models.CVSS] + :ivar patchable: Indicates whether a patch is available or not. + :vartype patchable: bool + :ivar cve: List of CVEs. + :vartype cve: list[~azure.mgmt.security.models.CVE] + :ivar published_time: Published time. + :vartype published_time: ~datetime.datetime + :ivar vendor_references: + :vartype vendor_references: list[~azure.mgmt.security.models.VendorReference] + :ivar repository_name: Name of the repository which the vulnerable image belongs to. + :vartype repository_name: str + :ivar image_digest: Digest of the vulnerable image. + :vartype image_digest: str + :ivar assessed_resource_type: Sub-assessment resource type. Required. + ContainerRegistryVulnerability. + :vartype assessed_resource_type: str or + ~azure.mgmt.security.models.CONTAINER_REGISTRY_VULNERABILITY + """ + + type: Optional[str] = rest_field(visibility=["read"]) + """Vulnerability Type. e.g: Vulnerability, Potential Vulnerability, Information Gathered, + Vulnerability.""" + cvss: Optional[dict[str, "_models.CVSS"]] = rest_field(visibility=["read"]) + """Dictionary from cvss version to cvss details object.""" + patchable: Optional[bool] = rest_field(visibility=["read"]) + """Indicates whether a patch is available or not.""" + cve: Optional[list["_models.CVE"]] = rest_field(visibility=["read"]) + """List of CVEs.""" + published_time: Optional[datetime.datetime] = rest_field( + name="publishedTime", visibility=["read"], format="rfc3339" + ) + """Published time.""" + vendor_references: Optional[list["_models.VendorReference"]] = rest_field( + name="vendorReferences", visibility=["read"] + ) + repository_name: Optional[str] = rest_field(name="repositoryName", visibility=["read"]) + """Name of the repository which the vulnerable image belongs to.""" + image_digest: Optional[str] = rest_field(name="imageDigest", visibility=["read"]) + """Digest of the vulnerable image.""" + assessed_resource_type: Literal[AssessedResourceType.CONTAINER_REGISTRY_VULNERABILITY] = rest_discriminator(name="assessedResourceType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Sub-assessment resource type. Required. ContainerRegistryVulnerability.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.assessed_resource_type = AssessedResourceType.CONTAINER_REGISTRY_VULNERABILITY # type: ignore + + +class CspmMonitorAwsOffering(CloudOffering, discriminator="CspmMonitorAws"): + """The CSPM monitoring for AWS offering. + + :ivar description: The offering description. + :vartype description: str + :ivar native_cloud_connection: The native cloud connection configuration. + :vartype native_cloud_connection: + ~azure.mgmt.security.models.CspmMonitorAwsOfferingNativeCloudConnection + :ivar offering_type: The type of the security offering. Required. CspmMonitorAws. + :vartype offering_type: str or ~azure.mgmt.security.models.CSPM_MONITOR_AWS + """ + + native_cloud_connection: Optional["_models.CspmMonitorAwsOfferingNativeCloudConnection"] = rest_field( + name="nativeCloudConnection", visibility=["read", "create", "update", "delete", "query"] + ) + """The native cloud connection configuration.""" + offering_type: Literal[OfferingType.CSPM_MONITOR_AWS] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. CspmMonitorAws.""" + + @overload + def __init__( + self, + *, + native_cloud_connection: Optional["_models.CspmMonitorAwsOfferingNativeCloudConnection"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.CSPM_MONITOR_AWS # type: ignore + + +class CspmMonitorAwsOfferingNativeCloudConnection(_Model): # pylint: disable=name-too-long + """The native cloud connection configuration. + + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature.""" + + @overload + def __init__( + self, + *, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class CspmMonitorAzureDevOpsOffering(CloudOffering, discriminator="CspmMonitorAzureDevOps"): + """The CSPM monitoring for AzureDevOps offering. + + :ivar description: The offering description. + :vartype description: str + :ivar offering_type: The type of the security offering. Required. CspmMonitorAzureDevOps. + :vartype offering_type: str or ~azure.mgmt.security.models.CSPM_MONITOR_AZURE_DEV_OPS + """ + + offering_type: Literal[OfferingType.CSPM_MONITOR_AZURE_DEV_OPS] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. CspmMonitorAzureDevOps.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.CSPM_MONITOR_AZURE_DEV_OPS # type: ignore + + +class CspmMonitorDockerHubOffering(CloudOffering, discriminator="CspmMonitorDockerHub"): + """The CSPM (Cloud security posture management) monitoring for Docker Hub offering. + + :ivar description: The offering description. + :vartype description: str + :ivar offering_type: The type of the security offering. Required. CspmMonitorDockerHub. + :vartype offering_type: str or ~azure.mgmt.security.models.CSPM_MONITOR_DOCKER_HUB + """ + + offering_type: Literal[OfferingType.CSPM_MONITOR_DOCKER_HUB] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. CspmMonitorDockerHub.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.CSPM_MONITOR_DOCKER_HUB # type: ignore + + +class CspmMonitorGcpOffering(CloudOffering, discriminator="CspmMonitorGcp"): + """The CSPM monitoring for GCP offering. + + :ivar description: The offering description. + :vartype description: str + :ivar native_cloud_connection: The native cloud connection configuration. + :vartype native_cloud_connection: + ~azure.mgmt.security.models.CspmMonitorGcpOfferingNativeCloudConnection + :ivar offering_type: The type of the security offering. Required. CspmMonitorGcp. + :vartype offering_type: str or ~azure.mgmt.security.models.CSPM_MONITOR_GCP + """ + + native_cloud_connection: Optional["_models.CspmMonitorGcpOfferingNativeCloudConnection"] = rest_field( + name="nativeCloudConnection", visibility=["read", "create", "update", "delete", "query"] + ) + """The native cloud connection configuration.""" + offering_type: Literal[OfferingType.CSPM_MONITOR_GCP] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. CspmMonitorGcp.""" + + @overload + def __init__( + self, + *, + native_cloud_connection: Optional["_models.CspmMonitorGcpOfferingNativeCloudConnection"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.CSPM_MONITOR_GCP # type: ignore + + +class CspmMonitorGcpOfferingNativeCloudConnection(_Model): # pylint: disable=name-too-long + """The native cloud connection configuration. + + :ivar workload_identity_provider_id: The GCP workload identity provider id for the offering. + :vartype workload_identity_provider_id: str + :ivar service_account_email_address: The service account email address in GCP for this + offering. + :vartype service_account_email_address: str + """ + + workload_identity_provider_id: Optional[str] = rest_field( + name="workloadIdentityProviderId", visibility=["read", "create", "update", "delete", "query"] + ) + """The GCP workload identity provider id for the offering.""" + service_account_email_address: Optional[str] = rest_field( + name="serviceAccountEmailAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """The service account email address in GCP for this offering.""" + + @overload + def __init__( + self, + *, + workload_identity_provider_id: Optional[str] = None, + service_account_email_address: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class CspmMonitorGithubOffering(CloudOffering, discriminator="CspmMonitorGithub"): + """The CSPM monitoring for github offering. + + :ivar description: The offering description. + :vartype description: str + :ivar offering_type: The type of the security offering. Required. CspmMonitorGithub. + :vartype offering_type: str or ~azure.mgmt.security.models.CSPM_MONITOR_GITHUB + """ + + offering_type: Literal[OfferingType.CSPM_MONITOR_GITHUB] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. CspmMonitorGithub.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.CSPM_MONITOR_GITHUB # type: ignore + + +class CspmMonitorGitLabOffering(CloudOffering, discriminator="CspmMonitorGitLab"): + """The CSPM (Cloud security posture management) monitoring for gitlab offering. + + :ivar description: The offering description. + :vartype description: str + :ivar offering_type: The type of the security offering. Required. CspmMonitorGitLab. + :vartype offering_type: str or ~azure.mgmt.security.models.CSPM_MONITOR_GIT_LAB + """ + + offering_type: Literal[OfferingType.CSPM_MONITOR_GIT_LAB] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. CspmMonitorGitLab.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.CSPM_MONITOR_GIT_LAB # type: ignore + + +class CspmMonitorJFrogOffering(CloudOffering, discriminator="CspmMonitorJFrog"): + """The CSPM (Cloud security posture management) monitoring for JFrog Artifactory offering. + + :ivar description: The offering description. + :vartype description: str + :ivar offering_type: The type of the security offering. Required. CspmMonitorJFrog. + :vartype offering_type: str or ~azure.mgmt.security.models.CSPM_MONITOR_J_FROG + """ + + offering_type: Literal[OfferingType.CSPM_MONITOR_J_FROG] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. CspmMonitorJFrog.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.CSPM_MONITOR_J_FROG # type: ignore + + +class CustomRecommendation(ExtensionResource): + """Custom Recommendation. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: describes Custom Recommendation properties. + :vartype properties: ~azure.mgmt.security.models.CustomRecommendationProperties + """ + + properties: Optional["_models.CustomRecommendationProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """describes Custom Recommendation properties.""" + + __flattened_items = [ + "query", + "cloud_providers", + "severity", + "security_issue", + "display_name", + "description", + "remediation_description", + "assessment_key", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.CustomRecommendationProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class CustomRecommendationProperties(_Model): + """describes the Custom Recommendation properties. + + :ivar query: KQL query representing the Recommendation results required. + :vartype query: str + :ivar cloud_providers: List of all standard supported clouds. + :vartype cloud_providers: list[str or + ~azure.mgmt.security.models.RecommendationSupportedClouds] + :ivar severity: The severity to relate to the assessments generated by this Recommendation. + Known values are: "High", "Medium", and "Low". + :vartype severity: str or ~azure.mgmt.security.models.SeverityEnum + :ivar security_issue: The severity to relate to the assessments generated by this + Recommendation. Known values are: "Vulnerability", "ExcessivePermissions", "AnonymousAccess", + "NetworkExposure", "TrafficEncryption", and "BestPractices". + :vartype security_issue: str or ~azure.mgmt.security.models.SecurityIssue + :ivar display_name: The display name of the assessments generated by this Recommendation. + :vartype display_name: str + :ivar description: The description to relate to the assessments generated by this + Recommendation. + :vartype description: str + :ivar remediation_description: The remediation description to relate to the assessments + generated by this Recommendation. + :vartype remediation_description: str + :ivar assessment_key: The assessment metadata key used when an assessment is generated for this + Recommendation. + :vartype assessment_key: str + """ + + query: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """KQL query representing the Recommendation results required.""" + cloud_providers: Optional[list[Union[str, "_models.RecommendationSupportedClouds"]]] = rest_field( + name="cloudProviders", visibility=["read", "create", "update", "delete", "query"] + ) + """List of all standard supported clouds.""" + severity: Optional[Union[str, "_models.SeverityEnum"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The severity to relate to the assessments generated by this Recommendation. Known values are: + \"High\", \"Medium\", and \"Low\".""" + security_issue: Optional[Union[str, "_models.SecurityIssue"]] = rest_field( + name="securityIssue", visibility=["read", "create", "update", "delete", "query"] + ) + """The severity to relate to the assessments generated by this Recommendation. Known values are: + \"Vulnerability\", \"ExcessivePermissions\", \"AnonymousAccess\", \"NetworkExposure\", + \"TrafficEncryption\", and \"BestPractices\".""" + display_name: Optional[str] = rest_field( + name="displayName", visibility=["read", "create", "update", "delete", "query"] + ) + """The display name of the assessments generated by this Recommendation.""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The description to relate to the assessments generated by this Recommendation.""" + remediation_description: Optional[str] = rest_field( + name="remediationDescription", visibility=["read", "create", "update", "delete", "query"] + ) + """The remediation description to relate to the assessments generated by this Recommendation.""" + assessment_key: Optional[str] = rest_field(name="assessmentKey", visibility=["read"]) + """The assessment metadata key used when an assessment is generated for this Recommendation.""" + + @overload + def __init__( + self, + *, + query: Optional[str] = None, + cloud_providers: Optional[list[Union[str, "_models.RecommendationSupportedClouds"]]] = None, + severity: Optional[Union[str, "_models.SeverityEnum"]] = None, + security_issue: Optional[Union[str, "_models.SecurityIssue"]] = None, + display_name: Optional[str] = None, + description: Optional[str] = None, + remediation_description: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class CVE(_Model): + """CVE details. + + :ivar title: CVE title. + :vartype title: str + :ivar link: Link url. + :vartype link: str + """ + + title: Optional[str] = rest_field(visibility=["read"]) + """CVE title.""" + link: Optional[str] = rest_field(visibility=["read"]) + """Link url.""" + + +class CVSS(_Model): + """CVSS details. + + :ivar base: CVSS base. + :vartype base: float + """ + + base: Optional[float] = rest_field(visibility=["read"]) + """CVSS base.""" + + +class DataExportSettingProperties(_Model): + """The data export setting properties. + + :ivar enabled: Is the data export setting enabled. Required. + :vartype enabled: bool + """ + + enabled: bool = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is the data export setting enabled. Required.""" + + @overload + def __init__( + self, + *, + enabled: bool, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DataExportSettings(Setting, discriminator="DataExportSettings"): + """Represents a data export setting. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Data export setting data. + :vartype properties: ~azure.mgmt.security.models.DataExportSettingProperties + :ivar kind: the kind of the settings string. Required. DataExportSettings. + :vartype kind: str or ~azure.mgmt.security.models.DATA_EXPORT_SETTINGS + """ + + properties: Optional["_models.DataExportSettingProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Data export setting data.""" + kind: Literal[SettingKind.DATA_EXPORT_SETTINGS] = rest_discriminator(name="kind", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """the kind of the settings string. Required. DataExportSettings.""" + + __flattened_items = ["enabled"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.DataExportSettingProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class DefenderCspmAwsOffering(CloudOffering, discriminator="DefenderCspmAws"): + """The CSPM P1 for AWS offering. + + :ivar description: The offering description. + :vartype description: str + :ivar vm_scanners: The Microsoft Defender for CSPM offering VM scanning configuration. + :vartype vm_scanners: ~azure.mgmt.security.models.DefenderCspmAwsOfferingVmScanners + :ivar data_sensitivity_discovery: The Microsoft Defender Data Sensitivity discovery + configuration. + :vartype data_sensitivity_discovery: + ~azure.mgmt.security.models.DefenderCspmAwsOfferingDataSensitivityDiscovery + :ivar databases_dspm: The databases DSPM configuration. + :vartype databases_dspm: ~azure.mgmt.security.models.DefenderCspmAwsOfferingDatabasesDspm + :ivar ciem: Defenders CSPM Permissions Management offering configurations. + :vartype ciem: ~azure.mgmt.security.models.DefenderCspmAwsOfferingCiem + :ivar mdc_containers_image_assessment: The Microsoft Defender container image assessment + configuration. + :vartype mdc_containers_image_assessment: + ~azure.mgmt.security.models.DefenderCspmAwsOfferingMdcContainersImageAssessment + :ivar mdc_containers_agentless_discovery_k8_s: The Microsoft Defender container agentless + discovery K8s configuration. + :vartype mdc_containers_agentless_discovery_k8_s: + ~azure.mgmt.security.models.DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S + :ivar offering_type: The type of the security offering. Required. DefenderCspmAws. + :vartype offering_type: str or ~azure.mgmt.security.models.DEFENDER_CSPM_AWS + """ + + vm_scanners: Optional["_models.DefenderCspmAwsOfferingVmScanners"] = rest_field( + name="vmScanners", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender for CSPM offering VM scanning configuration.""" + data_sensitivity_discovery: Optional["_models.DefenderCspmAwsOfferingDataSensitivityDiscovery"] = rest_field( + name="dataSensitivityDiscovery", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender Data Sensitivity discovery configuration.""" + databases_dspm: Optional["_models.DefenderCspmAwsOfferingDatabasesDspm"] = rest_field( + name="databasesDspm", visibility=["read", "create", "update", "delete", "query"] + ) + """The databases DSPM configuration.""" + ciem: Optional["_models.DefenderCspmAwsOfferingCiem"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Defenders CSPM Permissions Management offering configurations.""" + mdc_containers_image_assessment: Optional["_models.DefenderCspmAwsOfferingMdcContainersImageAssessment"] = ( + rest_field(name="mdcContainersImageAssessment", visibility=["read", "create", "update", "delete", "query"]) + ) + """The Microsoft Defender container image assessment configuration.""" + mdc_containers_agentless_discovery_k8_s: Optional[ + "_models.DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S" + ] = rest_field( + name="mdcContainersAgentlessDiscoveryK8s", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender container agentless discovery K8s configuration.""" + offering_type: Literal[OfferingType.DEFENDER_CSPM_AWS] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. DefenderCspmAws.""" + + @overload + def __init__( + self, + *, + vm_scanners: Optional["_models.DefenderCspmAwsOfferingVmScanners"] = None, + data_sensitivity_discovery: Optional["_models.DefenderCspmAwsOfferingDataSensitivityDiscovery"] = None, + databases_dspm: Optional["_models.DefenderCspmAwsOfferingDatabasesDspm"] = None, + ciem: Optional["_models.DefenderCspmAwsOfferingCiem"] = None, + mdc_containers_image_assessment: Optional["_models.DefenderCspmAwsOfferingMdcContainersImageAssessment"] = None, + mdc_containers_agentless_discovery_k8_s: Optional[ + "_models.DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S" + ] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.DEFENDER_CSPM_AWS # type: ignore + + +class DefenderCspmAwsOfferingCiem(_Model): + """Defenders CSPM Permissions Management offering configurations. + + :ivar ciem_discovery: Defender CSPM Permissions Management discovery configuration. + :vartype ciem_discovery: ~azure.mgmt.security.models.DefenderCspmAwsOfferingCiemCiemDiscovery + :ivar ciem_oidc: AWS Defender CSPM Permissions Management OIDC (open id connect) connection + configurations. + :vartype ciem_oidc: ~azure.mgmt.security.models.DefenderCspmAwsOfferingCiemCiemOidc + """ + + ciem_discovery: Optional["_models.DefenderCspmAwsOfferingCiemCiemDiscovery"] = rest_field( + name="ciemDiscovery", visibility=["read", "create", "update", "delete", "query"] + ) + """Defender CSPM Permissions Management discovery configuration.""" + ciem_oidc: Optional["_models.DefenderCspmAwsOfferingCiemCiemOidc"] = rest_field( + name="ciemOidc", visibility=["read", "create", "update", "delete", "query"] + ) + """AWS Defender CSPM Permissions Management OIDC (open id connect) connection configurations.""" + + @overload + def __init__( + self, + *, + ciem_discovery: Optional["_models.DefenderCspmAwsOfferingCiemCiemDiscovery"] = None, + ciem_oidc: Optional["_models.DefenderCspmAwsOfferingCiemCiemOidc"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmAwsOfferingCiemCiemDiscovery(_Model): + """Defender CSPM Permissions Management discovery configuration. + + :ivar cloud_role_arn: The cloud role ARN in AWS for Permissions Management discovery. + :vartype cloud_role_arn: str + """ + + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for Permissions Management discovery.""" + + @overload + def __init__( + self, + *, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmAwsOfferingCiemCiemOidc(_Model): + """AWS Defender CSPM Permissions Management OIDC (open id connect) connection configurations. + + :ivar cloud_role_arn: The cloud role ARN in AWS for Permissions Management used for oidc + connection. + :vartype cloud_role_arn: str + :ivar azure_active_directory_app_name: the azure active directory app name used of + authenticating against AWS. + :vartype azure_active_directory_app_name: str + """ + + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for Permissions Management used for oidc connection.""" + azure_active_directory_app_name: Optional[str] = rest_field( + name="azureActiveDirectoryAppName", visibility=["read", "create", "update", "delete", "query"] + ) + """the azure active directory app name used of authenticating against AWS.""" + + @overload + def __init__( + self, + *, + cloud_role_arn: Optional[str] = None, + azure_active_directory_app_name: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmAwsOfferingDatabasesDspm(_Model): + """The databases DSPM configuration. + + :ivar enabled: Is databases DSPM protection enabled. + :vartype enabled: bool + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is databases DSPM protection enabled.""" + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmAwsOfferingDataSensitivityDiscovery(_Model): # pylint: disable=name-too-long + """The Microsoft Defender Data Sensitivity discovery configuration. + + :ivar enabled: Is Microsoft Defender Data Sensitivity discovery enabled. + :vartype enabled: bool + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender Data Sensitivity discovery enabled.""" + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S(_Model): # pylint: disable=name-too-long + """The Microsoft Defender container agentless discovery K8s configuration. + + :ivar enabled: Is Microsoft Defender container agentless discovery K8s enabled. + :vartype enabled: bool + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender container agentless discovery K8s enabled.""" + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmAwsOfferingMdcContainersImageAssessment(_Model): # pylint: disable=name-too-long + """The Microsoft Defender container image assessment configuration. + + :ivar enabled: Is Microsoft Defender container image assessment enabled. + :vartype enabled: bool + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender container image assessment enabled.""" + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class VmScannersBase(_Model): + """A VM scanning configuration for a security offering of a given environment. + + :ivar enabled: Is VM scanning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for VM scanning. + :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is VM scanning enabled.""" + configuration: Optional["_models.VmScannersBaseConfiguration"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Configuration for VM scanning.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.VmScannersBaseConfiguration"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class VmScannersAws(VmScannersBase): + """A VM scanning configuration for a security offering of a Aws environment. + + :ivar enabled: Is VM scanning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for VM scanning. + :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.VmScannersBaseConfiguration"] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmAwsOfferingVmScanners(VmScannersAws): + """The Microsoft Defender for CSPM offering VM scanning configuration. + + :ivar enabled: Is VM scanning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for VM scanning. + :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.VmScannersBaseConfiguration"] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmDockerHubOffering(CloudOffering, discriminator="DefenderCspmDockerHub"): + """The Defender for CSPM Docker Hub offering configurations. + + :ivar description: The offering description. + :vartype description: str + :ivar offering_type: The type of the security offering. Required. DefenderCspmDockerHub. + :vartype offering_type: str or ~azure.mgmt.security.models.DEFENDER_CSPM_DOCKER_HUB + """ + + offering_type: Literal[OfferingType.DEFENDER_CSPM_DOCKER_HUB] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. DefenderCspmDockerHub.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.DEFENDER_CSPM_DOCKER_HUB # type: ignore + + +class DefenderCspmGcpOffering(CloudOffering, discriminator="DefenderCspmGcp"): + """The CSPM P1 for GCP offering. + + :ivar description: The offering description. + :vartype description: str + :ivar ciem_discovery: GCP Defenders CSPM Permissions Management OIDC (Open ID connect) + connection configurations. + :vartype ciem_discovery: ~azure.mgmt.security.models.DefenderCspmGcpOfferingCiemDiscovery + :ivar vm_scanners: The Microsoft Defender for CSPM VM scanning configuration. + :vartype vm_scanners: ~azure.mgmt.security.models.DefenderCspmGcpOfferingVmScanners + :ivar data_sensitivity_discovery: The Microsoft Defender Data Sensitivity discovery + configuration. + :vartype data_sensitivity_discovery: + ~azure.mgmt.security.models.DefenderCspmGcpOfferingDataSensitivityDiscovery + :ivar mdc_containers_image_assessment: The Microsoft Defender Container image assessment + configuration. + :vartype mdc_containers_image_assessment: + ~azure.mgmt.security.models.DefenderCspmGcpOfferingMdcContainersImageAssessment + :ivar mdc_containers_agentless_discovery_k8_s: The Microsoft Defender Container agentless + discovery configuration. + :vartype mdc_containers_agentless_discovery_k8_s: + ~azure.mgmt.security.models.DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S + :ivar offering_type: The type of the security offering. Required. DefenderCspmGcp. + :vartype offering_type: str or ~azure.mgmt.security.models.DEFENDER_CSPM_GCP + """ + + ciem_discovery: Optional["_models.DefenderCspmGcpOfferingCiemDiscovery"] = rest_field( + name="ciemDiscovery", visibility=["read", "create", "update", "delete", "query"] + ) + """GCP Defenders CSPM Permissions Management OIDC (Open ID connect) connection configurations.""" + vm_scanners: Optional["_models.DefenderCspmGcpOfferingVmScanners"] = rest_field( + name="vmScanners", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender for CSPM VM scanning configuration.""" + data_sensitivity_discovery: Optional["_models.DefenderCspmGcpOfferingDataSensitivityDiscovery"] = rest_field( + name="dataSensitivityDiscovery", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender Data Sensitivity discovery configuration.""" + mdc_containers_image_assessment: Optional["_models.DefenderCspmGcpOfferingMdcContainersImageAssessment"] = ( + rest_field(name="mdcContainersImageAssessment", visibility=["read", "create", "update", "delete", "query"]) + ) + """The Microsoft Defender Container image assessment configuration.""" + mdc_containers_agentless_discovery_k8_s: Optional[ + "_models.DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S" + ] = rest_field( + name="mdcContainersAgentlessDiscoveryK8s", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender Container agentless discovery configuration.""" + offering_type: Literal[OfferingType.DEFENDER_CSPM_GCP] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. DefenderCspmGcp.""" + + @overload + def __init__( + self, + *, + ciem_discovery: Optional["_models.DefenderCspmGcpOfferingCiemDiscovery"] = None, + vm_scanners: Optional["_models.DefenderCspmGcpOfferingVmScanners"] = None, + data_sensitivity_discovery: Optional["_models.DefenderCspmGcpOfferingDataSensitivityDiscovery"] = None, + mdc_containers_image_assessment: Optional["_models.DefenderCspmGcpOfferingMdcContainersImageAssessment"] = None, + mdc_containers_agentless_discovery_k8_s: Optional[ + "_models.DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S" + ] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.DEFENDER_CSPM_GCP # type: ignore + + +class DefenderCspmGcpOfferingCiemDiscovery(_Model): + """GCP Defenders CSPM Permissions Management OIDC (Open ID connect) connection configurations. + + :ivar workload_identity_provider_id: The GCP workload identity provider id for Permissions + Management offering. + :vartype workload_identity_provider_id: str + :ivar service_account_email_address: The service account email address in GCP for Permissions + Management offering. + :vartype service_account_email_address: str + :ivar azure_active_directory_app_name: the azure active directory app name used of + authenticating against GCP workload identity federation. + :vartype azure_active_directory_app_name: str + """ + + workload_identity_provider_id: Optional[str] = rest_field( + name="workloadIdentityProviderId", visibility=["read", "create", "update", "delete", "query"] + ) + """The GCP workload identity provider id for Permissions Management offering.""" + service_account_email_address: Optional[str] = rest_field( + name="serviceAccountEmailAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """The service account email address in GCP for Permissions Management offering.""" + azure_active_directory_app_name: Optional[str] = rest_field( + name="azureActiveDirectoryAppName", visibility=["read", "create", "update", "delete", "query"] + ) + """the azure active directory app name used of authenticating against GCP workload identity + federation.""" + + @overload + def __init__( + self, + *, + workload_identity_provider_id: Optional[str] = None, + service_account_email_address: Optional[str] = None, + azure_active_directory_app_name: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmGcpOfferingDataSensitivityDiscovery(_Model): # pylint: disable=name-too-long + """The Microsoft Defender Data Sensitivity discovery configuration. + + :ivar enabled: Is Microsoft Defender Data Sensitivity discovery enabled. + :vartype enabled: bool + :ivar workload_identity_provider_id: The workload identity provider id in GCP for this feature. + :vartype workload_identity_provider_id: str + :ivar service_account_email_address: The service account email address in GCP for this feature. + :vartype service_account_email_address: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender Data Sensitivity discovery enabled.""" + workload_identity_provider_id: Optional[str] = rest_field( + name="workloadIdentityProviderId", visibility=["read", "create", "update", "delete", "query"] + ) + """The workload identity provider id in GCP for this feature.""" + service_account_email_address: Optional[str] = rest_field( + name="serviceAccountEmailAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """The service account email address in GCP for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + workload_identity_provider_id: Optional[str] = None, + service_account_email_address: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S(_Model): # pylint: disable=name-too-long + """The Microsoft Defender Container agentless discovery configuration. + + :ivar enabled: Is Microsoft Defender container agentless discovery enabled. + :vartype enabled: bool + :ivar workload_identity_provider_id: The workload identity provider id in GCP for this feature. + :vartype workload_identity_provider_id: str + :ivar service_account_email_address: The service account email address in GCP for this feature. + :vartype service_account_email_address: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender container agentless discovery enabled.""" + workload_identity_provider_id: Optional[str] = rest_field( + name="workloadIdentityProviderId", visibility=["read", "create", "update", "delete", "query"] + ) + """The workload identity provider id in GCP for this feature.""" + service_account_email_address: Optional[str] = rest_field( + name="serviceAccountEmailAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """The service account email address in GCP for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + workload_identity_provider_id: Optional[str] = None, + service_account_email_address: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmGcpOfferingMdcContainersImageAssessment(_Model): # pylint: disable=name-too-long + """The Microsoft Defender Container image assessment configuration. + + :ivar enabled: Is Microsoft Defender container image assessment enabled. + :vartype enabled: bool + :ivar workload_identity_provider_id: The workload identity provider id in GCP for this feature. + :vartype workload_identity_provider_id: str + :ivar service_account_email_address: The service account email address in GCP for this feature. + :vartype service_account_email_address: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender container image assessment enabled.""" + workload_identity_provider_id: Optional[str] = rest_field( + name="workloadIdentityProviderId", visibility=["read", "create", "update", "delete", "query"] + ) + """The workload identity provider id in GCP for this feature.""" + service_account_email_address: Optional[str] = rest_field( + name="serviceAccountEmailAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """The service account email address in GCP for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + workload_identity_provider_id: Optional[str] = None, + service_account_email_address: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class VmScannersGcp(VmScannersBase): + """A VM scanning configuration for a security offering of a GCP environment. + + :ivar enabled: Is VM scanning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for VM scanning. + :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration + """ + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.VmScannersBaseConfiguration"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmGcpOfferingVmScanners(VmScannersGcp): + """The Microsoft Defender for CSPM VM scanning configuration. + + :ivar enabled: Is VM scanning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for VM scanning. + :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration + """ + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.VmScannersBaseConfiguration"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderCspmJFrogOffering(CloudOffering, discriminator="DefenderCspmJFrog"): + """The CSPM P1 for JFrog Artifactory offering. + + :ivar description: The offering description. + :vartype description: str + :ivar mdc_containers_image_assessment: The Microsoft Defender Container image assessment + configuration. + :vartype mdc_containers_image_assessment: + ~azure.mgmt.security.models.DefenderCspmJFrogOfferingMdcContainersImageAssessment + :ivar offering_type: The type of the security offering. Required. DefenderCspmJFrog. + :vartype offering_type: str or ~azure.mgmt.security.models.DEFENDER_CSPM_J_FROG + """ + + mdc_containers_image_assessment: Optional["_models.DefenderCspmJFrogOfferingMdcContainersImageAssessment"] = ( + rest_field(name="mdcContainersImageAssessment", visibility=["read", "create", "update", "delete", "query"]) + ) + """The Microsoft Defender Container image assessment configuration.""" + offering_type: Literal[OfferingType.DEFENDER_CSPM_J_FROG] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. DefenderCspmJFrog.""" + + @overload + def __init__( + self, + *, + mdc_containers_image_assessment: Optional[ + "_models.DefenderCspmJFrogOfferingMdcContainersImageAssessment" + ] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.DEFENDER_CSPM_J_FROG # type: ignore + + +class DefenderCspmJFrogOfferingMdcContainersImageAssessment(_Model): # pylint: disable=name-too-long + """The Microsoft Defender Container image assessment configuration. + + :ivar enabled: Is Microsoft Defender container image assessment enabled. + :vartype enabled: bool + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender container image assessment enabled.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderFoDatabasesAwsOffering(CloudOffering, discriminator="DefenderForDatabasesAws"): + """The Defender for Databases AWS offering. + + :ivar description: The offering description. + :vartype description: str + :ivar arc_auto_provisioning: The ARC autoprovisioning configuration. + :vartype arc_auto_provisioning: + ~azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingArcAutoProvisioning + :ivar rds: The RDS configuration. + :vartype rds: ~azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingRds + :ivar databases_dspm: The databases data security posture management (DSPM) configuration. + :vartype databases_dspm: + ~azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingDatabasesDspm + :ivar offering_type: The type of the security offering. Required. DefenderForDatabasesAws. + :vartype offering_type: str or ~azure.mgmt.security.models.DEFENDER_FOR_DATABASES_AWS + """ + + arc_auto_provisioning: Optional["_models.DefenderFoDatabasesAwsOfferingArcAutoProvisioning"] = rest_field( + name="arcAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """The ARC autoprovisioning configuration.""" + rds: Optional["_models.DefenderFoDatabasesAwsOfferingRds"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The RDS configuration.""" + databases_dspm: Optional["_models.DefenderFoDatabasesAwsOfferingDatabasesDspm"] = rest_field( + name="databasesDspm", visibility=["read", "create", "update", "delete", "query"] + ) + """The databases data security posture management (DSPM) configuration.""" + offering_type: Literal[OfferingType.DEFENDER_FOR_DATABASES_AWS] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. DefenderForDatabasesAws.""" + + @overload + def __init__( + self, + *, + arc_auto_provisioning: Optional["_models.DefenderFoDatabasesAwsOfferingArcAutoProvisioning"] = None, + rds: Optional["_models.DefenderFoDatabasesAwsOfferingRds"] = None, + databases_dspm: Optional["_models.DefenderFoDatabasesAwsOfferingDatabasesDspm"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.DEFENDER_FOR_DATABASES_AWS # type: ignore + + +class DefenderFoDatabasesAwsOfferingArcAutoProvisioning(ArcAutoProvisioningAws): # pylint: disable=name-too-long + """The ARC autoprovisioning configuration. + + :ivar enabled: Is arc auto provisioning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. + :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.ArcAutoProvisioningConfiguration"] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderFoDatabasesAwsOfferingDatabasesDspm(_Model): # pylint: disable=name-too-long + """The databases data security posture management (DSPM) configuration. + + :ivar enabled: Is databases data security posture management (DSPM) protection enabled. + :vartype enabled: bool + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is databases data security posture management (DSPM) protection enabled.""" + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderFoDatabasesAwsOfferingRds(_Model): + """The RDS configuration. + + :ivar enabled: Is RDS protection enabled. + :vartype enabled: bool + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is RDS protection enabled.""" + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersAwsOffering(CloudOffering, discriminator="DefenderForContainersAws"): + """The Defender for Containers AWS offering. + + :ivar description: The offering description. + :vartype description: str + :ivar kubernetes_service: The kubernetes service connection configuration. + :vartype kubernetes_service: + ~azure.mgmt.security.models.DefenderForContainersAwsOfferingKubernetesService + :ivar kubernetes_data_collection: The kubernetes data collection connection configuration. + :vartype kubernetes_data_collection: + ~azure.mgmt.security.models.DefenderForContainersAwsOfferingKubernetesDataCollection + :ivar cloud_watch_to_kinesis: The cloudwatch to kinesis connection configuration. + :vartype cloud_watch_to_kinesis: + ~azure.mgmt.security.models.DefenderForContainersAwsOfferingCloudWatchToKinesis + :ivar kinesis_to_s3: The kinesis to s3 connection configuration. + :vartype kinesis_to_s3: ~azure.mgmt.security.models.DefenderForContainersAwsOfferingKinesisToS3 + :ivar enable_audit_logs_auto_provisioning: Is audit logs data collection enabled. + :vartype enable_audit_logs_auto_provisioning: bool + :ivar enable_defender_agent_auto_provisioning: Is Microsoft Defender for Cloud Kubernetes agent + auto provisioning enabled. + :vartype enable_defender_agent_auto_provisioning: bool + :ivar enable_policy_agent_auto_provisioning: Is Policy Kubernetes agent auto provisioning + enabled. + :vartype enable_policy_agent_auto_provisioning: bool + :ivar kube_audit_retention_time: The retention time in days of kube audit logs set on the + CloudWatch log group. + :vartype kube_audit_retention_time: int + :ivar data_collection_external_id: The externalId used by the data reader to prevent the + confused deputy attack. + :vartype data_collection_external_id: str + :ivar mdc_containers_image_assessment: The Microsoft Defender container image assessment + configuration. + :vartype mdc_containers_image_assessment: + ~azure.mgmt.security.models.DefenderForContainersAwsOfferingMdcContainersImageAssessment + :ivar mdc_containers_agentless_discovery_k8_s: The Microsoft Defender container agentless + discovery K8s configuration. + :vartype mdc_containers_agentless_discovery_k8_s: + ~azure.mgmt.security.models.DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S + :ivar vm_scanners: The Microsoft Defender for Container K8s VM host scanning configuration. + :vartype vm_scanners: ~azure.mgmt.security.models.DefenderForContainersAwsOfferingVmScanners + :ivar offering_type: The type of the security offering. Required. DefenderForContainersAws. + :vartype offering_type: str or ~azure.mgmt.security.models.DEFENDER_FOR_CONTAINERS_AWS + """ + + kubernetes_service: Optional["_models.DefenderForContainersAwsOfferingKubernetesService"] = rest_field( + name="kubernetesService", visibility=["read", "create", "update", "delete", "query"] + ) + """The kubernetes service connection configuration.""" + kubernetes_data_collection: Optional["_models.DefenderForContainersAwsOfferingKubernetesDataCollection"] = ( + rest_field(name="kubernetesDataCollection", visibility=["read", "create", "update", "delete", "query"]) + ) + """The kubernetes data collection connection configuration.""" + cloud_watch_to_kinesis: Optional["_models.DefenderForContainersAwsOfferingCloudWatchToKinesis"] = rest_field( + name="cloudWatchToKinesis", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloudwatch to kinesis connection configuration.""" + kinesis_to_s3: Optional["_models.DefenderForContainersAwsOfferingKinesisToS3"] = rest_field( + name="kinesisToS3", visibility=["read", "create", "update", "delete", "query"] + ) + """The kinesis to s3 connection configuration.""" + enable_audit_logs_auto_provisioning: Optional[bool] = rest_field( + name="enableAuditLogsAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """Is audit logs data collection enabled.""" + enable_defender_agent_auto_provisioning: Optional[bool] = rest_field( + name="enableDefenderAgentAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """Is Microsoft Defender for Cloud Kubernetes agent auto provisioning enabled.""" + enable_policy_agent_auto_provisioning: Optional[bool] = rest_field( + name="enablePolicyAgentAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """Is Policy Kubernetes agent auto provisioning enabled.""" + kube_audit_retention_time: Optional[int] = rest_field( + name="kubeAuditRetentionTime", visibility=["read", "create", "update", "delete", "query"] + ) + """The retention time in days of kube audit logs set on the CloudWatch log group.""" + data_collection_external_id: Optional[str] = rest_field( + name="dataCollectionExternalId", visibility=["read", "create", "update", "delete", "query"] + ) + """The externalId used by the data reader to prevent the confused deputy attack.""" + mdc_containers_image_assessment: Optional[ + "_models.DefenderForContainersAwsOfferingMdcContainersImageAssessment" + ] = rest_field(name="mdcContainersImageAssessment", visibility=["read", "create", "update", "delete", "query"]) + """The Microsoft Defender container image assessment configuration.""" + mdc_containers_agentless_discovery_k8_s: Optional[ + "_models.DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S" + ] = rest_field( + name="mdcContainersAgentlessDiscoveryK8s", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender container agentless discovery K8s configuration.""" + vm_scanners: Optional["_models.DefenderForContainersAwsOfferingVmScanners"] = rest_field( + name="vmScanners", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender for Container K8s VM host scanning configuration.""" + offering_type: Literal[OfferingType.DEFENDER_FOR_CONTAINERS_AWS] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. DefenderForContainersAws.""" + + @overload + def __init__( + self, + *, + kubernetes_service: Optional["_models.DefenderForContainersAwsOfferingKubernetesService"] = None, + kubernetes_data_collection: Optional["_models.DefenderForContainersAwsOfferingKubernetesDataCollection"] = None, + cloud_watch_to_kinesis: Optional["_models.DefenderForContainersAwsOfferingCloudWatchToKinesis"] = None, + kinesis_to_s3: Optional["_models.DefenderForContainersAwsOfferingKinesisToS3"] = None, + enable_audit_logs_auto_provisioning: Optional[bool] = None, + enable_defender_agent_auto_provisioning: Optional[bool] = None, + enable_policy_agent_auto_provisioning: Optional[bool] = None, + kube_audit_retention_time: Optional[int] = None, + data_collection_external_id: Optional[str] = None, + mdc_containers_image_assessment: Optional[ + "_models.DefenderForContainersAwsOfferingMdcContainersImageAssessment" + ] = None, + mdc_containers_agentless_discovery_k8_s: Optional[ + "_models.DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S" + ] = None, + vm_scanners: Optional["_models.DefenderForContainersAwsOfferingVmScanners"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.DEFENDER_FOR_CONTAINERS_AWS # type: ignore + + +class DefenderForContainersAwsOfferingCloudWatchToKinesis(_Model): # pylint: disable=name-too-long + """The cloudwatch to kinesis connection configuration. + + :ivar cloud_role_arn: The cloud role ARN in AWS used by CloudWatch to transfer data into + Kinesis. + :vartype cloud_role_arn: str + """ + + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS used by CloudWatch to transfer data into Kinesis.""" + + @overload + def __init__( + self, + *, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersAwsOfferingKinesisToS3(_Model): # pylint: disable=name-too-long + """The kinesis to s3 connection configuration. + + :ivar cloud_role_arn: The cloud role ARN in AWS used by Kinesis to transfer data into S3. + :vartype cloud_role_arn: str + """ + + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS used by Kinesis to transfer data into S3.""" + + @overload + def __init__( + self, + *, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersAwsOfferingKubernetesDataCollection(_Model): # pylint: disable=name-too-long + """The kubernetes data collection connection configuration. + + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature used for reading data. + :vartype cloud_role_arn: str + """ + + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature used for reading data.""" + + @overload + def __init__( + self, + *, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersAwsOfferingKubernetesService(_Model): # pylint: disable=name-too-long + """The kubernetes service connection configuration. + + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature used for provisioning + resources. + :vartype cloud_role_arn: str + """ + + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature used for provisioning resources.""" + + @overload + def __init__( + self, + *, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S(_Model): # pylint: disable=name-too-long + """The Microsoft Defender container agentless discovery K8s configuration. + + :ivar enabled: Is Microsoft Defender container agentless discovery K8s enabled. + :vartype enabled: bool + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender container agentless discovery K8s enabled.""" + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersAwsOfferingMdcContainersImageAssessment(_Model): # pylint: disable=name-too-long + """The Microsoft Defender container image assessment configuration. + + :ivar enabled: Is Microsoft Defender container image assessment enabled. + :vartype enabled: bool + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender container image assessment enabled.""" + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersAwsOfferingVmScanners(VmScannersAws): # pylint: disable=name-too-long + """The Microsoft Defender for Container K8s VM host scanning configuration. + + :ivar enabled: Is VM scanning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for VM scanning. + :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.VmScannersBaseConfiguration"] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersDockerHubOffering(CloudOffering, discriminator="DefenderForContainersDockerHub"): + """The Defender for containers Docker Hub offering configurations. + + :ivar description: The offering description. + :vartype description: str + :ivar offering_type: The type of the security offering. Required. + DefenderForContainersDockerHub. + :vartype offering_type: str or ~azure.mgmt.security.models.DEFENDER_FOR_CONTAINERS_DOCKER_HUB + """ + + offering_type: Literal[OfferingType.DEFENDER_FOR_CONTAINERS_DOCKER_HUB] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. DefenderForContainersDockerHub.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.DEFENDER_FOR_CONTAINERS_DOCKER_HUB # type: ignore + + +class DefenderForContainersGcpOffering(CloudOffering, discriminator="DefenderForContainersGcp"): + """The containers GCP offering. + + :ivar description: The offering description. + :vartype description: str + :ivar native_cloud_connection: The native cloud connection configuration. + :vartype native_cloud_connection: + ~azure.mgmt.security.models.DefenderForContainersGcpOfferingNativeCloudConnection + :ivar data_pipeline_native_cloud_connection: The native cloud connection configuration. + :vartype data_pipeline_native_cloud_connection: + ~azure.mgmt.security.models.DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection + :ivar enable_audit_logs_auto_provisioning: Is audit logs data collection enabled. + :vartype enable_audit_logs_auto_provisioning: bool + :ivar enable_defender_agent_auto_provisioning: Is Microsoft Defender for Cloud Kubernetes agent + auto provisioning enabled. + :vartype enable_defender_agent_auto_provisioning: bool + :ivar enable_policy_agent_auto_provisioning: Is Policy Kubernetes agent auto provisioning + enabled. + :vartype enable_policy_agent_auto_provisioning: bool + :ivar mdc_containers_image_assessment: The Microsoft Defender Container image assessment + configuration. + :vartype mdc_containers_image_assessment: + ~azure.mgmt.security.models.DefenderForContainersGcpOfferingMdcContainersImageAssessment + :ivar mdc_containers_agentless_discovery_k8_s: The Microsoft Defender Container agentless + discovery configuration. + :vartype mdc_containers_agentless_discovery_k8_s: + ~azure.mgmt.security.models.DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S + :ivar vm_scanners: The Microsoft Defender for Container K8s VM host scanning configuration. + :vartype vm_scanners: ~azure.mgmt.security.models.DefenderForContainersGcpOfferingVmScanners + :ivar offering_type: The type of the security offering. Required. DefenderForContainersGcp. + :vartype offering_type: str or ~azure.mgmt.security.models.DEFENDER_FOR_CONTAINERS_GCP + """ + + native_cloud_connection: Optional["_models.DefenderForContainersGcpOfferingNativeCloudConnection"] = rest_field( + name="nativeCloudConnection", visibility=["read", "create", "update", "delete", "query"] + ) + """The native cloud connection configuration.""" + data_pipeline_native_cloud_connection: Optional[ + "_models.DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection" + ] = rest_field(name="dataPipelineNativeCloudConnection", visibility=["read", "create", "update", "delete", "query"]) + """The native cloud connection configuration.""" + enable_audit_logs_auto_provisioning: Optional[bool] = rest_field( + name="enableAuditLogsAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """Is audit logs data collection enabled.""" + enable_defender_agent_auto_provisioning: Optional[bool] = rest_field( + name="enableDefenderAgentAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """Is Microsoft Defender for Cloud Kubernetes agent auto provisioning enabled.""" + enable_policy_agent_auto_provisioning: Optional[bool] = rest_field( + name="enablePolicyAgentAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """Is Policy Kubernetes agent auto provisioning enabled.""" + mdc_containers_image_assessment: Optional[ + "_models.DefenderForContainersGcpOfferingMdcContainersImageAssessment" + ] = rest_field(name="mdcContainersImageAssessment", visibility=["read", "create", "update", "delete", "query"]) + """The Microsoft Defender Container image assessment configuration.""" + mdc_containers_agentless_discovery_k8_s: Optional[ + "_models.DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S" + ] = rest_field( + name="mdcContainersAgentlessDiscoveryK8s", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender Container agentless discovery configuration.""" + vm_scanners: Optional["_models.DefenderForContainersGcpOfferingVmScanners"] = rest_field( + name="vmScanners", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender for Container K8s VM host scanning configuration.""" + offering_type: Literal[OfferingType.DEFENDER_FOR_CONTAINERS_GCP] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. DefenderForContainersGcp.""" + + @overload + def __init__( + self, + *, + native_cloud_connection: Optional["_models.DefenderForContainersGcpOfferingNativeCloudConnection"] = None, + data_pipeline_native_cloud_connection: Optional[ + "_models.DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection" + ] = None, + enable_audit_logs_auto_provisioning: Optional[bool] = None, + enable_defender_agent_auto_provisioning: Optional[bool] = None, + enable_policy_agent_auto_provisioning: Optional[bool] = None, + mdc_containers_image_assessment: Optional[ + "_models.DefenderForContainersGcpOfferingMdcContainersImageAssessment" + ] = None, + mdc_containers_agentless_discovery_k8_s: Optional[ + "_models.DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S" + ] = None, + vm_scanners: Optional["_models.DefenderForContainersGcpOfferingVmScanners"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.DEFENDER_FOR_CONTAINERS_GCP # type: ignore + + +class DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection(_Model): # pylint: disable=name-too-long + """The native cloud connection configuration. + + :ivar service_account_email_address: The data collection service account email address in GCP + for this offering. + :vartype service_account_email_address: str + :ivar workload_identity_provider_id: The data collection GCP workload identity provider id for + this offering. + :vartype workload_identity_provider_id: str + """ + + service_account_email_address: Optional[str] = rest_field( + name="serviceAccountEmailAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """The data collection service account email address in GCP for this offering.""" + workload_identity_provider_id: Optional[str] = rest_field( + name="workloadIdentityProviderId", visibility=["read", "create", "update", "delete", "query"] + ) + """The data collection GCP workload identity provider id for this offering.""" + + @overload + def __init__( + self, + *, + service_account_email_address: Optional[str] = None, + workload_identity_provider_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S(_Model): # pylint: disable=name-too-long + """The Microsoft Defender Container agentless discovery configuration. + + :ivar enabled: Is Microsoft Defender container agentless discovery enabled. + :vartype enabled: bool + :ivar workload_identity_provider_id: The workload identity provider id in GCP for this feature. + :vartype workload_identity_provider_id: str + :ivar service_account_email_address: The service account email address in GCP for this feature. + :vartype service_account_email_address: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender container agentless discovery enabled.""" + workload_identity_provider_id: Optional[str] = rest_field( + name="workloadIdentityProviderId", visibility=["read", "create", "update", "delete", "query"] + ) + """The workload identity provider id in GCP for this feature.""" + service_account_email_address: Optional[str] = rest_field( + name="serviceAccountEmailAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """The service account email address in GCP for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + workload_identity_provider_id: Optional[str] = None, + service_account_email_address: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersGcpOfferingMdcContainersImageAssessment(_Model): # pylint: disable=name-too-long + """The Microsoft Defender Container image assessment configuration. + + :ivar enabled: Is Microsoft Defender container image assessment enabled. + :vartype enabled: bool + :ivar workload_identity_provider_id: The workload identity provider id in GCP for this feature. + :vartype workload_identity_provider_id: str + :ivar service_account_email_address: The service account email address in GCP for this feature. + :vartype service_account_email_address: str + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender container image assessment enabled.""" + workload_identity_provider_id: Optional[str] = rest_field( + name="workloadIdentityProviderId", visibility=["read", "create", "update", "delete", "query"] + ) + """The workload identity provider id in GCP for this feature.""" + service_account_email_address: Optional[str] = rest_field( + name="serviceAccountEmailAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """The service account email address in GCP for this feature.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + workload_identity_provider_id: Optional[str] = None, + service_account_email_address: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersGcpOfferingNativeCloudConnection(_Model): # pylint: disable=name-too-long + """The native cloud connection configuration. + + :ivar service_account_email_address: The service account email address in GCP for this + offering. + :vartype service_account_email_address: str + :ivar workload_identity_provider_id: The GCP workload identity provider id for this offering. + :vartype workload_identity_provider_id: str + """ + + service_account_email_address: Optional[str] = rest_field( + name="serviceAccountEmailAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """The service account email address in GCP for this offering.""" + workload_identity_provider_id: Optional[str] = rest_field( + name="workloadIdentityProviderId", visibility=["read", "create", "update", "delete", "query"] + ) + """The GCP workload identity provider id for this offering.""" + + @overload + def __init__( + self, + *, + service_account_email_address: Optional[str] = None, + workload_identity_provider_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersGcpOfferingVmScanners(VmScannersGcp): # pylint: disable=name-too-long + """The Microsoft Defender for Container K8s VM host scanning configuration. + + :ivar enabled: Is VM scanning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for VM scanning. + :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration + """ + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.VmScannersBaseConfiguration"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForContainersJFrogOffering(CloudOffering, discriminator="DefenderForContainersJFrog"): + """The Defender for Containers for JFrog Artifactory offering. + + :ivar description: The offering description. + :vartype description: str + :ivar offering_type: The type of the security offering. Required. DefenderForContainersJFrog. + :vartype offering_type: str or ~azure.mgmt.security.models.DEFENDER_FOR_CONTAINERS_J_FROG + """ + + offering_type: Literal[OfferingType.DEFENDER_FOR_CONTAINERS_J_FROG] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. DefenderForContainersJFrog.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.DEFENDER_FOR_CONTAINERS_J_FROG # type: ignore + + +class DefenderForDatabasesGcpOffering(CloudOffering, discriminator="DefenderForDatabasesGcp"): + """The Defender for Databases GCP offering configurations. + + :ivar description: The offering description. + :vartype description: str + :ivar arc_auto_provisioning: The ARC autoprovisioning configuration. + :vartype arc_auto_provisioning: + ~azure.mgmt.security.models.DefenderForDatabasesGcpOfferingArcAutoProvisioning + :ivar defender_for_databases_arc_auto_provisioning: The native cloud connection configuration. + :vartype defender_for_databases_arc_auto_provisioning: + ~azure.mgmt.security.models.DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning + :ivar offering_type: The type of the security offering. Required. DefenderForDatabasesGcp. + :vartype offering_type: str or ~azure.mgmt.security.models.DEFENDER_FOR_DATABASES_GCP + """ + + arc_auto_provisioning: Optional["_models.DefenderForDatabasesGcpOfferingArcAutoProvisioning"] = rest_field( + name="arcAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """The ARC autoprovisioning configuration.""" + defender_for_databases_arc_auto_provisioning: Optional[ + "_models.DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning" + ] = rest_field( + name="defenderForDatabasesArcAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """The native cloud connection configuration.""" + offering_type: Literal[OfferingType.DEFENDER_FOR_DATABASES_GCP] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. DefenderForDatabasesGcp.""" + + @overload + def __init__( + self, + *, + arc_auto_provisioning: Optional["_models.DefenderForDatabasesGcpOfferingArcAutoProvisioning"] = None, + defender_for_databases_arc_auto_provisioning: Optional[ + "_models.DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning" + ] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.DEFENDER_FOR_DATABASES_GCP # type: ignore + + +class DefenderForDatabasesGcpOfferingArcAutoProvisioning(ArcAutoProvisioningGcp): # pylint: disable=name-too-long + """The ARC autoprovisioning configuration. + + :ivar enabled: Is arc auto provisioning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. + :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration + """ + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.ArcAutoProvisioningConfiguration"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning(_Model): # pylint: disable=name-too-long + """The native cloud connection configuration. + + :ivar service_account_email_address: The service account email address in GCP for this + offering. + :vartype service_account_email_address: str + :ivar workload_identity_provider_id: The GCP workload identity provider id for this offering. + :vartype workload_identity_provider_id: str + """ + + service_account_email_address: Optional[str] = rest_field( + name="serviceAccountEmailAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """The service account email address in GCP for this offering.""" + workload_identity_provider_id: Optional[str] = rest_field( + name="workloadIdentityProviderId", visibility=["read", "create", "update", "delete", "query"] + ) + """The GCP workload identity provider id for this offering.""" + + @overload + def __init__( + self, + *, + service_account_email_address: Optional[str] = None, + workload_identity_provider_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersAwsOffering(CloudOffering, discriminator="DefenderForServersAws"): + """The Defender for Servers AWS offering. + + :ivar description: The offering description. + :vartype description: str + :ivar defender_for_servers: The Defender for servers connection configuration. + :vartype defender_for_servers: + ~azure.mgmt.security.models.DefenderForServersAwsOfferingDefenderForServers + :ivar arc_auto_provisioning: The ARC autoprovisioning configuration. + :vartype arc_auto_provisioning: + ~azure.mgmt.security.models.DefenderForServersAwsOfferingArcAutoProvisioning + :ivar va_auto_provisioning: The Vulnerability Assessment autoprovisioning configuration. + :vartype va_auto_provisioning: + ~azure.mgmt.security.models.DefenderForServersAwsOfferingVaAutoProvisioning + :ivar mde_auto_provisioning: The Microsoft Defender for Endpoint autoprovisioning + configuration. + :vartype mde_auto_provisioning: + ~azure.mgmt.security.models.DefenderForServersAwsOfferingMdeAutoProvisioning + :ivar sub_plan: configuration for the servers offering subPlan. + :vartype sub_plan: ~azure.mgmt.security.models.DefenderForServersAwsOfferingSubPlan + :ivar vm_scanners: The Microsoft Defender for Server VM scanning configuration. + :vartype vm_scanners: ~azure.mgmt.security.models.DefenderForServersAwsOfferingVmScanners + :ivar offering_type: The type of the security offering. Required. DefenderForServersAws. + :vartype offering_type: str or ~azure.mgmt.security.models.DEFENDER_FOR_SERVERS_AWS + """ + + defender_for_servers: Optional["_models.DefenderForServersAwsOfferingDefenderForServers"] = rest_field( + name="defenderForServers", visibility=["read", "create", "update", "delete", "query"] + ) + """The Defender for servers connection configuration.""" + arc_auto_provisioning: Optional["_models.DefenderForServersAwsOfferingArcAutoProvisioning"] = rest_field( + name="arcAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """The ARC autoprovisioning configuration.""" + va_auto_provisioning: Optional["_models.DefenderForServersAwsOfferingVaAutoProvisioning"] = rest_field( + name="vaAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """The Vulnerability Assessment autoprovisioning configuration.""" + mde_auto_provisioning: Optional["_models.DefenderForServersAwsOfferingMdeAutoProvisioning"] = rest_field( + name="mdeAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender for Endpoint autoprovisioning configuration.""" + sub_plan: Optional["_models.DefenderForServersAwsOfferingSubPlan"] = rest_field( + name="subPlan", visibility=["read", "create", "update", "delete", "query"] + ) + """configuration for the servers offering subPlan.""" + vm_scanners: Optional["_models.DefenderForServersAwsOfferingVmScanners"] = rest_field( + name="vmScanners", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender for Server VM scanning configuration.""" + offering_type: Literal[OfferingType.DEFENDER_FOR_SERVERS_AWS] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. DefenderForServersAws.""" + + @overload + def __init__( + self, + *, + defender_for_servers: Optional["_models.DefenderForServersAwsOfferingDefenderForServers"] = None, + arc_auto_provisioning: Optional["_models.DefenderForServersAwsOfferingArcAutoProvisioning"] = None, + va_auto_provisioning: Optional["_models.DefenderForServersAwsOfferingVaAutoProvisioning"] = None, + mde_auto_provisioning: Optional["_models.DefenderForServersAwsOfferingMdeAutoProvisioning"] = None, + sub_plan: Optional["_models.DefenderForServersAwsOfferingSubPlan"] = None, + vm_scanners: Optional["_models.DefenderForServersAwsOfferingVmScanners"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.DEFENDER_FOR_SERVERS_AWS # type: ignore + + +class DefenderForServersAwsOfferingArcAutoProvisioning(ArcAutoProvisioningAws): # pylint: disable=name-too-long + """The ARC autoprovisioning configuration. + + :ivar enabled: Is arc auto provisioning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. + :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.ArcAutoProvisioningConfiguration"] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersAwsOfferingDefenderForServers(_Model): # pylint: disable=name-too-long + """The Defender for servers connection configuration. + + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + cloud_role_arn: Optional[str] = rest_field( + name="cloudRoleArn", visibility=["read", "create", "update", "delete", "query"] + ) + """The cloud role ARN in AWS for this feature.""" + + @overload + def __init__( + self, + *, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersAwsOfferingMdeAutoProvisioning(_Model): # pylint: disable=name-too-long + """The Microsoft Defender for Endpoint autoprovisioning configuration. + + :ivar enabled: Is Microsoft Defender for Endpoint auto provisioning enabled. + :vartype enabled: bool + :ivar configuration: configuration for Microsoft Defender for Endpoint autoprovisioning. + :vartype configuration: any + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender for Endpoint auto provisioning enabled.""" + configuration: Optional[Any] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """configuration for Microsoft Defender for Endpoint autoprovisioning.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional[Any] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersAwsOfferingSubPlan(_Model): + """configuration for the servers offering subPlan. + + :ivar type: The available sub plans. Known values are: "P1" and "P2". + :vartype type: str or ~azure.mgmt.security.models.SubPlan + """ + + type: Optional[Union[str, "_models.SubPlan"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The available sub plans. Known values are: \"P1\" and \"P2\".""" + + @overload + def __init__( + self, + *, + type: Optional[Union[str, "_models.SubPlan"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersAwsOfferingVaAutoProvisioning(_Model): # pylint: disable=name-too-long + """The Vulnerability Assessment autoprovisioning configuration. + + :ivar enabled: Is Vulnerability Assessment auto provisioning enabled. + :vartype enabled: bool + :ivar configuration: configuration for Vulnerability Assessment autoprovisioning. + :vartype configuration: + ~azure.mgmt.security.models.DefenderForServersAwsOfferingVaAutoProvisioningConfiguration + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Vulnerability Assessment auto provisioning enabled.""" + configuration: Optional["_models.DefenderForServersAwsOfferingVaAutoProvisioningConfiguration"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """configuration for Vulnerability Assessment autoprovisioning.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.DefenderForServersAwsOfferingVaAutoProvisioningConfiguration"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersAwsOfferingVaAutoProvisioningConfiguration(_Model): # pylint: disable=name-too-long + """configuration for Vulnerability Assessment autoprovisioning. + + :ivar type: The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or + 'Qualys'. Known values are: "Qualys" and "TVM". + :vartype type: str or ~azure.mgmt.security.models.Type + """ + + type: Optional[Union[str, "_models.Type"]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or 'Qualys'. Known + values are: \"Qualys\" and \"TVM\".""" + + @overload + def __init__( + self, + *, + type: Optional[Union[str, "_models.Type"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersAwsOfferingVmScanners(VmScannersAws): + """The Microsoft Defender for Server VM scanning configuration. + + :ivar enabled: Is VM scanning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for VM scanning. + :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration + :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. + :vartype cloud_role_arn: str + """ + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.VmScannersBaseConfiguration"] = None, + cloud_role_arn: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersGcpOffering(CloudOffering, discriminator="DefenderForServersGcp"): + """The Defender for Servers GCP offering configurations. + + :ivar description: The offering description. + :vartype description: str + :ivar defender_for_servers: The Defender for servers connection configuration. + :vartype defender_for_servers: + ~azure.mgmt.security.models.DefenderForServersGcpOfferingDefenderForServers + :ivar arc_auto_provisioning: The ARC autoprovisioning configuration. + :vartype arc_auto_provisioning: + ~azure.mgmt.security.models.DefenderForServersGcpOfferingArcAutoProvisioning + :ivar va_auto_provisioning: The Vulnerability Assessment autoprovisioning configuration. + :vartype va_auto_provisioning: + ~azure.mgmt.security.models.DefenderForServersGcpOfferingVaAutoProvisioning + :ivar mde_auto_provisioning: The Microsoft Defender for Endpoint autoprovisioning + configuration. + :vartype mde_auto_provisioning: + ~azure.mgmt.security.models.DefenderForServersGcpOfferingMdeAutoProvisioning + :ivar sub_plan: configuration for the servers offering subPlan. + :vartype sub_plan: ~azure.mgmt.security.models.DefenderForServersGcpOfferingSubPlan + :ivar vm_scanners: The Microsoft Defender for Server VM scanning configuration. + :vartype vm_scanners: ~azure.mgmt.security.models.DefenderForServersGcpOfferingVmScanners + :ivar offering_type: The type of the security offering. Required. DefenderForServersGcp. + :vartype offering_type: str or ~azure.mgmt.security.models.DEFENDER_FOR_SERVERS_GCP + """ + + defender_for_servers: Optional["_models.DefenderForServersGcpOfferingDefenderForServers"] = rest_field( + name="defenderForServers", visibility=["read", "create", "update", "delete", "query"] + ) + """The Defender for servers connection configuration.""" + arc_auto_provisioning: Optional["_models.DefenderForServersGcpOfferingArcAutoProvisioning"] = rest_field( + name="arcAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """The ARC autoprovisioning configuration.""" + va_auto_provisioning: Optional["_models.DefenderForServersGcpOfferingVaAutoProvisioning"] = rest_field( + name="vaAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """The Vulnerability Assessment autoprovisioning configuration.""" + mde_auto_provisioning: Optional["_models.DefenderForServersGcpOfferingMdeAutoProvisioning"] = rest_field( + name="mdeAutoProvisioning", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender for Endpoint autoprovisioning configuration.""" + sub_plan: Optional["_models.DefenderForServersGcpOfferingSubPlan"] = rest_field( + name="subPlan", visibility=["read", "create", "update", "delete", "query"] + ) + """configuration for the servers offering subPlan.""" + vm_scanners: Optional["_models.DefenderForServersGcpOfferingVmScanners"] = rest_field( + name="vmScanners", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Defender for Server VM scanning configuration.""" + offering_type: Literal[OfferingType.DEFENDER_FOR_SERVERS_GCP] = rest_discriminator(name="offeringType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the security offering. Required. DefenderForServersGcp.""" + + @overload + def __init__( + self, + *, + defender_for_servers: Optional["_models.DefenderForServersGcpOfferingDefenderForServers"] = None, + arc_auto_provisioning: Optional["_models.DefenderForServersGcpOfferingArcAutoProvisioning"] = None, + va_auto_provisioning: Optional["_models.DefenderForServersGcpOfferingVaAutoProvisioning"] = None, + mde_auto_provisioning: Optional["_models.DefenderForServersGcpOfferingMdeAutoProvisioning"] = None, + sub_plan: Optional["_models.DefenderForServersGcpOfferingSubPlan"] = None, + vm_scanners: Optional["_models.DefenderForServersGcpOfferingVmScanners"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.offering_type = OfferingType.DEFENDER_FOR_SERVERS_GCP # type: ignore + + +class DefenderForServersGcpOfferingArcAutoProvisioning(ArcAutoProvisioningGcp): # pylint: disable=name-too-long + """The ARC autoprovisioning configuration. + + :ivar enabled: Is arc auto provisioning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. + :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration + """ + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.ArcAutoProvisioningConfiguration"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersGcpOfferingDefenderForServers(_Model): # pylint: disable=name-too-long + """The Defender for servers connection configuration. + + :ivar workload_identity_provider_id: The workload identity provider id in GCP for this feature. + :vartype workload_identity_provider_id: str + :ivar service_account_email_address: The service account email address in GCP for this feature. + :vartype service_account_email_address: str + """ + + workload_identity_provider_id: Optional[str] = rest_field( + name="workloadIdentityProviderId", visibility=["read", "create", "update", "delete", "query"] + ) + """The workload identity provider id in GCP for this feature.""" + service_account_email_address: Optional[str] = rest_field( + name="serviceAccountEmailAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """The service account email address in GCP for this feature.""" + + @overload + def __init__( + self, + *, + workload_identity_provider_id: Optional[str] = None, + service_account_email_address: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersGcpOfferingMdeAutoProvisioning(_Model): # pylint: disable=name-too-long + """The Microsoft Defender for Endpoint autoprovisioning configuration. + + :ivar enabled: Is Microsoft Defender for Endpoint auto provisioning enabled. + :vartype enabled: bool + :ivar configuration: configuration for Microsoft Defender for Endpoint autoprovisioning. + :vartype configuration: any + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Microsoft Defender for Endpoint auto provisioning enabled.""" + configuration: Optional[Any] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """configuration for Microsoft Defender for Endpoint autoprovisioning.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional[Any] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersGcpOfferingSubPlan(_Model): + """configuration for the servers offering subPlan. + + :ivar type: The available sub plans. Known values are: "P1" and "P2". + :vartype type: str or ~azure.mgmt.security.models.SubPlan + """ + + type: Optional[Union[str, "_models.SubPlan"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The available sub plans. Known values are: \"P1\" and \"P2\".""" + + @overload + def __init__( + self, + *, + type: Optional[Union[str, "_models.SubPlan"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersGcpOfferingVaAutoProvisioning(_Model): # pylint: disable=name-too-long + """The Vulnerability Assessment autoprovisioning configuration. + + :ivar enabled: Is Vulnerability Assessment auto provisioning enabled. + :vartype enabled: bool + :ivar configuration: configuration for Vulnerability Assessment autoprovisioning. + :vartype configuration: + ~azure.mgmt.security.models.DefenderForServersGcpOfferingVaAutoProvisioningConfiguration + """ + + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is Vulnerability Assessment auto provisioning enabled.""" + configuration: Optional["_models.DefenderForServersGcpOfferingVaAutoProvisioningConfiguration"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """configuration for Vulnerability Assessment autoprovisioning.""" + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.DefenderForServersGcpOfferingVaAutoProvisioningConfiguration"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersGcpOfferingVaAutoProvisioningConfiguration(_Model): # pylint: disable=name-too-long + """configuration for Vulnerability Assessment autoprovisioning. + + :ivar type: The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or + 'Qualys'. Known values are: "Qualys" and "TVM". + :vartype type: str or ~azure.mgmt.security.models.Type + """ + + type: Optional[Union[str, "_models.Type"]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or 'Qualys'. Known + values are: \"Qualys\" and \"TVM\".""" + + @overload + def __init__( + self, + *, + type: Optional[Union[str, "_models.Type"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForServersGcpOfferingVmScanners(VmScannersGcp): + """The Microsoft Defender for Server VM scanning configuration. + + :ivar enabled: Is VM scanning enabled. + :vartype enabled: bool + :ivar configuration: Configuration for VM scanning. + :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration + """ + + @overload + def __init__( + self, + *, + enabled: Optional[bool] = None, + configuration: Optional["_models.VmScannersBaseConfiguration"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForStorageSetting(ExtensionResource): + """The Defender for Storage resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Defender for Storage resource properties. + :vartype properties: ~azure.mgmt.security.models.DefenderForStorageSettingProperties + """ + + properties: Optional["_models.DefenderForStorageSettingProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Defender for Storage resource properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.DefenderForStorageSettingProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefenderForStorageSettingProperties(_Model): + """Defender for Storage resource properties. + + :ivar is_enabled: Indicates whether Defender for Storage is enabled on this storage account. + :vartype is_enabled: bool + :ivar malware_scanning: Properties of Malware Scanning. + :vartype malware_scanning: ~azure.mgmt.security.models.MalwareScanningProperties + :ivar sensitive_data_discovery: Properties of Sensitive Data Discovery. + :vartype sensitive_data_discovery: ~azure.mgmt.security.models.SensitiveDataDiscoveryProperties + :ivar override_subscription_level_settings: Indicates whether the settings defined for this + storage account should override the settings defined for the subscription. + :vartype override_subscription_level_settings: bool + """ + + is_enabled: Optional[bool] = rest_field( + name="isEnabled", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether Defender for Storage is enabled on this storage account.""" + malware_scanning: Optional["_models.MalwareScanningProperties"] = rest_field( + name="malwareScanning", visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of Malware Scanning.""" + sensitive_data_discovery: Optional["_models.SensitiveDataDiscoveryProperties"] = rest_field( + name="sensitiveDataDiscovery", visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of Sensitive Data Discovery.""" + override_subscription_level_settings: Optional[bool] = rest_field( + name="overrideSubscriptionLevelSettings", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether the settings defined for this storage account should override the settings + defined for the subscription.""" + + @overload + def __init__( + self, + *, + is_enabled: Optional[bool] = None, + malware_scanning: Optional["_models.MalwareScanningProperties"] = None, + sensitive_data_discovery: Optional["_models.SensitiveDataDiscoveryProperties"] = None, + override_subscription_level_settings: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DenylistCustomAlertRule(ListCustomAlertRule, discriminator="DenylistCustomAlertRule"): + """A custom alert rule that checks if a value (depends on the custom alert type) is denied. + + :ivar display_name: The display name of the custom alert. + :vartype display_name: str + :ivar description: The description of the custom alert. + :vartype description: str + :ivar is_enabled: Status of the custom alert. Required. + :vartype is_enabled: bool + :ivar value_type: The value type of the items in the list. Known values are: "IpCidr" and + "String". + :vartype value_type: str or ~azure.mgmt.security.models.ValueType + :ivar denylist_values: The values to deny. The format of the values depends on the rule type. + Required. + :vartype denylist_values: list[str] + :ivar rule_type: Required. Default value is "DenylistCustomAlertRule". + :vartype rule_type: str + """ + + denylist_values: list[str] = rest_field( + name="denylistValues", visibility=["read", "create", "update", "delete", "query"] + ) + """The values to deny. The format of the values depends on the rule type. Required.""" + rule_type: Literal["DenylistCustomAlertRule"] = rest_discriminator(name="ruleType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Required. Default value is \"DenylistCustomAlertRule\".""" + + @overload + def __init__( + self, + *, + is_enabled: bool, + denylist_values: list[str], + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.rule_type = "DenylistCustomAlertRule" # type: ignore + + +class DeviceSecurityGroup(ExtensionResource): + """The device security group resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Device Security group data. + :vartype properties: ~azure.mgmt.security.models.DeviceSecurityGroupProperties + """ + + properties: Optional["_models.DeviceSecurityGroupProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Device Security group data.""" + + __flattened_items = ["threshold_rules", "time_window_rules", "allowlist_rules", "denylist_rules"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.DeviceSecurityGroupProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class DeviceSecurityGroupProperties(_Model): + """describes properties of a security group. + + :ivar threshold_rules: The list of custom alert threshold rules. + :vartype threshold_rules: list[~azure.mgmt.security.models.ThresholdCustomAlertRule] + :ivar time_window_rules: The list of custom alert time-window rules. + :vartype time_window_rules: list[~azure.mgmt.security.models.TimeWindowCustomAlertRule] + :ivar allowlist_rules: The allow-list custom alert rules. + :vartype allowlist_rules: list[~azure.mgmt.security.models.AllowlistCustomAlertRule] + :ivar denylist_rules: The deny-list custom alert rules. + :vartype denylist_rules: list[~azure.mgmt.security.models.DenylistCustomAlertRule] + """ + + threshold_rules: Optional[list["_models.ThresholdCustomAlertRule"]] = rest_field( + name="thresholdRules", visibility=["read", "create", "update", "delete", "query"] + ) + """The list of custom alert threshold rules.""" + time_window_rules: Optional[list["_models.TimeWindowCustomAlertRule"]] = rest_field( + name="timeWindowRules", visibility=["read", "create", "update", "delete", "query"] + ) + """The list of custom alert time-window rules.""" + allowlist_rules: Optional[list["_models.AllowlistCustomAlertRule"]] = rest_field( + name="allowlistRules", visibility=["read", "create", "update", "delete", "query"] + ) + """The allow-list custom alert rules.""" + denylist_rules: Optional[list["_models.DenylistCustomAlertRule"]] = rest_field( + name="denylistRules", visibility=["read", "create", "update", "delete", "query"] + ) + """The deny-list custom alert rules.""" + + @overload + def __init__( + self, + *, + threshold_rules: Optional[list["_models.ThresholdCustomAlertRule"]] = None, + time_window_rules: Optional[list["_models.TimeWindowCustomAlertRule"]] = None, + allowlist_rules: Optional[list["_models.AllowlistCustomAlertRule"]] = None, + denylist_rules: Optional[list["_models.DenylistCustomAlertRule"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DevOpsCapability(_Model): + """Details about DevOps capability. + + :ivar name: Gets the name of the DevOps capability. + :vartype name: str + :ivar value: Gets the value of the DevOps capability. + :vartype value: str + """ + + name: Optional[str] = rest_field(visibility=["read"]) + """Gets the name of the DevOps capability.""" + value: Optional[str] = rest_field(visibility=["read"]) + """Gets the value of the DevOps capability.""" + + +class DevOpsConfiguration(ProxyResource): + """DevOps Configuration resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: DevOps Configuration properties. + :vartype properties: ~azure.mgmt.security.models.DevOpsConfigurationProperties + """ + + properties: Optional["_models.DevOpsConfigurationProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """DevOps Configuration properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.DevOpsConfigurationProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DevOpsConfigurationProperties(_Model): + """DevOps Configuration properties. + + :ivar provisioning_status_message: Gets the resource status message. + :vartype provisioning_status_message: str + :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. + :vartype provisioning_status_update_time_utc: ~datetime.datetime + :ivar provisioning_state: The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", + "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". + :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState + :ivar authorization: Authorization payload. + :vartype authorization: ~azure.mgmt.security.models.Authorization + :ivar auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and + "NotApplicable". + :vartype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery + :ivar top_level_inventory_list: List of top-level inventory to select when AutoDiscovery is + disabled. This field is ignored when AutoDiscovery is enabled. + :vartype top_level_inventory_list: list[str] + :ivar capabilities: List of capabilities assigned to the DevOps configuration during the + discovery process. + :vartype capabilities: list[~azure.mgmt.security.models.DevOpsCapability] + :ivar agentless_configuration: Details about Agentless configuration. + :vartype agentless_configuration: ~azure.mgmt.security.models.AgentlessConfiguration + """ + + provisioning_status_message: Optional[str] = rest_field(name="provisioningStatusMessage", visibility=["read"]) + """Gets the resource status message.""" + provisioning_status_update_time_utc: Optional[datetime.datetime] = rest_field( + name="provisioningStatusUpdateTimeUtc", visibility=["read"], format="rfc3339" + ) + """Gets the time when resource was last checked.""" + provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + \"Pending\", \"PendingDeletion\", \"DeletionSuccess\", and \"DeletionFailure\".""" + authorization: Optional["_models.Authorization"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Authorization payload.""" + auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = rest_field( + name="autoDiscovery", visibility=["read", "create", "update", "delete", "query"] + ) + """AutoDiscovery states. Known values are: \"Disabled\", \"Enabled\", and \"NotApplicable\".""" + top_level_inventory_list: Optional[list[str]] = rest_field( + name="topLevelInventoryList", visibility=["read", "create", "update", "delete", "query"] + ) + """List of top-level inventory to select when AutoDiscovery is disabled. This field is ignored + when AutoDiscovery is enabled.""" + capabilities: Optional[list["_models.DevOpsCapability"]] = rest_field(visibility=["read"]) + """List of capabilities assigned to the DevOps configuration during the discovery process.""" + agentless_configuration: Optional["_models.AgentlessConfiguration"] = rest_field( + name="agentlessConfiguration", visibility=["read", "create", "update", "delete", "query"] + ) + """Details about Agentless configuration.""" + + @overload + def __init__( + self, + *, + authorization: Optional["_models.Authorization"] = None, + auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, + top_level_inventory_list: Optional[list[str]] = None, + agentless_configuration: Optional["_models.AgentlessConfiguration"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DiscoveredSecuritySolution(ProxyResource): + """Concrete proxy resource types can be created by aliasing this type using a specific property + type. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Required. + :vartype properties: ~azure.mgmt.security.models.DiscoveredSecuritySolutionProperties + :ivar location: Location where the resource is stored. Required. + :vartype location: str + """ + + properties: "_models.DiscoveredSecuritySolutionProperties" = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Required.""" + location: str = rest_field(visibility=["read"]) + """Location where the resource is stored. Required.""" + + __flattened_items = ["security_family", "offer", "publisher", "sku"] + + @overload + def __init__( + self, + *, + properties: "_models.DiscoveredSecuritySolutionProperties", + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class DiscoveredSecuritySolutionProperties(_Model): + """DiscoveredSecuritySolutionProperties. + + :ivar security_family: The security family of the discovered solution. Required. Known values + are: "Waf", "Ngfw", "SaasWaf", and "Va". + :vartype security_family: str or ~azure.mgmt.security.models.SecurityFamily + :ivar offer: The security solutions' image offer. Required. + :vartype offer: str + :ivar publisher: The security solutions' image publisher. Required. + :vartype publisher: str + :ivar sku: The security solutions' image sku. Required. + :vartype sku: str + """ + + security_family: Union[str, "_models.SecurityFamily"] = rest_field( + name="securityFamily", visibility=["read", "create", "update", "delete", "query"] + ) + """The security family of the discovered solution. Required. Known values are: \"Waf\", \"Ngfw\", + \"SaasWaf\", and \"Va\".""" + offer: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The security solutions' image offer. Required.""" + publisher: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The security solutions' image publisher. Required.""" + sku: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The security solutions' image sku. Required.""" + + @overload + def __init__( + self, + *, + security_family: Union[str, "_models.SecurityFamily"], + offer: str, + publisher: str, + sku: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DockerHubEnvironmentData(EnvironmentData, discriminator="DockerHubOrganization"): + """The Docker Hub connector environment data. + + :ivar authentication: The Docker Hub organization authentication details. + :vartype authentication: ~azure.mgmt.security.models.Authentication + :ivar scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). + :vartype scan_interval: int + :ivar environment_type: The type of the environment data. Required. DockerHubOrganization. + :vartype environment_type: str or ~azure.mgmt.security.models.DOCKER_HUB_ORGANIZATION + """ + + authentication: Optional["_models.Authentication"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The Docker Hub organization authentication details.""" + scan_interval: Optional[int] = rest_field( + name="scanInterval", visibility=["read", "create", "update", "delete", "query"] + ) + """Scan interval in hours (value should be between 1-hour to 24-hours).""" + environment_type: Literal[EnvironmentType.DOCKER_HUB_ORGANIZATION] = rest_discriminator(name="environmentType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the environment data. Required. DockerHubOrganization.""" + + @overload + def __init__( + self, + *, + authentication: Optional["_models.Authentication"] = None, + scan_interval: Optional[int] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.environment_type = EnvironmentType.DOCKER_HUB_ORGANIZATION # type: ignore + + +class EnvironmentDetails(_Model): + """The environment details of the resource. + + :ivar native_resource_id: The native resource id of the resource (in case of Azure - the + resource Id, in case of MC - the native resource id). + :vartype native_resource_id: str + :ivar environment_hierarchy_id: The hierarchy id of the connector (in case of Azure - the + subscription Id, in case of MC - the hierarchyId id). + :vartype environment_hierarchy_id: str + :ivar organizational_hierarchy_id: The organizational hierarchy id of the connector (in case of + Azure - the subscription Id, in case of MC - the organizational hierarchyId id). + :vartype organizational_hierarchy_id: str + :ivar subscription_id: The subscription Id. + :vartype subscription_id: str + :ivar tenant_id: The tenant Id. + :vartype tenant_id: str + """ + + native_resource_id: Optional[str] = rest_field( + name="nativeResourceId", visibility=["read", "create", "update", "delete", "query"] + ) + """The native resource id of the resource (in case of Azure - the resource Id, in case of MC - the + native resource id).""" + environment_hierarchy_id: Optional[str] = rest_field( + name="environmentHierarchyId", visibility=["read", "create", "update", "delete", "query"] + ) + """The hierarchy id of the connector (in case of Azure - the subscription Id, in case of MC - the + hierarchyId id).""" + organizational_hierarchy_id: Optional[str] = rest_field( + name="organizationalHierarchyId", visibility=["read", "create", "update", "delete", "query"] + ) + """The organizational hierarchy id of the connector (in case of Azure - the subscription Id, in + case of MC - the organizational hierarchyId id).""" + subscription_id: Optional[str] = rest_field( + name="subscriptionId", visibility=["read", "create", "update", "delete", "query"] + ) + """The subscription Id.""" + tenant_id: Optional[str] = rest_field(name="tenantId", visibility=["read", "create", "update", "delete", "query"]) + """The tenant Id.""" + + @overload + def __init__( + self, + *, + native_resource_id: Optional[str] = None, + environment_hierarchy_id: Optional[str] = None, + organizational_hierarchy_id: Optional[str] = None, + subscription_id: Optional[str] = None, + tenant_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ErrorDetail(_Model): + """The error detail. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.security.models.ErrorDetail] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.security.models.ArmErrorAdditionalInfo] + """ + + code: Optional[str] = rest_field(visibility=["read"]) + """The error code.""" + message: Optional[str] = rest_field(visibility=["read"]) + """The error message.""" + target: Optional[str] = rest_field(visibility=["read"]) + """The error target.""" + details: Optional[list["_models.ErrorDetail"]] = rest_field(visibility=["read"]) + """The error details.""" + additional_info: Optional[list["_models.ArmErrorAdditionalInfo"]] = rest_field( + name="additionalInfo", visibility=["read"] + ) + """The error additional info.""" + + +class ErrorResponse(_Model): + """Error response. + + :ivar error: The error object. + :vartype error: ~azure.mgmt.security.models.ErrorDetail + """ + + error: Optional["_models.ErrorDetail"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The error object.""" + + @overload + def __init__( + self, + *, + error: Optional["_models.ErrorDetail"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ExecuteGovernanceRuleParams(_Model): + """Governance rule execution parameters. + + :ivar override: Describe if governance rule should be override. + :vartype override: bool + """ + + override: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Describe if governance rule should be override.""" + + @overload + def __init__( + self, + *, + override: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Extension(_Model): + """A plan's extension properties. + + :ivar name: The extension name. Supported values are: +

**AgentlessDiscoveryForKubernetes** - Provides zero footprint, API-based discovery of + Kubernetes clusters, their configurations and deployments. The collected data is used to create + a contextualized security graph for Kubernetes clusters, provide risk hunting capabilities, and + visualize risks and threats to Kubernetes environments and workloads.
Available for + CloudPosture plan and Containers plan.

**OnUploadMalwareScanning** - Limits the GB to be + scanned per month for each storage account within the subscription. Once this limit reached on + a given storage account, Blobs won't be scanned during current calendar month.
Available for + StorageAccounts plan (DefenderForStorageV2 sub plans).

**SensitiveDataDiscovery** - + Sensitive data discovery identifies Blob storage container with sensitive data such as + credentials, credit cards, and more, to help prioritize and investigate security + events.
Available for StorageAccounts plan (DefenderForStorageV2 sub plan) and CloudPosture + plan.

**ContainerRegistriesVulnerabilityAssessments** - Provides vulnerability + management for images stored in your container registries.
Available for CloudPosture plan + and Containers plan.

**MdeDesignatedSubscription** - Direct onboarding is a seamless + integration between Defender for Endpoint and Defender for Cloud that doesn't require extra + software deployment on your servers. The onboarded resources will be presented under a + designated Azure Subscription you configure
Available for VirtualMachines plan (P1 and P2 + sub plans).

**AgentlessVmScanning** - Scans your machines for installed software, + vulnerabilities, malware and secret scanning without relying on agents or impacting machine + performance. Learn more here + `https://learn.microsoft.com/en-us/azure/defender-for-cloud/concept-agentless-data-collection + `_.
Available + for CloudPosture plan, VirtualMachines plan (P2 sub plan) and Containers + plan.

**EntraPermissionsManagement** - Permissions Management provides Cloud + Infrastructure Entitlement Management (CIEM) capabilities that helps organizations to manage + and control user access and entitlements in their cloud infrastructure - important attack + vector for cloud environments.
Permissions Management analyzes all permissions and active + usage, and suggests recommendations to reduce permissions to enforce the principle of least + privilege. Learn more here + `https://learn.microsoft.com/en-us/azure/defender-for-cloud/permissions-management + `_.
Available + for CloudPosture plan.

**FileIntegrityMonitoring** - File integrity monitoring (FIM), + examines operating system files.
Windows registries, Linux system files, in real time, for + changes that might indicate an attack.
Available for VirtualMachines plan (P2 sub plan). +

**ContainerSensor** - The sensor is based on IG and provides a rich threat detection + suite for Kubernetes clusters, nodes, and workloads, powered by Microsoft leading threat + intelligence, provides mapping to MITRE ATT&CK framework.
Available for Containers plan. +

**AIPromptEvidence** - Exposes the prompts passed between the user and the AI model as + alert evidence. This helps classify and triage the alerts with relevant user context. The + prompt snippets will include only segments of the user prompt or model response that were + deemed suspicious and relevant for security classifications. The prompt evidence will be + available through Defender portal as part of each alert.
Available for AI plan.

. + Required. + :vartype name: str + :ivar is_enabled: Indicates whether the extension is enabled. Required. Known values are: + "True" and "False". + :vartype is_enabled: str or ~azure.mgmt.security.models.IsEnabled + :ivar additional_extension_properties: Property values associated with the extension. + :vartype additional_extension_properties: dict[str, any] + :ivar operation_status: Optional. A status describing the success/failure of the extension's + enablement/disablement operation. + :vartype operation_status: ~azure.mgmt.security.models.OperationStatus + """ + + name: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The extension name. Supported values are:

**AgentlessDiscoveryForKubernetes** - + Provides zero footprint, API-based discovery of Kubernetes clusters, their configurations and + deployments. The collected data is used to create a contextualized security graph for + Kubernetes clusters, provide risk hunting capabilities, and visualize risks and threats to + Kubernetes environments and workloads.
Available for CloudPosture plan and Containers + plan.

**OnUploadMalwareScanning** - Limits the GB to be scanned per month for each + storage account within the subscription. Once this limit reached on a given storage account, + Blobs won't be scanned during current calendar month.
Available for StorageAccounts plan + (DefenderForStorageV2 sub plans).

**SensitiveDataDiscovery** - Sensitive data discovery + identifies Blob storage container with sensitive data such as credentials, credit cards, and + more, to help prioritize and investigate security events.
Available for StorageAccounts plan + (DefenderForStorageV2 sub plan) and CloudPosture + plan.

**ContainerRegistriesVulnerabilityAssessments** - Provides vulnerability + management for images stored in your container registries.
Available for CloudPosture plan + and Containers plan.

**MdeDesignatedSubscription** - Direct onboarding is a seamless + integration between Defender for Endpoint and Defender for Cloud that doesn't require extra + software deployment on your servers. The onboarded resources will be presented under a + designated Azure Subscription you configure
Available for VirtualMachines plan (P1 and P2 + sub plans).

**AgentlessVmScanning** - Scans your machines for installed software, + vulnerabilities, malware and secret scanning without relying on agents or impacting machine + performance. Learn more here + `https://learn.microsoft.com/en-us/azure/defender-for-cloud/concept-agentless-data-collection + `_.
Available + for CloudPosture plan, VirtualMachines plan (P2 sub plan) and Containers + plan.

**EntraPermissionsManagement** - Permissions Management provides Cloud + Infrastructure Entitlement Management (CIEM) capabilities that helps organizations to manage + and control user access and entitlements in their cloud infrastructure - important attack + vector for cloud environments.
Permissions Management analyzes all permissions and active + usage, and suggests recommendations to reduce permissions to enforce the principle of least + privilege. Learn more here + `https://learn.microsoft.com/en-us/azure/defender-for-cloud/permissions-management + `_.
Available + for CloudPosture plan.

**FileIntegrityMonitoring** - File integrity monitoring (FIM), + examines operating system files.
Windows registries, Linux system files, in real time, for + changes that might indicate an attack.
Available for VirtualMachines plan (P2 sub plan). +

**ContainerSensor** - The sensor is based on IG and provides a rich threat detection + suite for Kubernetes clusters, nodes, and workloads, powered by Microsoft leading threat + intelligence, provides mapping to MITRE ATT&CK framework.
Available for Containers plan. +

**AIPromptEvidence** - Exposes the prompts passed between the user and the AI model as + alert evidence. This helps classify and triage the alerts with relevant user context. The + prompt snippets will include only segments of the user prompt or model response that were + deemed suspicious and relevant for security classifications. The prompt evidence will be + available through Defender portal as part of each alert.
Available for AI plan.

. + Required.""" + is_enabled: Union[str, "_models.IsEnabled"] = rest_field( + name="isEnabled", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether the extension is enabled. Required. Known values are: \"True\" and \"False\".""" + additional_extension_properties: Optional[dict[str, Any]] = rest_field( + name="additionalExtensionProperties", visibility=["read", "create", "update", "delete", "query"] + ) + """Property values associated with the extension.""" + operation_status: Optional["_models.OperationStatus"] = rest_field(name="operationStatus", visibility=["read"]) + """Optional. A status describing the success/failure of the extension's enablement/disablement + operation.""" + + @overload + def __init__( + self, + *, + name: str, + is_enabled: Union[str, "_models.IsEnabled"], + additional_extension_properties: Optional[dict[str, Any]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class FilesScanSummary(_Model): + """A summary of the scan results of the files that were scanned. + + :ivar total_files_scanned: The total number of files that were scanned. + :vartype total_files_scanned: int + :ivar malicious_files_count: The number of malicious files that were detected during the scan. + :vartype malicious_files_count: int + :ivar skipped_files_count: The number of files that were skipped. + :vartype skipped_files_count: int + :ivar failed_files_count: The number of failed file scans. + :vartype failed_files_count: int + :ivar scanned_files_in_gb: The number of gigabytes of data that were scanned. + :vartype scanned_files_in_gb: float + """ + + total_files_scanned: Optional[int] = rest_field( + name="totalFilesScanned", visibility=["read", "create", "update", "delete", "query"] + ) + """The total number of files that were scanned.""" + malicious_files_count: Optional[int] = rest_field( + name="maliciousFilesCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of malicious files that were detected during the scan.""" + skipped_files_count: Optional[int] = rest_field( + name="skippedFilesCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of files that were skipped.""" + failed_files_count: Optional[int] = rest_field( + name="failedFilesCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of failed file scans.""" + scanned_files_in_gb: Optional[float] = rest_field( + name="scannedFilesInGB", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of gigabytes of data that were scanned.""" + + @overload + def __init__( + self, + *, + total_files_scanned: Optional[int] = None, + malicious_files_count: Optional[int] = None, + skipped_files_count: Optional[int] = None, + failed_files_count: Optional[int] = None, + scanned_files_in_gb: Optional[float] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GcpOrganizationalData(_Model): + """The gcpOrganization data. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + GcpOrganizationalDataMember, GcpOrganizationalDataOrganization + + :ivar organization_membership_type: The multi cloud account's membership type in the + organization. Required. Known values are: "Member" and "Organization". + :vartype organization_membership_type: str or + ~azure.mgmt.security.models.OrganizationMembershipType + """ + + __mapping__: dict[str, _Model] = {} + organization_membership_type: str = rest_discriminator( + name="organizationMembershipType", visibility=["read", "create", "update", "delete", "query"] + ) + """The multi cloud account's membership type in the organization. Required. Known values are: + \"Member\" and \"Organization\".""" + + @overload + def __init__( + self, + *, + organization_membership_type: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GcpOrganizationalDataMember(GcpOrganizationalData, discriminator="Member"): + """The gcpOrganization data for the member account. + + :ivar parent_hierarchy_id: If the multi cloud account is not of membership type organization, + this will be the ID of the project's parent. + :vartype parent_hierarchy_id: str + :ivar management_project_number: The GCP management project number from organizational + onboarding. + :vartype management_project_number: str + :ivar organization_membership_type: The multi cloud account's membership type in the + organization. Required. Member. + :vartype organization_membership_type: str or ~azure.mgmt.security.models.MEMBER + """ + + parent_hierarchy_id: Optional[str] = rest_field( + name="parentHierarchyId", visibility=["read", "create", "update", "delete", "query"] + ) + """If the multi cloud account is not of membership type organization, this will be the ID of the + project's parent.""" + management_project_number: Optional[str] = rest_field( + name="managementProjectNumber", visibility=["read", "create", "update", "delete", "query"] + ) + """The GCP management project number from organizational onboarding.""" + organization_membership_type: Literal[OrganizationMembershipType.MEMBER] = rest_discriminator(name="organizationMembershipType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The multi cloud account's membership type in the organization. Required. Member.""" + + @overload + def __init__( + self, + *, + parent_hierarchy_id: Optional[str] = None, + management_project_number: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.organization_membership_type = OrganizationMembershipType.MEMBER # type: ignore + + +class GcpOrganizationalDataOrganization(GcpOrganizationalData, discriminator="Organization"): + """The gcpOrganization data for the parent account. + + :ivar excluded_project_numbers: If the multi cloud account is of membership type organization, + list of accounts excluded from offering. + :vartype excluded_project_numbers: list[str] + :ivar service_account_email_address: The service account email address which represents the + organization level permissions container. + :vartype service_account_email_address: str + :ivar workload_identity_provider_id: The GCP workload identity provider id which represents the + permissions required to auto provision security connectors. + :vartype workload_identity_provider_id: str + :ivar organization_name: GCP organization name. + :vartype organization_name: str + :ivar organization_membership_type: The multi cloud account's membership type in the + organization. Required. Organization. + :vartype organization_membership_type: str or ~azure.mgmt.security.models.ORGANIZATION + """ + + excluded_project_numbers: Optional[list[str]] = rest_field( + name="excludedProjectNumbers", visibility=["read", "create", "update", "delete", "query"] + ) + """If the multi cloud account is of membership type organization, list of accounts excluded from + offering.""" + service_account_email_address: Optional[str] = rest_field( + name="serviceAccountEmailAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """The service account email address which represents the organization level permissions + container.""" + workload_identity_provider_id: Optional[str] = rest_field( + name="workloadIdentityProviderId", visibility=["read", "create", "update", "delete", "query"] + ) + """The GCP workload identity provider id which represents the permissions required to auto + provision security connectors.""" + organization_name: Optional[str] = rest_field(name="organizationName", visibility=["read"]) + """GCP organization name.""" + organization_membership_type: Literal[OrganizationMembershipType.ORGANIZATION] = rest_discriminator(name="organizationMembershipType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The multi cloud account's membership type in the organization. Required. Organization.""" + + @overload + def __init__( + self, + *, + excluded_project_numbers: Optional[list[str]] = None, + service_account_email_address: Optional[str] = None, + workload_identity_provider_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.organization_membership_type = OrganizationMembershipType.ORGANIZATION # type: ignore + + +class GcpProjectDetails(_Model): + """The details about the project represented by the security connector. + + :ivar project_number: The unique GCP Project number. + :vartype project_number: str + :ivar project_id: The GCP Project id. + :vartype project_id: str + :ivar workload_identity_pool_id: The GCP workload identity federation pool id. + :vartype workload_identity_pool_id: str + :ivar project_name: GCP project name. + :vartype project_name: str + """ + + project_number: Optional[str] = rest_field( + name="projectNumber", visibility=["read", "create", "update", "delete", "query"] + ) + """The unique GCP Project number.""" + project_id: Optional[str] = rest_field(name="projectId", visibility=["read", "create", "update", "delete", "query"]) + """The GCP Project id.""" + workload_identity_pool_id: Optional[str] = rest_field(name="workloadIdentityPoolId", visibility=["read"]) + """The GCP workload identity federation pool id.""" + project_name: Optional[str] = rest_field(name="projectName", visibility=["read"]) + """GCP project name.""" + + @overload + def __init__( + self, + *, + project_number: Optional[str] = None, + project_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GcpProjectEnvironmentData(EnvironmentData, discriminator="GcpProject"): + """The GCP project connector environment data. + + :ivar organizational_data: The Gcp project's organizational data. + :vartype organizational_data: ~azure.mgmt.security.models.GcpOrganizationalData + :ivar project_details: The Gcp project's details. + :vartype project_details: ~azure.mgmt.security.models.GcpProjectDetails + :ivar scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). + :vartype scan_interval: int + :ivar environment_type: The type of the environment data. Required. GcpProject. + :vartype environment_type: str or ~azure.mgmt.security.models.GCP_PROJECT + """ + + organizational_data: Optional["_models.GcpOrganizationalData"] = rest_field( + name="organizationalData", visibility=["read", "create", "update", "delete", "query"] + ) + """The Gcp project's organizational data.""" + project_details: Optional["_models.GcpProjectDetails"] = rest_field( + name="projectDetails", visibility=["read", "create", "update", "delete", "query"] + ) + """The Gcp project's details.""" + scan_interval: Optional[int] = rest_field( + name="scanInterval", visibility=["read", "create", "update", "delete", "query"] + ) + """Scan interval in hours (value should be between 1-hour to 24-hours).""" + environment_type: Literal[EnvironmentType.GCP_PROJECT] = rest_discriminator(name="environmentType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the environment data. Required. GcpProject.""" + + @overload + def __init__( + self, + *, + organizational_data: Optional["_models.GcpOrganizationalData"] = None, + project_details: Optional["_models.GcpProjectDetails"] = None, + scan_interval: Optional[int] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.environment_type = EnvironmentType.GCP_PROJECT # type: ignore + + +class GetSensitivitySettingsResponse(ProxyResource): + """Data sensitivity settings for sensitive data discovery. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: The sensitivity settings properties. + :vartype properties: ~azure.mgmt.security.models.GetSensitivitySettingsResponseProperties + """ + + properties: Optional["_models.GetSensitivitySettingsResponseProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The sensitivity settings properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.GetSensitivitySettingsResponseProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GetSensitivitySettingsResponseProperties(_Model): + """The sensitivity settings properties. + + :ivar sensitive_info_types_ids: List of selected sensitive info types' IDs. + :vartype sensitive_info_types_ids: list[str] + :ivar sensitivity_threshold_label_order: The order of the sensitivity threshold label. Any + label at or above this order will be considered sensitive. If set to -1, sensitivity by labels + is turned off. + :vartype sensitivity_threshold_label_order: float + :ivar sensitivity_threshold_label_id: The id of the sensitivity threshold label. Any label at + or above this rank will be considered sensitive. + :vartype sensitivity_threshold_label_id: str + :ivar mip_information: Microsoft information protection built-in and custom information types, + labels, and integration status. + :vartype mip_information: + ~azure.mgmt.security.models.GetSensitivitySettingsResponsePropertiesMipInformation + """ + + sensitive_info_types_ids: Optional[list[str]] = rest_field( + name="sensitiveInfoTypesIds", visibility=["read", "create", "update", "delete", "query"] + ) + """List of selected sensitive info types' IDs.""" + sensitivity_threshold_label_order: Optional[float] = rest_field( + name="sensitivityThresholdLabelOrder", visibility=["read", "create", "update", "delete", "query"] + ) + """The order of the sensitivity threshold label. Any label at or above this order will be + considered sensitive. If set to -1, sensitivity by labels is turned off.""" + sensitivity_threshold_label_id: Optional[str] = rest_field( + name="sensitivityThresholdLabelId", visibility=["read", "create", "update", "delete", "query"] + ) + """The id of the sensitivity threshold label. Any label at or above this rank will be considered + sensitive.""" + mip_information: Optional["_models.GetSensitivitySettingsResponsePropertiesMipInformation"] = rest_field( + name="mipInformation", visibility=["read", "create", "update", "delete", "query"] + ) + """Microsoft information protection built-in and custom information types, labels, and integration + status.""" + + @overload + def __init__( + self, + *, + sensitive_info_types_ids: Optional[list[str]] = None, + sensitivity_threshold_label_order: Optional[float] = None, + sensitivity_threshold_label_id: Optional[str] = None, + mip_information: Optional["_models.GetSensitivitySettingsResponsePropertiesMipInformation"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GetSensitivitySettingsResponsePropertiesMipInformation(_Model): # pylint: disable=name-too-long + """Microsoft information protection built-in and custom information types, labels, and integration + status. + + :ivar mip_integration_status: Microsoft information protection integration status. Known values + are: "Ok", "noConsent", "noAutoLabelingRules", and "noMipLabels". + :vartype mip_integration_status: str or ~azure.mgmt.security.models.MipIntegrationStatus + :ivar labels: List of Microsoft information protection sensitivity labels. + :vartype labels: list[~azure.mgmt.security.models.Label] + :ivar custom_info_types: List of custom user-defined information types. + :vartype custom_info_types: list[~azure.mgmt.security.models.InfoType] + :ivar built_in_info_types: List of pre-configured sensitive information types. + :vartype built_in_info_types: list[~azure.mgmt.security.models.BuiltInInfoType] + """ + + mip_integration_status: Optional[Union[str, "_models.MipIntegrationStatus"]] = rest_field( + name="mipIntegrationStatus", visibility=["read", "create", "update", "delete", "query"] + ) + """Microsoft information protection integration status. Known values are: \"Ok\", \"noConsent\", + \"noAutoLabelingRules\", and \"noMipLabels\".""" + labels: Optional[list["_models.Label"]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """List of Microsoft information protection sensitivity labels.""" + custom_info_types: Optional[list["_models.InfoType"]] = rest_field( + name="customInfoTypes", visibility=["read", "create", "update", "delete", "query"] + ) + """List of custom user-defined information types.""" + built_in_info_types: Optional[list["_models.BuiltInInfoType"]] = rest_field( + name="builtInInfoTypes", visibility=["read", "create", "update", "delete", "query"] + ) + """List of pre-configured sensitive information types.""" + + @overload + def __init__( + self, + *, + mip_integration_status: Optional[Union[str, "_models.MipIntegrationStatus"]] = None, + labels: Optional[list["_models.Label"]] = None, + custom_info_types: Optional[list["_models.InfoType"]] = None, + built_in_info_types: Optional[list["_models.BuiltInInfoType"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GitHubOwner(ProxyResource): + """GitHub Owner resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: GitHub Owner properties. + :vartype properties: ~azure.mgmt.security.models.GitHubOwnerProperties + """ + + properties: Optional["_models.GitHubOwnerProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """GitHub Owner properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.GitHubOwnerProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GitHubOwnerListResponse(_Model): + """List of RP resources which supports pagination. + + :ivar value: The GitHubOwner items on this page. + :vartype value: list[~azure.mgmt.security.models.GitHubOwner] + :ivar next_link: The link to the next page of items. + :vartype next_link: str + """ + + value: Optional[list["_models.GitHubOwner"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The GitHubOwner items on this page.""" + next_link: Optional[str] = rest_field(name="nextLink", visibility=["read", "create", "update", "delete", "query"]) + """The link to the next page of items.""" + + @overload + def __init__( + self, + *, + value: Optional[list["_models.GitHubOwner"]] = None, + next_link: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GitHubOwnerProperties(_Model): + """GitHub Owner properties. + + :ivar provisioning_status_message: Gets the resource status message. + :vartype provisioning_status_message: str + :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. + :vartype provisioning_status_update_time_utc: ~datetime.datetime + :ivar provisioning_state: The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", + "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". + :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState + :ivar owner_url: Gets or sets GitHub Owner url. + :vartype owner_url: str + :ivar git_hub_internal_id: Gets or sets internal GitHub id. + :vartype git_hub_internal_id: str + :ivar onboarding_state: Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". + :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState + """ + + provisioning_status_message: Optional[str] = rest_field(name="provisioningStatusMessage", visibility=["read"]) + """Gets the resource status message.""" + provisioning_status_update_time_utc: Optional[datetime.datetime] = rest_field( + name="provisioningStatusUpdateTimeUtc", visibility=["read"], format="rfc3339" + ) + """Gets the time when resource was last checked.""" + provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + \"Pending\", \"PendingDeletion\", \"DeletionSuccess\", and \"DeletionFailure\".""" + owner_url: Optional[str] = rest_field(name="ownerUrl", visibility=["read"]) + """Gets or sets GitHub Owner url.""" + git_hub_internal_id: Optional[str] = rest_field(name="gitHubInternalId", visibility=["read"]) + """Gets or sets internal GitHub id.""" + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = rest_field( + name="onboardingState", visibility=["read", "create", "update", "delete", "query"] + ) + """Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: \"NotApplicable\", \"OnboardedByOtherConnector\", \"Onboarded\", and \"NotOnboarded\".""" + + @overload + def __init__( + self, + *, + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GitHubRepository(ProxyResource): + """GitHub Repository resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: GitHub Repository properties. + :vartype properties: ~azure.mgmt.security.models.GitHubRepositoryProperties + """ + + properties: Optional["_models.GitHubRepositoryProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """GitHub Repository properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.GitHubRepositoryProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GitHubRepositoryProperties(_Model): + """GitHub Repository properties. + + :ivar provisioning_status_message: Gets the resource status message. + :vartype provisioning_status_message: str + :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. + :vartype provisioning_status_update_time_utc: ~datetime.datetime + :ivar provisioning_state: The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", + "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". + :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState + :ivar repo_id: Gets or sets GitHub Repository id. + + This is a numeric id defined by Github. + Eg: "123456". + :vartype repo_id: str + :ivar repo_name: Gets or sets GitHub Repository name. Eg: "new-repo-1". + :vartype repo_name: str + :ivar repo_full_name: Gets or sets GitHub Full Name. Repository name, prefixed with Owner name. + Eg: "my-org/new-repo-1". + :vartype repo_full_name: str + :ivar onboarding_state: Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". + :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState + :ivar repo_url: Gets or sets GitHub Repository url. + :vartype repo_url: str + :ivar parent_owner_name: Gets or sets parent GitHub Owner name. + :vartype parent_owner_name: str + """ + + provisioning_status_message: Optional[str] = rest_field(name="provisioningStatusMessage", visibility=["read"]) + """Gets the resource status message.""" + provisioning_status_update_time_utc: Optional[datetime.datetime] = rest_field( + name="provisioningStatusUpdateTimeUtc", visibility=["read"], format="rfc3339" + ) + """Gets the time when resource was last checked.""" + provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + \"Pending\", \"PendingDeletion\", \"DeletionSuccess\", and \"DeletionFailure\".""" + repo_id: Optional[str] = rest_field(name="repoId", visibility=["read"]) + """Gets or sets GitHub Repository id. + + This is a numeric id defined by Github. + Eg: \"123456\".""" + repo_name: Optional[str] = rest_field(name="repoName", visibility=["read"]) + """Gets or sets GitHub Repository name. Eg: \"new-repo-1\".""" + repo_full_name: Optional[str] = rest_field(name="repoFullName", visibility=["read"]) + """Gets or sets GitHub Full Name. Repository name, prefixed with Owner name. Eg: + \"my-org/new-repo-1\".""" + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = rest_field( + name="onboardingState", visibility=["read", "create", "update", "delete", "query"] + ) + """Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: \"NotApplicable\", \"OnboardedByOtherConnector\", \"Onboarded\", and \"NotOnboarded\".""" + repo_url: Optional[str] = rest_field(name="repoUrl", visibility=["read"]) + """Gets or sets GitHub Repository url.""" + parent_owner_name: Optional[str] = rest_field( + name="parentOwnerName", visibility=["read", "create", "update", "delete", "query"] + ) + """Gets or sets parent GitHub Owner name.""" + + @overload + def __init__( + self, + *, + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, + parent_owner_name: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GithubScopeEnvironmentData(EnvironmentData, discriminator="GithubScope"): + """The github scope connector's environment data. + + :ivar environment_type: The type of the environment data. Required. GithubScope. + :vartype environment_type: str or ~azure.mgmt.security.models.GITHUB_SCOPE + """ + + environment_type: Literal[EnvironmentType.GITHUB_SCOPE] = rest_discriminator(name="environmentType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the environment data. Required. GithubScope.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.environment_type = EnvironmentType.GITHUB_SCOPE # type: ignore + + +class GitLabGroup(ProxyResource): + """GitLab Group resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: GitLab Group properties. + :vartype properties: ~azure.mgmt.security.models.GitLabGroupProperties + """ + + properties: Optional["_models.GitLabGroupProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """GitLab Group properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.GitLabGroupProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GitLabGroupListResponse(_Model): + """List of RP resources which supports pagination. + + :ivar value: The GitLabGroup items on this page. + :vartype value: list[~azure.mgmt.security.models.GitLabGroup] + :ivar next_link: The link to the next page of items. + :vartype next_link: str + """ + + value: Optional[list["_models.GitLabGroup"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The GitLabGroup items on this page.""" + next_link: Optional[str] = rest_field(name="nextLink", visibility=["read", "create", "update", "delete", "query"]) + """The link to the next page of items.""" + + @overload + def __init__( + self, + *, + value: Optional[list["_models.GitLabGroup"]] = None, + next_link: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GitLabGroupProperties(_Model): + """GitLab Group properties. + + :ivar provisioning_status_message: Gets the resource status message. + :vartype provisioning_status_message: str + :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. + :vartype provisioning_status_update_time_utc: ~datetime.datetime + :ivar provisioning_state: The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", + "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". + :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState + :ivar fully_qualified_name: Gets or sets the fully-qualified name of the Group object. + + This contains the entire namespace hierarchy where namespaces are separated by the '$' + character. + :vartype fully_qualified_name: str + :ivar fully_qualified_friendly_name: Gets or sets the human readable fully-qualified name of + the Group object. + + This contains the entire namespace hierarchy as seen on GitLab UI where namespaces are + separated by the '/' character. + :vartype fully_qualified_friendly_name: str + :ivar url: Gets or sets the url of the GitLab Group. + :vartype url: str + :ivar onboarding_state: Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". + :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState + """ + + provisioning_status_message: Optional[str] = rest_field(name="provisioningStatusMessage", visibility=["read"]) + """Gets the resource status message.""" + provisioning_status_update_time_utc: Optional[datetime.datetime] = rest_field( + name="provisioningStatusUpdateTimeUtc", visibility=["read"], format="rfc3339" + ) + """Gets the time when resource was last checked.""" + provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + \"Pending\", \"PendingDeletion\", \"DeletionSuccess\", and \"DeletionFailure\".""" + fully_qualified_name: Optional[str] = rest_field(name="fullyQualifiedName", visibility=["read"]) + """Gets or sets the fully-qualified name of the Group object. + + This contains the entire namespace hierarchy where namespaces are separated by the '$' + character.""" + fully_qualified_friendly_name: Optional[str] = rest_field(name="fullyQualifiedFriendlyName", visibility=["read"]) + """Gets or sets the human readable fully-qualified name of the Group object. + + This contains the entire namespace hierarchy as seen on GitLab UI where namespaces are + separated by the '/' character.""" + url: Optional[str] = rest_field(visibility=["read"]) + """Gets or sets the url of the GitLab Group.""" + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = rest_field( + name="onboardingState", visibility=["read", "create", "update", "delete", "query"] + ) + """Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: \"NotApplicable\", \"OnboardedByOtherConnector\", \"Onboarded\", and \"NotOnboarded\".""" + + @overload + def __init__( + self, + *, + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GitLabProject(ProxyResource): + """GitLab Project resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: GitLab Project properties. + :vartype properties: ~azure.mgmt.security.models.GitLabProjectProperties + """ + + properties: Optional["_models.GitLabProjectProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """GitLab Project properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.GitLabProjectProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GitLabProjectProperties(_Model): + """GitLab Project properties. + + :ivar provisioning_status_message: Gets the resource status message. + :vartype provisioning_status_message: str + :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. + :vartype provisioning_status_update_time_utc: ~datetime.datetime + :ivar provisioning_state: The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", + "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". + :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState + :ivar fully_qualified_name: Gets or sets the fully-qualified name of the project object. + + This contains the entire hierarchy where entities are separated by the '$' character. + :vartype fully_qualified_name: str + :ivar fully_qualified_friendly_name: Gets or sets the human readable fully-qualified name of + the Project object. + + This contains the entire namespace hierarchy as seen on GitLab UI where entities are separated + by the '/' character. + :vartype fully_qualified_friendly_name: str + :ivar fully_qualified_parent_group_name: Gets or sets the fully-qualified name of the project's + parent group object. + + This contains the entire hierarchy where namespaces are separated by the '$' character. + :vartype fully_qualified_parent_group_name: str + :ivar url: Gets or sets the url of the GitLab Project. + :vartype url: str + :ivar onboarding_state: Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". + :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState + """ + + provisioning_status_message: Optional[str] = rest_field(name="provisioningStatusMessage", visibility=["read"]) + """Gets the resource status message.""" + provisioning_status_update_time_utc: Optional[datetime.datetime] = rest_field( + name="provisioningStatusUpdateTimeUtc", visibility=["read"], format="rfc3339" + ) + """Gets the time when resource was last checked.""" + provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """The provisioning state of the resource. + + Pending - Provisioning pending. + Failed - Provisioning failed. + Succeeded - Successful provisioning. + Canceled - Provisioning canceled. + PendingDeletion - Deletion pending. + DeletionSuccess - Deletion successful. + DeletionFailure - Deletion failure. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + \"Pending\", \"PendingDeletion\", \"DeletionSuccess\", and \"DeletionFailure\".""" + fully_qualified_name: Optional[str] = rest_field(name="fullyQualifiedName", visibility=["read"]) + """Gets or sets the fully-qualified name of the project object. + + This contains the entire hierarchy where entities are separated by the '$' character.""" + fully_qualified_friendly_name: Optional[str] = rest_field(name="fullyQualifiedFriendlyName", visibility=["read"]) + """Gets or sets the human readable fully-qualified name of the Project object. + + This contains the entire namespace hierarchy as seen on GitLab UI where entities are separated + by the '/' character.""" + fully_qualified_parent_group_name: Optional[str] = rest_field( + name="fullyQualifiedParentGroupName", visibility=["read"] + ) + """Gets or sets the fully-qualified name of the project's parent group object. + + This contains the entire hierarchy where namespaces are separated by the '$' character.""" + url: Optional[str] = rest_field(visibility=["read"]) + """Gets or sets the url of the GitLab Project.""" + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = rest_field( + name="onboardingState", visibility=["read", "create", "update", "delete", "query"] + ) + """Details about resource onboarding status across all connectors. + + OnboardedByOtherConnector - this resource has already been onboarded to another connector. This + is only applicable to top-level resources. + Onboarded - this resource has already been onboarded by the specified connector. + NotOnboarded - this resource has not been onboarded to any connector. + NotApplicable - the onboarding state is not applicable to the current endpoint. Known values + are: \"NotApplicable\", \"OnboardedByOtherConnector\", \"Onboarded\", and \"NotOnboarded\".""" + + @overload + def __init__( + self, + *, + onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GitlabScopeEnvironmentData(EnvironmentData, discriminator="GitlabScope"): + """The GitLab scope connector's environment data. + + :ivar environment_type: The type of the environment data. Required. GitlabScope. + :vartype environment_type: str or ~azure.mgmt.security.models.GITLAB_SCOPE + """ + + environment_type: Literal[EnvironmentType.GITLAB_SCOPE] = rest_discriminator(name="environmentType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the environment data. Required. GitlabScope.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.environment_type = EnvironmentType.GITLAB_SCOPE # type: ignore + + +class GovernanceAssignment(ExtensionResource): + """Governance assignment over a given scope. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: The properties of a governance assignment. + :vartype properties: ~azure.mgmt.security.models.GovernanceAssignmentProperties + """ + + properties: Optional["_models.GovernanceAssignmentProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The properties of a governance assignment.""" + + __flattened_items = [ + "owner", + "remediation_due_date", + "remediation_eta", + "is_grace_period", + "governance_email_notification", + "additional_data", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.GovernanceAssignmentProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class GovernanceAssignmentAdditionalData(_Model): + """Describe the additional data of governance assignment - optional. + + :ivar ticket_number: Ticket number associated with this governance assignment. + :vartype ticket_number: int + :ivar ticket_link: Ticket link associated with this governance assignment - for example: + `https://snow.com `_. + :vartype ticket_link: str + :ivar ticket_status: The ticket status associated with this governance assignment - for + example: Active. + :vartype ticket_status: str + """ + + ticket_number: Optional[int] = rest_field( + name="ticketNumber", visibility=["read", "create", "update", "delete", "query"] + ) + """Ticket number associated with this governance assignment.""" + ticket_link: Optional[str] = rest_field( + name="ticketLink", visibility=["read", "create", "update", "delete", "query"] + ) + """Ticket link associated with this governance assignment - for example: `https://snow.com + `_.""" + ticket_status: Optional[str] = rest_field( + name="ticketStatus", visibility=["read", "create", "update", "delete", "query"] + ) + """The ticket status associated with this governance assignment - for example: Active.""" + + @overload + def __init__( + self, + *, + ticket_number: Optional[int] = None, + ticket_link: Optional[str] = None, + ticket_status: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GovernanceAssignmentProperties(_Model): + """Describes properties of an governance assignment. + + :ivar owner: The Owner for the governance assignment - e.g. `user@contoso.com + `_ - see example. + :vartype owner: str + :ivar remediation_due_date: The remediation due-date - after this date Secure Score will be + affected (in case of active grace-period). Required. + :vartype remediation_due_date: ~datetime.datetime + :ivar remediation_eta: The ETA (estimated time of arrival) for remediation (optional), see + example. + :vartype remediation_eta: ~azure.mgmt.security.models.RemediationEta + :ivar is_grace_period: Defines whether there is a grace period on the governance assignment. + :vartype is_grace_period: bool + :ivar governance_email_notification: The email notifications settings for the governance rule, + states whether to disable notifications for mangers and owners. + :vartype governance_email_notification: ~azure.mgmt.security.models.GovernanceEmailNotification + :ivar additional_data: The additional data for the governance assignment - e.g. links to ticket + (optional), see example. + :vartype additional_data: ~azure.mgmt.security.models.GovernanceAssignmentAdditionalData + """ + + owner: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The Owner for the governance assignment - e.g. `user@contoso.com `_ - + see example.""" + remediation_due_date: datetime.datetime = rest_field( + name="remediationDueDate", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """The remediation due-date - after this date Secure Score will be affected (in case of active + grace-period). Required.""" + remediation_eta: Optional["_models.RemediationEta"] = rest_field( + name="remediationEta", visibility=["read", "create", "update", "delete", "query"] + ) + """The ETA (estimated time of arrival) for remediation (optional), see example.""" + is_grace_period: Optional[bool] = rest_field( + name="isGracePeriod", visibility=["read", "create", "update", "delete", "query"] + ) + """Defines whether there is a grace period on the governance assignment.""" + governance_email_notification: Optional["_models.GovernanceEmailNotification"] = rest_field( + name="governanceEmailNotification", visibility=["read", "create", "update", "delete", "query"] + ) + """The email notifications settings for the governance rule, states whether to disable + notifications for mangers and owners.""" + additional_data: Optional["_models.GovernanceAssignmentAdditionalData"] = rest_field( + name="additionalData", visibility=["read", "create", "update", "delete", "query"] + ) + """The additional data for the governance assignment - e.g. links to ticket (optional), see + example.""" + + @overload + def __init__( + self, + *, + remediation_due_date: datetime.datetime, + owner: Optional[str] = None, + remediation_eta: Optional["_models.RemediationEta"] = None, + is_grace_period: Optional[bool] = None, + governance_email_notification: Optional["_models.GovernanceEmailNotification"] = None, + additional_data: Optional["_models.GovernanceAssignmentAdditionalData"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GovernanceEmailNotification(_Model): + """The governance email weekly notification configuration. + + :ivar disable_manager_email_notification: Exclude manager from weekly email notification. + :vartype disable_manager_email_notification: bool + :ivar disable_owner_email_notification: Exclude owner from weekly email notification. + :vartype disable_owner_email_notification: bool + """ + + disable_manager_email_notification: Optional[bool] = rest_field( + name="disableManagerEmailNotification", visibility=["read", "create", "update", "delete", "query"] + ) + """Exclude manager from weekly email notification.""" + disable_owner_email_notification: Optional[bool] = rest_field( + name="disableOwnerEmailNotification", visibility=["read", "create", "update", "delete", "query"] + ) + """Exclude owner from weekly email notification.""" + + @overload + def __init__( + self, + *, + disable_manager_email_notification: Optional[bool] = None, + disable_owner_email_notification: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GovernanceRule(ExtensionResource): + """Governance rule over a given scope. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Properties of a governance rule. + :vartype properties: ~azure.mgmt.security.models.GovernanceRuleProperties + """ + + properties: Optional["_models.GovernanceRuleProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of a governance rule.""" + + __flattened_items = [ + "tenant_id", + "display_name", + "description", + "remediation_timeframe", + "is_grace_period", + "rule_priority", + "is_disabled", + "rule_type", + "source_resource_type", + "excluded_scopes", + "condition_sets", + "include_member_scopes", + "owner_source", + "governance_email_notification", + "metadata", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.GovernanceRuleProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class GovernanceRuleEmailNotification(_Model): + """The governance email weekly notification configuration. + + :ivar disable_manager_email_notification: Defines whether manager email notifications are + disabled. + :vartype disable_manager_email_notification: bool + :ivar disable_owner_email_notification: Defines whether owner email notifications are disabled. + :vartype disable_owner_email_notification: bool + """ + + disable_manager_email_notification: Optional[bool] = rest_field( + name="disableManagerEmailNotification", visibility=["read", "create", "update", "delete", "query"] + ) + """Defines whether manager email notifications are disabled.""" + disable_owner_email_notification: Optional[bool] = rest_field( + name="disableOwnerEmailNotification", visibility=["read", "create", "update", "delete", "query"] + ) + """Defines whether owner email notifications are disabled.""" + + @overload + def __init__( + self, + *, + disable_manager_email_notification: Optional[bool] = None, + disable_owner_email_notification: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GovernanceRuleMetadata(_Model): + """The governance rule metadata. + + :ivar created_by: Governance rule Created by object id (GUID). + :vartype created_by: str + :ivar created_on: Governance rule creation date. + :vartype created_on: ~datetime.datetime + :ivar updated_by: Governance rule last updated by object id (GUID). + :vartype updated_by: str + :ivar updated_on: Governance rule last update date. + :vartype updated_on: ~datetime.datetime + """ + + created_by: Optional[str] = rest_field(name="createdBy", visibility=["read"]) + """Governance rule Created by object id (GUID).""" + created_on: Optional[datetime.datetime] = rest_field(name="createdOn", visibility=["read"], format="rfc3339") + """Governance rule creation date.""" + updated_by: Optional[str] = rest_field(name="updatedBy", visibility=["read"]) + """Governance rule last updated by object id (GUID).""" + updated_on: Optional[datetime.datetime] = rest_field(name="updatedOn", visibility=["read"], format="rfc3339") + """Governance rule last update date.""" + + +class GovernanceRuleOwnerSource(_Model): + """Describe the owner source of governance rule. + + :ivar type: The owner type for the governance rule owner source. Known values are: "ByTag" and + "Manually". + :vartype type: str or ~azure.mgmt.security.models.GovernanceRuleOwnerSourceType + :ivar value: The source value e.g. tag key like owner name or email address. + :vartype value: str + """ + + type: Optional[Union[str, "_models.GovernanceRuleOwnerSourceType"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The owner type for the governance rule owner source. Known values are: \"ByTag\" and + \"Manually\".""" + value: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The source value e.g. tag key like owner name or email address.""" + + @overload + def __init__( + self, + *, + type: Optional[Union[str, "_models.GovernanceRuleOwnerSourceType"]] = None, + value: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class GovernanceRuleProperties(_Model): + """Describes properties of an governance rule. + + :ivar tenant_id: The tenantId (GUID). + :vartype tenant_id: str + :ivar display_name: Display name of the governance rule. Required. + :vartype display_name: str + :ivar description: Description of the governance rule. + :vartype description: str + :ivar remediation_timeframe: Governance rule remediation timeframe - this is the time that will + affect on the grace-period duration e.g. 7.00:00:00 - means 7 days. + :vartype remediation_timeframe: str + :ivar is_grace_period: Defines whether there is a grace period on the governance rule. + :vartype is_grace_period: bool + :ivar rule_priority: The governance rule priority, priority to the lower number. Rules with the + same priority on the same scope will not be allowed. Required. + :vartype rule_priority: int + :ivar is_disabled: Defines whether the rule is active/inactive. + :vartype is_disabled: bool + :ivar rule_type: The rule type of the governance rule, defines the source of the rule e.g. + Integrated. Required. Known values are: "Integrated" and "ServiceNow". + :vartype rule_type: str or ~azure.mgmt.security.models.GovernanceRuleType + :ivar source_resource_type: The governance rule source, what the rule affects, e.g. + Assessments. Required. "Assessments" + :vartype source_resource_type: str or + ~azure.mgmt.security.models.GovernanceRuleSourceResourceType + :ivar excluded_scopes: Excluded scopes, filter out the descendants of the scope (on management + scopes). + :vartype excluded_scopes: list[str] + :ivar condition_sets: The governance rule conditionSets - see examples. Required. + :vartype condition_sets: list[any] + :ivar include_member_scopes: Defines whether the rule is management scope rule (master + connector as a single scope or management scope). + :vartype include_member_scopes: bool + :ivar owner_source: The owner source for the governance rule - e.g. Manually by + `user@contoso.com `_ - see example. Required. + :vartype owner_source: ~azure.mgmt.security.models.GovernanceRuleOwnerSource + :ivar governance_email_notification: The email notifications settings for the governance rule, + states whether to disable notifications for mangers and owners. + :vartype governance_email_notification: + ~azure.mgmt.security.models.GovernanceRuleEmailNotification + :ivar metadata: The governance rule metadata. + :vartype metadata: ~azure.mgmt.security.models.GovernanceRuleMetadata + """ + + tenant_id: Optional[str] = rest_field(name="tenantId", visibility=["read"]) + """The tenantId (GUID).""" + display_name: str = rest_field(name="displayName", visibility=["read", "create", "update", "delete", "query"]) + """Display name of the governance rule. Required.""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Description of the governance rule.""" + remediation_timeframe: Optional[str] = rest_field( + name="remediationTimeframe", visibility=["read", "create", "update", "delete", "query"] + ) + """Governance rule remediation timeframe - this is the time that will affect on the grace-period + duration e.g. 7.00:00:00 - means 7 days.""" + is_grace_period: Optional[bool] = rest_field( + name="isGracePeriod", visibility=["read", "create", "update", "delete", "query"] + ) + """Defines whether there is a grace period on the governance rule.""" + rule_priority: int = rest_field(name="rulePriority", visibility=["read", "create", "update", "delete", "query"]) + """The governance rule priority, priority to the lower number. Rules with the same priority on the + same scope will not be allowed. Required.""" + is_disabled: Optional[bool] = rest_field( + name="isDisabled", visibility=["read", "create", "update", "delete", "query"] + ) + """Defines whether the rule is active/inactive.""" + rule_type: Union[str, "_models.GovernanceRuleType"] = rest_field( + name="ruleType", visibility=["read", "create", "update", "delete", "query"] + ) + """The rule type of the governance rule, defines the source of the rule e.g. Integrated. Required. + Known values are: \"Integrated\" and \"ServiceNow\".""" + source_resource_type: Union[str, "_models.GovernanceRuleSourceResourceType"] = rest_field( + name="sourceResourceType", visibility=["read", "create", "update", "delete", "query"] + ) + """The governance rule source, what the rule affects, e.g. Assessments. Required. \"Assessments\"""" + excluded_scopes: Optional[list[str]] = rest_field( + name="excludedScopes", visibility=["read", "create", "update", "delete", "query"] + ) + """Excluded scopes, filter out the descendants of the scope (on management scopes).""" + condition_sets: list[Any] = rest_field( + name="conditionSets", visibility=["read", "create", "update", "delete", "query"] + ) + """The governance rule conditionSets - see examples. Required.""" + include_member_scopes: Optional[bool] = rest_field( + name="includeMemberScopes", visibility=["read", "create", "update", "delete", "query"] + ) + """Defines whether the rule is management scope rule (master connector as a single scope or + management scope).""" + owner_source: "_models.GovernanceRuleOwnerSource" = rest_field( + name="ownerSource", visibility=["read", "create", "update", "delete", "query"] + ) + """The owner source for the governance rule - e.g. Manually by `user@contoso.com + `_ - see example. Required.""" + governance_email_notification: Optional["_models.GovernanceRuleEmailNotification"] = rest_field( + name="governanceEmailNotification", visibility=["read", "create", "update", "delete", "query"] + ) + """The email notifications settings for the governance rule, states whether to disable + notifications for mangers and owners.""" + metadata: Optional["_models.GovernanceRuleMetadata"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The governance rule metadata.""" + + @overload + def __init__( + self, + *, + display_name: str, + rule_priority: int, + rule_type: Union[str, "_models.GovernanceRuleType"], + source_resource_type: Union[str, "_models.GovernanceRuleSourceResourceType"], + condition_sets: list[Any], + owner_source: "_models.GovernanceRuleOwnerSource", + description: Optional[str] = None, + remediation_timeframe: Optional[str] = None, + is_grace_period: Optional[bool] = None, + is_disabled: Optional[bool] = None, + excluded_scopes: Optional[list[str]] = None, + include_member_scopes: Optional[bool] = None, + governance_email_notification: Optional["_models.GovernanceRuleEmailNotification"] = None, + metadata: Optional["_models.GovernanceRuleMetadata"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class HealthDataClassification(_Model): + """The classification of the health report. + + :ivar component: The component describes the name of the agent/service that scans the issue. + :vartype component: str + :ivar scenario: The scenario describes the health scenario issue of the component. + :vartype scenario: str + :ivar scope: The resource scope of the health report. + :vartype scope: str + """ + + component: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The component describes the name of the agent/service that scans the issue.""" + scenario: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The scenario describes the health scenario issue of the component.""" + scope: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The resource scope of the health report.""" + + @overload + def __init__( + self, + *, + component: Optional[str] = None, + scenario: Optional[str] = None, + scope: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class HealthReport(ExtensionResource): + """The health report resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Properties of a health report. + :vartype properties: ~azure.mgmt.security.models.HealthReportProperties + """ + + properties: Optional["_models.HealthReportProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of a health report.""" + + __flattened_items = [ + "resource_details", + "environment_details", + "health_data_classification", + "status", + "affected_defenders_plans", + "affected_defenders_sub_plans", + "report_additional_data", + "issues", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.HealthReportProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class HealthReportProperties(_Model): + """Describes properties of the health report. + + :ivar resource_details: The resource details of the health report. + :vartype resource_details: ~azure.mgmt.security.models.ResourceDetails + :ivar environment_details: The environment details of the resource. + :vartype environment_details: ~azure.mgmt.security.models.EnvironmentDetails + :ivar health_data_classification: The classification of the health report. + :vartype health_data_classification: ~azure.mgmt.security.models.HealthDataClassification + :ivar status: The status of the health report. + :vartype status: ~azure.mgmt.security.models.StatusAutoGenerated + :ivar affected_defenders_plans: The affected defenders plans by unhealthy report. + :vartype affected_defenders_plans: list[str] + :ivar affected_defenders_sub_plans: The affected defenders sub plans by unhealthy report. + :vartype affected_defenders_sub_plans: list[str] + :ivar report_additional_data: Additional data for the given health report, this field can + include more details on the resource and the health scenario. + :vartype report_additional_data: dict[str, str] + :ivar issues: A collection of the issues in the report. + :vartype issues: list[~azure.mgmt.security.models.Issue] + """ + + resource_details: Optional["_models.ResourceDetails"] = rest_field( + name="resourceDetails", visibility=["read", "create", "update", "delete", "query"] + ) + """The resource details of the health report.""" + environment_details: Optional["_models.EnvironmentDetails"] = rest_field( + name="environmentDetails", visibility=["read", "create", "update", "delete", "query"] + ) + """The environment details of the resource.""" + health_data_classification: Optional["_models.HealthDataClassification"] = rest_field( + name="healthDataClassification", visibility=["read", "create", "update", "delete", "query"] + ) + """The classification of the health report.""" + status: Optional["_models.StatusAutoGenerated"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The status of the health report.""" + affected_defenders_plans: Optional[list[str]] = rest_field( + name="affectedDefendersPlans", visibility=["read", "create", "update", "delete", "query"] + ) + """The affected defenders plans by unhealthy report.""" + affected_defenders_sub_plans: Optional[list[str]] = rest_field( + name="affectedDefendersSubPlans", visibility=["read", "create", "update", "delete", "query"] + ) + """The affected defenders sub plans by unhealthy report.""" + report_additional_data: Optional[dict[str, str]] = rest_field(name="reportAdditionalData", visibility=["read"]) + """Additional data for the given health report, this field can include more details on the + resource and the health scenario.""" + issues: Optional[list["_models.Issue"]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """A collection of the issues in the report.""" + + @overload + def __init__( + self, + *, + resource_details: Optional["_models.ResourceDetails"] = None, + environment_details: Optional["_models.EnvironmentDetails"] = None, + health_data_classification: Optional["_models.HealthDataClassification"] = None, + status: Optional["_models.StatusAutoGenerated"] = None, + affected_defenders_plans: Optional[list[str]] = None, + affected_defenders_sub_plans: Optional[list[str]] = None, + issues: Optional[list["_models.Issue"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Identity(_Model): + """Identity for the resource. + + :ivar type: The identity type. "SystemAssigned" + :vartype type: str or ~azure.mgmt.security.models.ResourceIdentityType + """ + + type: Optional[Union[str, "_models.ResourceIdentityType"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The identity type. \"SystemAssigned\"""" + + @overload + def __init__( + self, + *, + type: Optional[Union[str, "_models.ResourceIdentityType"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class InformationProtectionKeyword(_Model): + """The information type keyword. + + :ivar pattern: The keyword pattern. + :vartype pattern: str + :ivar custom: Indicates whether the keyword is custom or not. + :vartype custom: bool + :ivar can_be_numeric: Indicates whether the keyword can be applied on numeric types or not. + :vartype can_be_numeric: bool + :ivar excluded: Indicates whether the keyword is excluded or not. + :vartype excluded: bool + """ + + pattern: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The keyword pattern.""" + custom: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Indicates whether the keyword is custom or not.""" + can_be_numeric: Optional[bool] = rest_field( + name="canBeNumeric", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether the keyword can be applied on numeric types or not.""" + excluded: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Indicates whether the keyword is excluded or not.""" + + @overload + def __init__( + self, + *, + pattern: Optional[str] = None, + custom: Optional[bool] = None, + can_be_numeric: Optional[bool] = None, + excluded: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class InformationProtectionPolicy(ExtensionResource): + """Information protection policy. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Information protection policy data. + :vartype properties: ~azure.mgmt.security.models.InformationProtectionPolicyProperties + """ + + properties: Optional["_models.InformationProtectionPolicyProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Information protection policy data.""" + + __flattened_items = ["last_modified_utc", "version", "labels", "information_types"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.InformationProtectionPolicyProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class InformationProtectionPolicyProperties(_Model): + """describes properties of an information protection policy. + + :ivar last_modified_utc: Describes the last UTC time the policy was modified. + :vartype last_modified_utc: ~datetime.datetime + :ivar version: Describes the version of the policy. + :vartype version: str + :ivar labels: Dictionary of sensitivity labels. + :vartype labels: dict[str, ~azure.mgmt.security.models.SensitivityLabel] + :ivar information_types: The sensitivity information types. + :vartype information_types: dict[str, ~azure.mgmt.security.models.InformationType] + """ + + last_modified_utc: Optional[datetime.datetime] = rest_field( + name="lastModifiedUtc", visibility=["read"], format="rfc3339" + ) + """Describes the last UTC time the policy was modified.""" + version: Optional[str] = rest_field(visibility=["read"]) + """Describes the version of the policy.""" + labels: Optional[dict[str, "_models.SensitivityLabel"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Dictionary of sensitivity labels.""" + information_types: Optional[dict[str, "_models.InformationType"]] = rest_field( + name="informationTypes", visibility=["read", "create", "update", "delete", "query"] + ) + """The sensitivity information types.""" + + @overload + def __init__( + self, + *, + labels: Optional[dict[str, "_models.SensitivityLabel"]] = None, + information_types: Optional[dict[str, "_models.InformationType"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class InformationType(_Model): + """The information type. + + :ivar display_name: The name of the information type. + :vartype display_name: str + :ivar description: The description of the information type. + :vartype description: str + :ivar order: The order of the information type. + :vartype order: int + :ivar recommended_label_id: The recommended label id to be associated with this information + type. + :vartype recommended_label_id: str + :ivar enabled: Indicates whether the information type is enabled or not. + :vartype enabled: bool + :ivar custom: Indicates whether the information type is custom or not. + :vartype custom: bool + :ivar keywords: The information type keywords. + :vartype keywords: list[~azure.mgmt.security.models.InformationProtectionKeyword] + """ + + display_name: Optional[str] = rest_field( + name="displayName", visibility=["read", "create", "update", "delete", "query"] + ) + """The name of the information type.""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The description of the information type.""" + order: Optional[int] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The order of the information type.""" + recommended_label_id: Optional[str] = rest_field( + name="recommendedLabelId", visibility=["read", "create", "update", "delete", "query"] + ) + """The recommended label id to be associated with this information type.""" + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Indicates whether the information type is enabled or not.""" + custom: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Indicates whether the information type is custom or not.""" + keywords: Optional[list["_models.InformationProtectionKeyword"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The information type keywords.""" + + @overload + def __init__( + self, + *, + display_name: Optional[str] = None, + description: Optional[str] = None, + order: Optional[int] = None, + recommended_label_id: Optional[str] = None, + enabled: Optional[bool] = None, + custom: Optional[bool] = None, + keywords: Optional[list["_models.InformationProtectionKeyword"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class InfoType(_Model): + """Custom user-defined information type. + + :ivar name: Display name of the info type. + :vartype name: str + :ivar id: Id of the info type. + :vartype id: str + :ivar description: Description of the info type. + :vartype description: str + """ + + name: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Display name of the info type.""" + id: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Id of the info type.""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Description of the info type.""" + + @overload + def __init__( + self, + *, + name: Optional[str] = None, + id: Optional[str] = None, # pylint: disable=redefined-builtin + description: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class InventoryList(_Model): + """Model for inventory to be included or excluded from Agentless. + + :ivar inventory_kind: Types for inventory kind. Known values are: "AzureDevOpsOrganization", + "AzureDevOpsProject", "AzureDevOpsRepository", "GitHubOwner", and "GitHubRepository". + :vartype inventory_kind: str or ~azure.mgmt.security.models.InventoryKind + :ivar value: Gets or sets the value for inventory type. + :vartype value: str + """ + + inventory_kind: Optional[Union[str, "_models.InventoryKind"]] = rest_field( + name="inventoryKind", visibility=["read", "create", "update", "delete", "query"] + ) + """Types for inventory kind. Known values are: \"AzureDevOpsOrganization\", + \"AzureDevOpsProject\", \"AzureDevOpsRepository\", \"GitHubOwner\", and \"GitHubRepository\".""" + value: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Gets or sets the value for inventory type.""" + + @overload + def __init__( + self, + *, + inventory_kind: Optional[Union[str, "_models.InventoryKind"]] = None, + value: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class IoTSecurityAggregatedAlert(ProxyResource): + """Security Solution Aggregated Alert information. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: IoT Security solution aggregated alert details. + :vartype properties: ~azure.mgmt.security.models.IoTSecurityAggregatedAlertProperties + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + """ + + properties: Optional["_models.IoTSecurityAggregatedAlertProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """IoT Security solution aggregated alert details.""" + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + + __flattened_items = [ + "alert_type", + "alert_display_name", + "aggregated_date_utc", + "vendor_name", + "reported_severity", + "remediation_steps", + "description", + "count", + "effected_resource_type", + "system_source", + "action_taken", + "log_analytics_query", + "top_devices_list", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.IoTSecurityAggregatedAlertProperties"] = None, + tags: Optional[dict[str, str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class IoTSecurityAggregatedAlertProperties(_Model): + """IoT Security solution aggregated alert details. + + :ivar alert_type: Name of the alert type. + :vartype alert_type: str + :ivar alert_display_name: Display name of the alert type. + :vartype alert_display_name: str + :ivar aggregated_date_utc: Date of detection. + :vartype aggregated_date_utc: ~datetime.date + :ivar vendor_name: Name of the organization that raised the alert. + :vartype vendor_name: str + :ivar reported_severity: Assessed alert severity. Known values are: "Informational", "Low", + "Medium", and "High". + :vartype reported_severity: str or ~azure.mgmt.security.models.ReportedSeverity + :ivar remediation_steps: Recommended steps for remediation. + :vartype remediation_steps: str + :ivar description: Description of the suspected vulnerability and meaning. + :vartype description: str + :ivar count: Number of alerts occurrences within the aggregated time window. + :vartype count: int + :ivar effected_resource_type: Azure resource ID of the resource that received the alerts. + :vartype effected_resource_type: str + :ivar system_source: The type of the alerted resource (Azure, Non-Azure). + :vartype system_source: str + :ivar action_taken: IoT Security solution alert response. + :vartype action_taken: str + :ivar log_analytics_query: Log analytics query for getting the list of affected devices/alerts. + :vartype log_analytics_query: str + :ivar top_devices_list: 10 devices with the highest number of occurrences of this alert type, + on this day. + :vartype top_devices_list: + list[~azure.mgmt.security.models.IoTSecurityAggregatedAlertPropertiesTopDevicesListItem] + """ + + alert_type: Optional[str] = rest_field(name="alertType", visibility=["read"]) + """Name of the alert type.""" + alert_display_name: Optional[str] = rest_field(name="alertDisplayName", visibility=["read"]) + """Display name of the alert type.""" + aggregated_date_utc: Optional[datetime.date] = rest_field(name="aggregatedDateUtc", visibility=["read"]) + """Date of detection.""" + vendor_name: Optional[str] = rest_field(name="vendorName", visibility=["read"]) + """Name of the organization that raised the alert.""" + reported_severity: Optional[Union[str, "_models.ReportedSeverity"]] = rest_field( + name="reportedSeverity", visibility=["read"] + ) + """Assessed alert severity. Known values are: \"Informational\", \"Low\", \"Medium\", and + \"High\".""" + remediation_steps: Optional[str] = rest_field(name="remediationSteps", visibility=["read"]) + """Recommended steps for remediation.""" + description: Optional[str] = rest_field(visibility=["read"]) + """Description of the suspected vulnerability and meaning.""" + count: Optional[int] = rest_field(visibility=["read"]) + """Number of alerts occurrences within the aggregated time window.""" + effected_resource_type: Optional[str] = rest_field(name="effectedResourceType", visibility=["read"]) + """Azure resource ID of the resource that received the alerts.""" + system_source: Optional[str] = rest_field(name="systemSource", visibility=["read"]) + """The type of the alerted resource (Azure, Non-Azure).""" + action_taken: Optional[str] = rest_field(name="actionTaken", visibility=["read"]) + """IoT Security solution alert response.""" + log_analytics_query: Optional[str] = rest_field(name="logAnalyticsQuery", visibility=["read"]) + """Log analytics query for getting the list of affected devices/alerts.""" + top_devices_list: Optional[list["_models.IoTSecurityAggregatedAlertPropertiesTopDevicesListItem"]] = rest_field( + name="topDevicesList", visibility=["read"] + ) + """10 devices with the highest number of occurrences of this alert type, on this day.""" + + +class IoTSecurityAggregatedAlertPropertiesTopDevicesListItem(_Model): # pylint: disable=name-too-long + """IoTSecurityAggregatedAlertPropertiesTopDevicesListItem. + + :ivar device_id: Name of the device. + :vartype device_id: str + :ivar alerts_count: Number of alerts raised for this device. + :vartype alerts_count: int + :ivar last_occurrence: Most recent time this alert was raised for this device, on this day. + :vartype last_occurrence: str + """ + + device_id: Optional[str] = rest_field(name="deviceId", visibility=["read"]) + """Name of the device.""" + alerts_count: Optional[int] = rest_field(name="alertsCount", visibility=["read"]) + """Number of alerts raised for this device.""" + last_occurrence: Optional[str] = rest_field(name="lastOccurrence", visibility=["read"]) + """Most recent time this alert was raised for this device, on this day.""" + + +class IoTSecurityAggregatedRecommendation(ProxyResource): + """IoT Security solution recommendation information. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Security Solution data. + :vartype properties: ~azure.mgmt.security.models.IoTSecurityAggregatedRecommendationProperties + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + """ + + properties: Optional["_models.IoTSecurityAggregatedRecommendationProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Security Solution data.""" + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + + __flattened_items = [ + "recommendation_name", + "recommendation_display_name", + "description", + "recommendation_type_id", + "detected_by", + "remediation_steps", + "reported_severity", + "healthy_devices", + "unhealthy_device_count", + "log_analytics_query", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.IoTSecurityAggregatedRecommendationProperties"] = None, + tags: Optional[dict[str, str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class IoTSecurityAggregatedRecommendationProperties(_Model): # pylint: disable=name-too-long + """IoT Security solution aggregated recommendation information. + + :ivar recommendation_name: Name of the recommendation. + :vartype recommendation_name: str + :ivar recommendation_display_name: Display name of the recommendation type. + :vartype recommendation_display_name: str + :ivar description: Description of the suspected vulnerability and meaning. + :vartype description: str + :ivar recommendation_type_id: Recommendation-type GUID. + :vartype recommendation_type_id: str + :ivar detected_by: Name of the organization that made the recommendation. + :vartype detected_by: str + :ivar remediation_steps: Recommended steps for remediation. + :vartype remediation_steps: str + :ivar reported_severity: Assessed recommendation severity. Known values are: "Informational", + "Low", "Medium", and "High". + :vartype reported_severity: str or ~azure.mgmt.security.models.ReportedSeverity + :ivar healthy_devices: Number of healthy devices within the IoT Security solution. + :vartype healthy_devices: int + :ivar unhealthy_device_count: Number of unhealthy devices within the IoT Security solution. + :vartype unhealthy_device_count: int + :ivar log_analytics_query: Log analytics query for getting the list of affected devices/alerts. + :vartype log_analytics_query: str + """ + + recommendation_name: Optional[str] = rest_field( + name="recommendationName", visibility=["read", "create", "update", "delete", "query"] + ) + """Name of the recommendation.""" + recommendation_display_name: Optional[str] = rest_field(name="recommendationDisplayName", visibility=["read"]) + """Display name of the recommendation type.""" + description: Optional[str] = rest_field(visibility=["read"]) + """Description of the suspected vulnerability and meaning.""" + recommendation_type_id: Optional[str] = rest_field(name="recommendationTypeId", visibility=["read"]) + """Recommendation-type GUID.""" + detected_by: Optional[str] = rest_field(name="detectedBy", visibility=["read"]) + """Name of the organization that made the recommendation.""" + remediation_steps: Optional[str] = rest_field(name="remediationSteps", visibility=["read"]) + """Recommended steps for remediation.""" + reported_severity: Optional[Union[str, "_models.ReportedSeverity"]] = rest_field( + name="reportedSeverity", visibility=["read"] + ) + """Assessed recommendation severity. Known values are: \"Informational\", \"Low\", \"Medium\", and + \"High\".""" + healthy_devices: Optional[int] = rest_field(name="healthyDevices", visibility=["read"]) + """Number of healthy devices within the IoT Security solution.""" + unhealthy_device_count: Optional[int] = rest_field(name="unhealthyDeviceCount", visibility=["read"]) + """Number of unhealthy devices within the IoT Security solution.""" + log_analytics_query: Optional[str] = rest_field(name="logAnalyticsQuery", visibility=["read"]) + """Log analytics query for getting the list of affected devices/alerts.""" + + @overload + def __init__( + self, + *, + recommendation_name: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class IoTSecurityAlertedDevice(_Model): + """Statistical information about the number of alerts per device during last set number of days. + + :ivar device_id: Device identifier. + :vartype device_id: str + :ivar alerts_count: Number of alerts raised for this device. + :vartype alerts_count: int + """ + + device_id: Optional[str] = rest_field(name="deviceId", visibility=["read"]) + """Device identifier.""" + alerts_count: Optional[int] = rest_field(name="alertsCount", visibility=["read"]) + """Number of alerts raised for this device.""" + + +class IoTSecurityDeviceAlert(_Model): + """Statistical information about the number of alerts per alert type during last set number of + days. + + :ivar alert_display_name: Display name of the alert. + :vartype alert_display_name: str + :ivar reported_severity: Assessed Alert severity. Known values are: "Informational", "Low", + "Medium", and "High". + :vartype reported_severity: str or ~azure.mgmt.security.models.ReportedSeverity + :ivar alerts_count: Number of alerts raised for this alert type. + :vartype alerts_count: int + """ + + alert_display_name: Optional[str] = rest_field(name="alertDisplayName", visibility=["read"]) + """Display name of the alert.""" + reported_severity: Optional[Union[str, "_models.ReportedSeverity"]] = rest_field( + name="reportedSeverity", visibility=["read"] + ) + """Assessed Alert severity. Known values are: \"Informational\", \"Low\", \"Medium\", and + \"High\".""" + alerts_count: Optional[int] = rest_field(name="alertsCount", visibility=["read"]) + """Number of alerts raised for this alert type.""" + + +class IoTSecurityDeviceRecommendation(_Model): + """Statistical information about the number of recommendations per device, per recommendation + type. + + :ivar recommendation_display_name: Display name of the recommendation. + :vartype recommendation_display_name: str + :ivar reported_severity: Assessed recommendation severity. Known values are: "Informational", + "Low", "Medium", and "High". + :vartype reported_severity: str or ~azure.mgmt.security.models.ReportedSeverity + :ivar devices_count: Number of devices with this recommendation. + :vartype devices_count: int + """ + + recommendation_display_name: Optional[str] = rest_field(name="recommendationDisplayName", visibility=["read"]) + """Display name of the recommendation.""" + reported_severity: Optional[Union[str, "_models.ReportedSeverity"]] = rest_field( + name="reportedSeverity", visibility=["read"] + ) + """Assessed recommendation severity. Known values are: \"Informational\", \"Low\", \"Medium\", and + \"High\".""" + devices_count: Optional[int] = rest_field(name="devicesCount", visibility=["read"]) + """Number of devices with this recommendation.""" + + +class IoTSecuritySolutionAnalyticsModel(ProxyResource): + """Security analytics of your IoT Security solution. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Security Solution Aggregated Alert data. + :vartype properties: ~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModelProperties + """ + + properties: Optional["_models.IoTSecuritySolutionAnalyticsModelProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Security Solution Aggregated Alert data.""" + + __flattened_items = [ + "metrics", + "unhealthy_device_count", + "devices_metrics", + "top_alerted_devices", + "most_prevalent_device_alerts", + "most_prevalent_device_recommendations", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.IoTSecuritySolutionAnalyticsModelProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class IoTSecuritySolutionAnalyticsModelList(_Model): + """List of Security analytics of your IoT Security solution. + + :ivar value: The IoTSecuritySolutionAnalyticsModel items on this page. Required. + :vartype value: list[~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModel] + :ivar next_link: The link to the next page of items. + :vartype next_link: str + """ + + value: list["_models.IoTSecuritySolutionAnalyticsModel"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The IoTSecuritySolutionAnalyticsModel items on this page. Required.""" + next_link: Optional[str] = rest_field(name="nextLink", visibility=["read", "create", "update", "delete", "query"]) + """The link to the next page of items.""" + + @overload + def __init__( + self, + *, + value: list["_models.IoTSecuritySolutionAnalyticsModel"], + next_link: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class IoTSecuritySolutionAnalyticsModelProperties(_Model): # pylint: disable=name-too-long + """Security analytics properties of your IoT Security solution. + + :ivar metrics: Security analytics of your IoT Security solution. + :vartype metrics: ~azure.mgmt.security.models.IoTSeverityMetrics + :ivar unhealthy_device_count: Number of unhealthy devices within your IoT Security solution. + :vartype unhealthy_device_count: int + :ivar devices_metrics: List of device metrics by the aggregation date. + :vartype devices_metrics: + list[~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem] + :ivar top_alerted_devices: List of the 3 devices with the most alerts. + :vartype top_alerted_devices: list[~azure.mgmt.security.models.IoTSecurityAlertedDevice] + :ivar most_prevalent_device_alerts: List of the 3 most prevalent device alerts. + :vartype most_prevalent_device_alerts: list[~azure.mgmt.security.models.IoTSecurityDeviceAlert] + :ivar most_prevalent_device_recommendations: List of the 3 most prevalent device + recommendations. + :vartype most_prevalent_device_recommendations: + list[~azure.mgmt.security.models.IoTSecurityDeviceRecommendation] + """ + + metrics: Optional["_models.IoTSeverityMetrics"] = rest_field(visibility=["read"]) + """Security analytics of your IoT Security solution.""" + unhealthy_device_count: Optional[int] = rest_field(name="unhealthyDeviceCount", visibility=["read"]) + """Number of unhealthy devices within your IoT Security solution.""" + devices_metrics: Optional[list["_models.IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem"]] = ( + rest_field(name="devicesMetrics", visibility=["read"]) + ) + """List of device metrics by the aggregation date.""" + top_alerted_devices: Optional[list["_models.IoTSecurityAlertedDevice"]] = rest_field( + name="topAlertedDevices", visibility=["read", "create", "update", "delete", "query"] + ) + """List of the 3 devices with the most alerts.""" + most_prevalent_device_alerts: Optional[list["_models.IoTSecurityDeviceAlert"]] = rest_field( + name="mostPrevalentDeviceAlerts", visibility=["read", "create", "update", "delete", "query"] + ) + """List of the 3 most prevalent device alerts.""" + most_prevalent_device_recommendations: Optional[list["_models.IoTSecurityDeviceRecommendation"]] = rest_field( + name="mostPrevalentDeviceRecommendations", visibility=["read", "create", "update", "delete", "query"] + ) + """List of the 3 most prevalent device recommendations.""" + + @overload + def __init__( + self, + *, + top_alerted_devices: Optional[list["_models.IoTSecurityAlertedDevice"]] = None, + most_prevalent_device_alerts: Optional[list["_models.IoTSecurityDeviceAlert"]] = None, + most_prevalent_device_recommendations: Optional[list["_models.IoTSecurityDeviceRecommendation"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem(_Model): # pylint: disable=name-too-long + """IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem. + + :ivar date: Aggregation of IoT Security solution device alert metrics by date. + :vartype date: ~datetime.datetime + :ivar devices_metrics: Device alert count by severity. + :vartype devices_metrics: ~azure.mgmt.security.models.IoTSeverityMetrics + """ + + date: Optional[datetime.datetime] = rest_field( + visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """Aggregation of IoT Security solution device alert metrics by date.""" + devices_metrics: Optional["_models.IoTSeverityMetrics"] = rest_field( + name="devicesMetrics", visibility=["read", "create", "update", "delete", "query"] + ) + """Device alert count by severity.""" + + @overload + def __init__( + self, + *, + date: Optional[datetime.datetime] = None, + devices_metrics: Optional["_models.IoTSeverityMetrics"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class IoTSecuritySolutionModel(ProxyResource): + """IoT Security solution configuration and resource information. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Security Solution data. + :vartype properties: ~azure.mgmt.security.models.IoTSecuritySolutionProperties + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. + :vartype location: str + """ + + properties: Optional["_models.IoTSecuritySolutionProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Security Solution data.""" + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + location: Optional[str] = rest_field(visibility=["read", "create"]) + """The geo-location where the resource lives.""" + + __flattened_items = [ + "workspace", + "display_name", + "status", + "export", + "disabled_data_sources", + "iot_hubs", + "user_defined_resources", + "auto_discovered_resources", + "recommendations_configuration", + "unmasked_ip_logging_status", + "additional_workspaces", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.IoTSecuritySolutionProperties"] = None, + tags: Optional[dict[str, str]] = None, + location: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class IoTSecuritySolutionProperties(_Model): + """Security Solution setting data. + + :ivar workspace: Workspace resource ID. + :vartype workspace: str + :ivar display_name: Resource display name. Required. + :vartype display_name: str + :ivar status: Status of the IoT Security solution. Known values are: "Enabled" and "Disabled". + :vartype status: str or ~azure.mgmt.security.models.SecuritySolutionStatus + :ivar export: List of additional options for exporting to workspace data. + :vartype export: list[str or ~azure.mgmt.security.models.ExportData] + :ivar disabled_data_sources: Disabled data sources. Disabling these data sources compromises + the system. + :vartype disabled_data_sources: list[str or ~azure.mgmt.security.models.DataSource] + :ivar iot_hubs: IoT Hub resource IDs. Required. + :vartype iot_hubs: list[str] + :ivar user_defined_resources: Properties of the IoT Security solution's user defined resources. + :vartype user_defined_resources: ~azure.mgmt.security.models.UserDefinedResourcesProperties + :ivar auto_discovered_resources: List of resources that were automatically discovered as + relevant to the security solution. + :vartype auto_discovered_resources: list[str] + :ivar recommendations_configuration: List of the configuration status for each recommendation + type. + :vartype recommendations_configuration: + list[~azure.mgmt.security.models.RecommendationConfigurationProperties] + :ivar unmasked_ip_logging_status: Unmasked IP address logging status. Known values are: + "Disabled" and "Enabled". + :vartype unmasked_ip_logging_status: str or ~azure.mgmt.security.models.UnmaskedIpLoggingStatus + :ivar additional_workspaces: List of additional workspaces. + :vartype additional_workspaces: + list[~azure.mgmt.security.models.AdditionalWorkspacesProperties] + """ + + workspace: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Workspace resource ID.""" + display_name: str = rest_field(name="displayName", visibility=["read", "create", "update", "delete", "query"]) + """Resource display name. Required.""" + status: Optional[Union[str, "_models.SecuritySolutionStatus"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Status of the IoT Security solution. Known values are: \"Enabled\" and \"Disabled\".""" + export: Optional[list[Union[str, "_models.ExportData"]]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """List of additional options for exporting to workspace data.""" + disabled_data_sources: Optional[list[Union[str, "_models.DataSource"]]] = rest_field( + name="disabledDataSources", visibility=["read", "create", "update", "delete", "query"] + ) + """Disabled data sources. Disabling these data sources compromises the system.""" + iot_hubs: list[str] = rest_field(name="iotHubs", visibility=["read", "create", "update", "delete", "query"]) + """IoT Hub resource IDs. Required.""" + user_defined_resources: Optional["_models.UserDefinedResourcesProperties"] = rest_field( + name="userDefinedResources", visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of the IoT Security solution's user defined resources.""" + auto_discovered_resources: Optional[list[str]] = rest_field(name="autoDiscoveredResources", visibility=["read"]) + """List of resources that were automatically discovered as relevant to the security solution.""" + recommendations_configuration: Optional[list["_models.RecommendationConfigurationProperties"]] = rest_field( + name="recommendationsConfiguration", visibility=["read", "create", "update", "delete", "query"] + ) + """List of the configuration status for each recommendation type.""" + unmasked_ip_logging_status: Optional[Union[str, "_models.UnmaskedIpLoggingStatus"]] = rest_field( + name="unmaskedIpLoggingStatus", visibility=["read", "create", "update", "delete", "query"] + ) + """Unmasked IP address logging status. Known values are: \"Disabled\" and \"Enabled\".""" + additional_workspaces: Optional[list["_models.AdditionalWorkspacesProperties"]] = rest_field( + name="additionalWorkspaces", visibility=["read", "create", "update", "delete", "query"] + ) + """List of additional workspaces.""" + + @overload + def __init__( + self, + *, + display_name: str, + iot_hubs: list[str], + workspace: Optional[str] = None, + status: Optional[Union[str, "_models.SecuritySolutionStatus"]] = None, + export: Optional[list[Union[str, "_models.ExportData"]]] = None, + disabled_data_sources: Optional[list[Union[str, "_models.DataSource"]]] = None, + user_defined_resources: Optional["_models.UserDefinedResourcesProperties"] = None, + recommendations_configuration: Optional[list["_models.RecommendationConfigurationProperties"]] = None, + unmasked_ip_logging_status: Optional[Union[str, "_models.UnmaskedIpLoggingStatus"]] = None, + additional_workspaces: Optional[list["_models.AdditionalWorkspacesProperties"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class IoTSeverityMetrics(_Model): + """IoT Security solution analytics severity metrics. + + :ivar high: Count of high severity alerts/recommendations. + :vartype high: int + :ivar medium: Count of medium severity alerts/recommendations. + :vartype medium: int + :ivar low: Count of low severity alerts/recommendations. + :vartype low: int + """ + + high: Optional[int] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Count of high severity alerts/recommendations.""" + medium: Optional[int] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Count of medium severity alerts/recommendations.""" + low: Optional[int] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Count of low severity alerts/recommendations.""" + + @overload + def __init__( + self, + *, + high: Optional[int] = None, + medium: Optional[int] = None, + low: Optional[int] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Issue(_Model): + """The issue that caused the resource to by unhealthy. + + :ivar issue_key: The unique issue key. Required. + :vartype issue_key: str + :ivar issue_name: The issue name. + :vartype issue_name: str + :ivar security_values: The affected security values that MDC offers that will be affected by + the issue, for example: recommendations, alerts, etc. + :vartype security_values: list[str] + :ivar issue_description: The issue description. + :vartype issue_description: str + :ivar remediation_steps: Human readable description of what you should do to mitigate this + health issue. + :vartype remediation_steps: str + :ivar remediation_script: The remediation script to solve this issue. + :vartype remediation_script: str + :ivar issue_additional_data: Additional data for the given issue. The additional data depends + on the issue type. + :vartype issue_additional_data: dict[str, str] + """ + + issue_key: str = rest_field(name="issueKey", visibility=["read", "create", "update", "delete", "query"]) + """The unique issue key. Required.""" + issue_name: Optional[str] = rest_field(name="issueName", visibility=["read", "create", "update", "delete", "query"]) + """The issue name.""" + security_values: Optional[list[str]] = rest_field( + name="securityValues", visibility=["read", "create", "update", "delete", "query"] + ) + """The affected security values that MDC offers that will be affected by the issue, for example: + recommendations, alerts, etc.""" + issue_description: Optional[str] = rest_field( + name="issueDescription", visibility=["read", "create", "update", "delete", "query"] + ) + """The issue description.""" + remediation_steps: Optional[str] = rest_field( + name="remediationSteps", visibility=["read", "create", "update", "delete", "query"] + ) + """Human readable description of what you should do to mitigate this health issue.""" + remediation_script: Optional[str] = rest_field( + name="remediationScript", visibility=["read", "create", "update", "delete", "query"] + ) + """The remediation script to solve this issue.""" + issue_additional_data: Optional[dict[str, str]] = rest_field( + name="issueAdditionalData", visibility=["read", "create", "update", "delete", "query"] + ) + """Additional data for the given issue. The additional data depends on the issue type.""" + + @overload + def __init__( + self, + *, + issue_key: str, + issue_name: Optional[str] = None, + security_values: Optional[list[str]] = None, + issue_description: Optional[str] = None, + remediation_steps: Optional[str] = None, + remediation_script: Optional[str] = None, + issue_additional_data: Optional[dict[str, str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class IssueCreationRequest(_Model): + """The issue creation request model. + + :ivar security_assessment_resource_id: The security assessment resource id that the issue will + be opened based on. + :vartype security_assessment_resource_id: str + """ + + security_assessment_resource_id: Optional[str] = rest_field( + name="securityAssessmentResourceId", visibility=["read", "create", "update", "delete", "query"] + ) + """The security assessment resource id that the issue will be opened based on.""" + + @overload + def __init__( + self, + *, + security_assessment_resource_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class JFrogEnvironmentData(EnvironmentData, discriminator="JFrogArtifactory"): + """The JFrog Artifactory connector environment data. + + :ivar scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). + :vartype scan_interval: int + :ivar environment_type: The type of the environment data. Required. JFrogArtifactory. + :vartype environment_type: str or ~azure.mgmt.security.models.J_FROG_ARTIFACTORY + """ + + scan_interval: Optional[int] = rest_field( + name="scanInterval", visibility=["read", "create", "update", "delete", "query"] + ) + """Scan interval in hours (value should be between 1-hour to 24-hours).""" + environment_type: Literal[EnvironmentType.J_FROG_ARTIFACTORY] = rest_discriminator(name="environmentType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The type of the environment data. Required. JFrogArtifactory.""" + + @overload + def __init__( + self, + *, + scan_interval: Optional[int] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.environment_type = EnvironmentType.J_FROG_ARTIFACTORY # type: ignore + + +class JitNetworkAccessPolicy(ProxyResource): + """Concrete proxy resource types can be created by aliasing this type using a specific property + type. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Required. + :vartype properties: ~azure.mgmt.security.models.JitNetworkAccessPolicyProperties + :ivar kind: Kind of the resource. + :vartype kind: str + :ivar location: Location where the resource is stored. Required. + :vartype location: str + """ + + properties: "_models.JitNetworkAccessPolicyProperties" = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Required.""" + kind: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Kind of the resource.""" + location: str = rest_field(visibility=["read"]) + """Location where the resource is stored. Required.""" + + __flattened_items = ["virtual_machines", "requests", "provisioning_state"] + + @overload + def __init__( + self, + *, + properties: "_models.JitNetworkAccessPolicyProperties", + kind: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class JitNetworkAccessPolicyInitiatePort(_Model): + """JitNetworkAccessPolicyInitiatePort. + + :ivar number: Required. + :vartype number: int + :ivar allowed_source_address_prefix: Source of the allowed traffic. If omitted, the request + will be for the source IP address of the initiate request. + :vartype allowed_source_address_prefix: str + :ivar end_time_utc: The time to close the request in UTC. Required. + :vartype end_time_utc: ~datetime.datetime + """ + + number: int = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Required.""" + allowed_source_address_prefix: Optional[str] = rest_field( + name="allowedSourceAddressPrefix", visibility=["read", "create", "update", "delete", "query"] + ) + """Source of the allowed traffic. If omitted, the request will be for the source IP address of the + initiate request.""" + end_time_utc: datetime.datetime = rest_field( + name="endTimeUtc", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """The time to close the request in UTC. Required.""" + + @overload + def __init__( + self, + *, + number: int, + end_time_utc: datetime.datetime, + allowed_source_address_prefix: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class JitNetworkAccessPolicyInitiateRequest(_Model): + """JitNetworkAccessPolicyInitiateRequest. + + :ivar virtual_machines: A list of virtual machines & ports to open access for. Required. + :vartype virtual_machines: + list[~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateVirtualMachine] + :ivar justification: The justification for making the initiate request. + :vartype justification: str + """ + + virtual_machines: list["_models.JitNetworkAccessPolicyInitiateVirtualMachine"] = rest_field( + name="virtualMachines", visibility=["read", "create", "update", "delete", "query"] + ) + """A list of virtual machines & ports to open access for. Required.""" + justification: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The justification for making the initiate request.""" + + @overload + def __init__( + self, + *, + virtual_machines: list["_models.JitNetworkAccessPolicyInitiateVirtualMachine"], + justification: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class JitNetworkAccessPolicyInitiateVirtualMachine(_Model): # pylint: disable=name-too-long + """JitNetworkAccessPolicyInitiateVirtualMachine. + + :ivar id: Resource ID of the virtual machine that is linked to this policy. Required. + :vartype id: str + :ivar ports: The ports to open for the resource with the ``id``. Required. + :vartype ports: list[~azure.mgmt.security.models.JitNetworkAccessPolicyInitiatePort] + """ + + id: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource ID of the virtual machine that is linked to this policy. Required.""" + ports: list["_models.JitNetworkAccessPolicyInitiatePort"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The ports to open for the resource with the ``id``. Required.""" + + @overload + def __init__( + self, + *, + id: str, # pylint: disable=redefined-builtin + ports: list["_models.JitNetworkAccessPolicyInitiatePort"], + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class JitNetworkAccessPolicyProperties(_Model): + """JitNetworkAccessPolicyProperties. + + :ivar virtual_machines: Configurations for Microsoft.Compute/virtualMachines resource type. + Required. + :vartype virtual_machines: + list[~azure.mgmt.security.models.JitNetworkAccessPolicyVirtualMachine] + :ivar requests: + :vartype requests: list[~azure.mgmt.security.models.JitNetworkAccessRequest] + :ivar provisioning_state: Gets the provisioning state of the Just-in-Time policy. + :vartype provisioning_state: str + """ + + virtual_machines: list["_models.JitNetworkAccessPolicyVirtualMachine"] = rest_field( + name="virtualMachines", visibility=["read", "create", "update", "delete", "query"] + ) + """Configurations for Microsoft.Compute/virtualMachines resource type. Required.""" + requests: Optional[list["_models.JitNetworkAccessRequest"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + provisioning_state: Optional[str] = rest_field(name="provisioningState", visibility=["read"]) + """Gets the provisioning state of the Just-in-Time policy.""" + + @overload + def __init__( + self, + *, + virtual_machines: list["_models.JitNetworkAccessPolicyVirtualMachine"], + requests: Optional[list["_models.JitNetworkAccessRequest"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class JitNetworkAccessPolicyVirtualMachine(_Model): + """JitNetworkAccessPolicyVirtualMachine. + + :ivar id: Resource ID of the virtual machine that is linked to this policy. Required. + :vartype id: str + :ivar ports: Port configurations for the virtual machine. Required. + :vartype ports: list[~azure.mgmt.security.models.JitNetworkAccessPortRule] + :ivar public_ip_address: Public IP address of the Azure Firewall that is linked to this policy, + if applicable. + :vartype public_ip_address: str + """ + + id: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource ID of the virtual machine that is linked to this policy. Required.""" + ports: list["_models.JitNetworkAccessPortRule"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Port configurations for the virtual machine. Required.""" + public_ip_address: Optional[str] = rest_field( + name="publicIpAddress", visibility=["read", "create", "update", "delete", "query"] + ) + """Public IP address of the Azure Firewall that is linked to this policy, if applicable.""" + + @overload + def __init__( + self, + *, + id: str, # pylint: disable=redefined-builtin + ports: list["_models.JitNetworkAccessPortRule"], + public_ip_address: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class JitNetworkAccessPortRule(_Model): + """JitNetworkAccessPortRule. + + :ivar number: Required. + :vartype number: int + :ivar protocol: Required. Known values are: "TCP", "UDP", and "*". + :vartype protocol: str or ~azure.mgmt.security.models.ProtocolEnum + :ivar allowed_source_address_prefix: Mutually exclusive with the "allowedSourceAddressPrefixes" + parameter. Should be an IP address or CIDR, for example "192.168.0.3" or "192.168.0.0/16". + :vartype allowed_source_address_prefix: str + :ivar allowed_source_address_prefixes: Mutually exclusive with the "allowedSourceAddressPrefix" + parameter. + :vartype allowed_source_address_prefixes: list[str] + :ivar max_request_access_duration: Maximum duration requests can be made for. In ISO 8601 + duration format. Minimum 5 minutes, maximum 1 day. Required. + :vartype max_request_access_duration: str + """ + + number: int = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Required.""" + protocol: Union[str, "_models.ProtocolEnum"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Required. Known values are: \"TCP\", \"UDP\", and \"*\".""" + allowed_source_address_prefix: Optional[str] = rest_field( + name="allowedSourceAddressPrefix", visibility=["read", "create", "update", "delete", "query"] + ) + """Mutually exclusive with the \"allowedSourceAddressPrefixes\" parameter. Should be an IP address + or CIDR, for example \"192.168.0.3\" or \"192.168.0.0/16\".""" + allowed_source_address_prefixes: Optional[list[str]] = rest_field( + name="allowedSourceAddressPrefixes", visibility=["read", "create", "update", "delete", "query"] + ) + """Mutually exclusive with the \"allowedSourceAddressPrefix\" parameter.""" + max_request_access_duration: str = rest_field( + name="maxRequestAccessDuration", visibility=["read", "create", "update", "delete", "query"] + ) + """Maximum duration requests can be made for. In ISO 8601 duration format. Minimum 5 minutes, + maximum 1 day. Required.""" + + @overload + def __init__( + self, + *, + number: int, + protocol: Union[str, "_models.ProtocolEnum"], + max_request_access_duration: str, + allowed_source_address_prefix: Optional[str] = None, + allowed_source_address_prefixes: Optional[list[str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class JitNetworkAccessRequest(_Model): + """JitNetworkAccessRequest. + + :ivar virtual_machines: Required. + :vartype virtual_machines: + list[~azure.mgmt.security.models.JitNetworkAccessRequestVirtualMachine] + :ivar start_time_utc: The start time of the request in UTC. Required. + :vartype start_time_utc: ~datetime.datetime + :ivar requestor: The identity of the person who made the request. Required. + :vartype requestor: str + :ivar justification: The justification for making the initiate request. + :vartype justification: str + """ + + virtual_machines: list["_models.JitNetworkAccessRequestVirtualMachine"] = rest_field( + name="virtualMachines", visibility=["read", "create", "update", "delete", "query"] + ) + """Required.""" + start_time_utc: datetime.datetime = rest_field( + name="startTimeUtc", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """The start time of the request in UTC. Required.""" + requestor: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The identity of the person who made the request. Required.""" + justification: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The justification for making the initiate request.""" + + @overload + def __init__( + self, + *, + virtual_machines: list["_models.JitNetworkAccessRequestVirtualMachine"], + start_time_utc: datetime.datetime, + requestor: str, + justification: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class JitNetworkAccessRequestPort(_Model): + """JitNetworkAccessRequestPort. + + :ivar number: Required. + :vartype number: int + :ivar allowed_source_address_prefix: Mutually exclusive with the "allowedSourceAddressPrefixes" + parameter. Should be an IP address or CIDR, for example "192.168.0.3" or "192.168.0.0/16". + :vartype allowed_source_address_prefix: str + :ivar allowed_source_address_prefixes: Mutually exclusive with the "allowedSourceAddressPrefix" + parameter. + :vartype allowed_source_address_prefixes: list[str] + :ivar end_time_utc: The date & time at which the request ends in UTC. Required. + :vartype end_time_utc: ~datetime.datetime + :ivar status: The status of the port. Required. Known values are: "Revoked" and "Initiated". + :vartype status: str or ~azure.mgmt.security.models.StatusEnum + :ivar status_reason: A description of why the ``status`` has its value. Required. Known values + are: "Expired", "UserRequested", and "NewerRequestInitiated". + :vartype status_reason: str or ~azure.mgmt.security.models.StatusReason + :ivar mapped_port: The port which is mapped to this port's ``number`` in the Azure Firewall, if + applicable. + :vartype mapped_port: int + """ + + number: int = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Required.""" + allowed_source_address_prefix: Optional[str] = rest_field( + name="allowedSourceAddressPrefix", visibility=["read", "create", "update", "delete", "query"] + ) + """Mutually exclusive with the \"allowedSourceAddressPrefixes\" parameter. Should be an IP address + or CIDR, for example \"192.168.0.3\" or \"192.168.0.0/16\".""" + allowed_source_address_prefixes: Optional[list[str]] = rest_field( + name="allowedSourceAddressPrefixes", visibility=["read", "create", "update", "delete", "query"] + ) + """Mutually exclusive with the \"allowedSourceAddressPrefix\" parameter.""" + end_time_utc: datetime.datetime = rest_field( + name="endTimeUtc", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """The date & time at which the request ends in UTC. Required.""" + status: Union[str, "_models.StatusEnum"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The status of the port. Required. Known values are: \"Revoked\" and \"Initiated\".""" + status_reason: Union[str, "_models.StatusReason"] = rest_field( + name="statusReason", visibility=["read", "create", "update", "delete", "query"] + ) + """A description of why the ``status`` has its value. Required. Known values are: \"Expired\", + \"UserRequested\", and \"NewerRequestInitiated\".""" + mapped_port: Optional[int] = rest_field( + name="mappedPort", visibility=["read", "create", "update", "delete", "query"] + ) + """The port which is mapped to this port's ``number`` in the Azure Firewall, if applicable.""" + + @overload + def __init__( + self, + *, + number: int, + end_time_utc: datetime.datetime, + status: Union[str, "_models.StatusEnum"], + status_reason: Union[str, "_models.StatusReason"], + allowed_source_address_prefix: Optional[str] = None, + allowed_source_address_prefixes: Optional[list[str]] = None, + mapped_port: Optional[int] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class JitNetworkAccessRequestVirtualMachine(_Model): + """JitNetworkAccessRequestVirtualMachine. + + :ivar id: Resource ID of the virtual machine that is linked to this policy. Required. + :vartype id: str + :ivar ports: The ports that were opened for the virtual machine. Required. + :vartype ports: list[~azure.mgmt.security.models.JitNetworkAccessRequestPort] + """ + + id: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource ID of the virtual machine that is linked to this policy. Required.""" + ports: list["_models.JitNetworkAccessRequestPort"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The ports that were opened for the virtual machine. Required.""" + + @overload + def __init__( + self, + *, + id: str, # pylint: disable=redefined-builtin + ports: list["_models.JitNetworkAccessRequestPort"], + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Label(_Model): + """Microsoft information protection sensitivity label. + + :ivar name: The display name of the label. + :vartype name: str + :ivar id: The ID of the label. + :vartype id: str + :ivar order: Labels are ordered by sensitivity level. The higher the order of the label, the + more sensitive it is. + :vartype order: float + """ + + name: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The display name of the label.""" + id: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The ID of the label.""" + order: Optional[float] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Labels are ordered by sensitivity level. The higher the order of the label, the more sensitive + it is.""" + + @overload + def __init__( + self, + *, + name: Optional[str] = None, + id: Optional[str] = None, # pylint: disable=redefined-builtin + order: Optional[float] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class LogAnalyticsIdentifier(ResourceIdentifier, discriminator="LogAnalytics"): + """Represents a Log Analytics workspace scope identifier. + + :ivar workspace_id: The LogAnalytics workspace id that stores this alert. + :vartype workspace_id: str + :ivar workspace_subscription_id: The azure subscription id for the LogAnalytics workspace + storing this alert. + :vartype workspace_subscription_id: str + :ivar workspace_resource_group: The azure resource group for the LogAnalytics workspace storing + this alert. + :vartype workspace_resource_group: str + :ivar agent_id: (optional) The LogAnalytics agent id reporting the event that this alert is + based on. + :vartype agent_id: str + :ivar type: There can be multiple identifiers of different type per alert, this field specify + the identifier type. Required. LogAnalytics. + :vartype type: str or ~azure.mgmt.security.models.LOG_ANALYTICS + """ + + workspace_id: Optional[str] = rest_field(name="workspaceId", visibility=["read"]) + """The LogAnalytics workspace id that stores this alert.""" + workspace_subscription_id: Optional[str] = rest_field(name="workspaceSubscriptionId", visibility=["read"]) + """The azure subscription id for the LogAnalytics workspace storing this alert.""" + workspace_resource_group: Optional[str] = rest_field(name="workspaceResourceGroup", visibility=["read"]) + """The azure resource group for the LogAnalytics workspace storing this alert.""" + agent_id: Optional[str] = rest_field(name="agentId", visibility=["read"]) + """(optional) The LogAnalytics agent id reporting the event that this alert is based on.""" + type: Literal[ResourceIdentifierType.LOG_ANALYTICS] = rest_discriminator(name="type", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """There can be multiple identifiers of different type per alert, this field specify the + identifier type. Required. LogAnalytics.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.type = ResourceIdentifierType.LOG_ANALYTICS # type: ignore + + +class MalwareScan(_Model): + """Describes the state of a malware scan operation. + + :ivar properties: + :vartype properties: ~azure.mgmt.security.models.MalwareScanProperties + """ + + properties: Optional["_models.MalwareScanProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + + @overload + def __init__( + self, + *, + properties: Optional["_models.MalwareScanProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class MalwareScanningProperties(_Model): + """Properties of Malware Scanning. + + :ivar on_upload: Properties of On Upload malware scanning. + :vartype on_upload: ~azure.mgmt.security.models.OnUploadProperties + :ivar scan_results_event_grid_topic_resource_id: Optional. Resource id of an Event Grid Topic + to send scan results to. + :vartype scan_results_event_grid_topic_resource_id: str + :ivar blob_scan_results_options: Optional. Write scan result on BlobIndexTags by default. Known + values are: "BlobIndexTags" and "None". + :vartype blob_scan_results_options: str or ~azure.mgmt.security.models.BlobScanResultsOptions + :ivar automated_response: Optional. Specifies the automated response action to take when + malware is detected. Known values are: "None" and "BlobSoftDelete". + :vartype automated_response: str or ~azure.mgmt.security.models.AutomatedResponseType + :ivar operation_status: Upon failure or partial success. Additional data describing Malware + Scanning enable/disable operation. + :vartype operation_status: ~azure.mgmt.security.models.OperationStatus + """ + + on_upload: Optional["_models.OnUploadProperties"] = rest_field( + name="onUpload", visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of On Upload malware scanning.""" + scan_results_event_grid_topic_resource_id: Optional[str] = rest_field( + name="scanResultsEventGridTopicResourceId", visibility=["read", "create", "update", "delete", "query"] + ) + """Optional. Resource id of an Event Grid Topic to send scan results to.""" + blob_scan_results_options: Optional[Union[str, "_models.BlobScanResultsOptions"]] = rest_field( + name="blobScanResultsOptions", visibility=["read", "create", "update", "delete", "query"] + ) + """Optional. Write scan result on BlobIndexTags by default. Known values are: \"BlobIndexTags\" + and \"None\".""" + automated_response: Optional[Union[str, "_models.AutomatedResponseType"]] = rest_field( + name="automatedResponse", visibility=["read", "create", "update", "delete", "query"] + ) + """Optional. Specifies the automated response action to take when malware is detected. Known + values are: \"None\" and \"BlobSoftDelete\".""" + operation_status: Optional["_models.OperationStatus"] = rest_field(name="operationStatus", visibility=["read"]) + """Upon failure or partial success. Additional data describing Malware Scanning enable/disable + operation.""" + + @overload + def __init__( + self, + *, + on_upload: Optional["_models.OnUploadProperties"] = None, + scan_results_event_grid_topic_resource_id: Optional[str] = None, + blob_scan_results_options: Optional[Union[str, "_models.BlobScanResultsOptions"]] = None, + automated_response: Optional[Union[str, "_models.AutomatedResponseType"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class MalwareScanProperties(_Model): + """MalwareScanProperties. + + :ivar scan_id: The identifier of the scan. + :vartype scan_id: str + :ivar scan_status: A status code of the scan operation. + :vartype scan_status: str + :ivar scan_status_message: A description of the status of the scan. + :vartype scan_status_message: str + :ivar scan_start_time: The time at which the scan had been initiated. + :vartype scan_start_time: str + :ivar scan_end_time: The time at which the scan has ended. Only available for a scan which has + terminated. + :vartype scan_end_time: str + :ivar scan_summary: A summary of the scan results. + :vartype scan_summary: ~azure.mgmt.security.models.ScanSummary + """ + + scan_id: Optional[str] = rest_field(name="scanId", visibility=["read", "create", "update", "delete", "query"]) + """The identifier of the scan.""" + scan_status: Optional[str] = rest_field( + name="scanStatus", visibility=["read", "create", "update", "delete", "query"] + ) + """A status code of the scan operation.""" + scan_status_message: Optional[str] = rest_field( + name="scanStatusMessage", visibility=["read", "create", "update", "delete", "query"] + ) + """A description of the status of the scan.""" + scan_start_time: Optional[str] = rest_field( + name="scanStartTime", visibility=["read", "create", "update", "delete", "query"] + ) + """The time at which the scan had been initiated.""" + scan_end_time: Optional[str] = rest_field( + name="scanEndTime", visibility=["read", "create", "update", "delete", "query"] + ) + """The time at which the scan has ended. Only available for a scan which has terminated.""" + scan_summary: Optional["_models.ScanSummary"] = rest_field( + name="scanSummary", visibility=["read", "create", "update", "delete", "query"] + ) + """A summary of the scan results.""" + + @overload + def __init__( + self, + *, + scan_id: Optional[str] = None, + scan_status: Optional[str] = None, + scan_status_message: Optional[str] = None, + scan_start_time: Optional[str] = None, + scan_end_time: Optional[str] = None, + scan_summary: Optional["_models.ScanSummary"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class MdeOnboardingData(ProxyResource): + """The resource of the configuration or data needed to onboard the machine to MDE. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Properties of the MDE configuration or data parameter needed to onboard the + machine to MDE. + :vartype properties: ~azure.mgmt.security.models.MdeOnboardingDataProperties + """ + + properties: Optional["_models.MdeOnboardingDataProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of the MDE configuration or data parameter needed to onboard the machine to MDE.""" + + __flattened_items = ["onboarding_package_windows", "onboarding_package_linux"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.MdeOnboardingDataProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class MdeOnboardingDataProperties(_Model): + """Properties of the MDE configuration or data parameter needed to onboard the machine to MDE. + + :ivar onboarding_package_windows: The onboarding package used to onboard Windows machines to + MDE, coded in base64. This can also be used for onboarding using the dedicated VM Extension. + :vartype onboarding_package_windows: bytes + :ivar onboarding_package_linux: The onboarding package used to onboard Linux machines to MDE, + coded in base64. This can also be used for onboarding using the dedicated VM Extension. + :vartype onboarding_package_linux: bytes + """ + + onboarding_package_windows: Optional[bytes] = rest_field( + name="onboardingPackageWindows", visibility=["read", "create", "update", "delete", "query"], format="base64" + ) + """The onboarding package used to onboard Windows machines to MDE, coded in base64. This can also + be used for onboarding using the dedicated VM Extension.""" + onboarding_package_linux: Optional[bytes] = rest_field( + name="onboardingPackageLinux", visibility=["read", "create", "update", "delete", "query"], format="base64" + ) + """The onboarding package used to onboard Linux machines to MDE, coded in base64. This can also be + used for onboarding using the dedicated VM Extension.""" + + @overload + def __init__( + self, + *, + onboarding_package_windows: Optional[bytes] = None, + onboarding_package_linux: Optional[bytes] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class NotificationsSource(_Model): + """A valid notification source type. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + NotificationsSourceAlert, NotificationsSourceAttackPath + + :ivar source_type: The source type that will trigger the notification. Required. Known values + are: "Alert" and "AttackPath". + :vartype source_type: str or ~azure.mgmt.security.models.SourceType + """ + + __mapping__: dict[str, _Model] = {} + source_type: str = rest_discriminator(name="sourceType", visibility=["read", "create", "update", "delete", "query"]) + """The source type that will trigger the notification. Required. Known values are: \"Alert\" and + \"AttackPath\".""" + + @overload + def __init__( + self, + *, + source_type: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class NotificationsSourceAlert(NotificationsSource, discriminator="Alert"): + """Alert notification source. + + :ivar minimal_severity: Defines the minimal alert severity which will be sent as email + notifications. Known values are: "High", "Medium", and "Low". + :vartype minimal_severity: str or ~azure.mgmt.security.models.MinimalSeverity + :ivar source_type: The source type that will trigger the notification. Required. Alert. + :vartype source_type: str or ~azure.mgmt.security.models.ALERT + """ + + minimal_severity: Optional[Union[str, "_models.MinimalSeverity"]] = rest_field( + name="minimalSeverity", visibility=["read", "create", "update", "delete", "query"] + ) + """Defines the minimal alert severity which will be sent as email notifications. Known values are: + \"High\", \"Medium\", and \"Low\".""" + source_type: Literal[SourceType.ALERT] = rest_discriminator(name="sourceType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The source type that will trigger the notification. Required. Alert.""" + + @overload + def __init__( + self, + *, + minimal_severity: Optional[Union[str, "_models.MinimalSeverity"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.source_type = SourceType.ALERT # type: ignore + + +class NotificationsSourceAttackPath(NotificationsSource, discriminator="AttackPath"): + """Attack path notification source. + + :ivar minimal_risk_level: Defines the minimal attach path risk level which will be sent as + email notifications. Known values are: "Critical", "High", "Medium", and "Low". + :vartype minimal_risk_level: str or ~azure.mgmt.security.models.MinimalRiskLevel + :ivar source_type: The source type that will trigger the notification. Required. AttackPath. + :vartype source_type: str or ~azure.mgmt.security.models.ATTACK_PATH + """ + + minimal_risk_level: Optional[Union[str, "_models.MinimalRiskLevel"]] = rest_field( + name="minimalRiskLevel", visibility=["read", "create", "update", "delete", "query"] + ) + """Defines the minimal attach path risk level which will be sent as email notifications. Known + values are: \"Critical\", \"High\", \"Medium\", and \"Low\".""" + source_type: Literal[SourceType.ATTACK_PATH] = rest_discriminator(name="sourceType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The source type that will trigger the notification. Required. AttackPath.""" + + @overload + def __init__( + self, + *, + minimal_risk_level: Optional[Union[str, "_models.MinimalRiskLevel"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.source_type = SourceType.ATTACK_PATH # type: ignore + + +class OnUploadFilters(_Model): + """Optional. Determine which blobs get scanned by On Upload malware scanning. An Or operation is + performed between each filter type. + + :ivar exclude_blobs_with_prefix: Optional. A list of prefixes to exclude from on-upload malware + scanning. Format: ``container-name/blob-name`` (start with the container name; do not include + the storage account name). Exclude entire containers: Use prefix of container names you want to + exclude without a trailing ``/``. Exclude a single container: Add a trailing slash ``/`` after + the container name to avoid excluding other containers with similar prefixes. + :vartype exclude_blobs_with_prefix: list[str] + :ivar exclude_blobs_with_suffix: Optional. A list of suffixes to exclude from on-upload malware + scanning. Suffixes match only the end of blob names, and should be used for file extensions or + blob name endings only. + :vartype exclude_blobs_with_suffix: list[str] + :ivar exclude_blobs_larger_than: Optional. Specifies the maximum size in bytes for blobs to be + scanned. This parameter accepts a single positive integer value. Blobs larger than this value + will be excluded from scanning. + :vartype exclude_blobs_larger_than: any + """ + + exclude_blobs_with_prefix: Optional[list[str]] = rest_field( + name="excludeBlobsWithPrefix", visibility=["read", "create", "update", "delete", "query"] + ) + """Optional. A list of prefixes to exclude from on-upload malware scanning. Format: + ``container-name/blob-name`` (start with the container name; do not include the storage account + name). Exclude entire containers: Use prefix of container names you want to exclude without a + trailing ``/``. Exclude a single container: Add a trailing slash ``/`` after the container name + to avoid excluding other containers with similar prefixes.""" + exclude_blobs_with_suffix: Optional[list[str]] = rest_field( + name="excludeBlobsWithSuffix", visibility=["read", "create", "update", "delete", "query"] + ) + """Optional. A list of suffixes to exclude from on-upload malware scanning. Suffixes match only + the end of blob names, and should be used for file extensions or blob name endings only.""" + exclude_blobs_larger_than: Optional[Any] = rest_field( + name="excludeBlobsLargerThan", visibility=["read", "create", "update", "delete", "query"] + ) + """Optional. Specifies the maximum size in bytes for blobs to be scanned. This parameter accepts a + single positive integer value. Blobs larger than this value will be excluded from scanning.""" + + @overload + def __init__( + self, + *, + exclude_blobs_with_prefix: Optional[list[str]] = None, + exclude_blobs_with_suffix: Optional[list[str]] = None, + exclude_blobs_larger_than: Optional[Any] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class OnUploadProperties(_Model): + """Properties of On Upload malware scanning. + + :ivar is_enabled: Indicates whether On Upload malware scanning should be enabled. + :vartype is_enabled: bool + :ivar cap_gb_per_month: Defines the max GB to be scanned per Month. Set to -1 if no capping is + needed. If not specified, the default value is -1. + :vartype cap_gb_per_month: int + :ivar filters: Optional. Determine which blobs get scanned by On Upload malware scanning. An Or + operation is performed between each filter type. + :vartype filters: ~azure.mgmt.security.models.OnUploadFilters + """ + + is_enabled: Optional[bool] = rest_field( + name="isEnabled", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether On Upload malware scanning should be enabled.""" + cap_gb_per_month: Optional[int] = rest_field( + name="capGBPerMonth", visibility=["read", "create", "update", "delete", "query"] + ) + """Defines the max GB to be scanned per Month. Set to -1 if no capping is needed. If not + specified, the default value is -1.""" + filters: Optional["_models.OnUploadFilters"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Optional. Determine which blobs get scanned by On Upload malware scanning. An Or operation is + performed between each filter type.""" + + @overload + def __init__( + self, + *, + is_enabled: Optional[bool] = None, + cap_gb_per_month: Optional[int] = None, + filters: Optional["_models.OnUploadFilters"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Operation(_Model): + """REST API Operation. + + :ivar name: The name of the operation, as per Resource-Based Access Control (RBAC). Examples: + "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action". + :vartype name: str + :ivar is_data_action: Whether the operation applies to data-plane. This is "true" for + data-plane operations and "false" for Azure Resource Manager/control-plane operations. + :vartype is_data_action: bool + :ivar display: Localized display information for this particular operation. + :vartype display: ~azure.mgmt.security.models.OperationDisplay + :ivar origin: The intended executor of the operation; as in Resource Based Access Control + (RBAC) and audit logs UX. Default value is "user,system". Known values are: "user", "system", + and "user,system". + :vartype origin: str or ~azure.mgmt.security.models.Origin + :ivar action_type: Extensible enum. Indicates the action type. "Internal" refers to actions + that are for internal only APIs. "Internal" + :vartype action_type: str or ~azure.mgmt.security.models.ArmActionType + """ + + name: Optional[str] = rest_field(visibility=["read"]) + """The name of the operation, as per Resource-Based Access Control (RBAC). Examples: + \"Microsoft.Compute/virtualMachines/write\", + \"Microsoft.Compute/virtualMachines/capture/action\".""" + is_data_action: Optional[bool] = rest_field(name="isDataAction", visibility=["read"]) + """Whether the operation applies to data-plane. This is \"true\" for data-plane operations and + \"false\" for Azure Resource Manager/control-plane operations.""" + display: Optional["_models.OperationDisplay"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Localized display information for this particular operation.""" + origin: Optional[Union[str, "_models.Origin"]] = rest_field(visibility=["read"]) + """The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit + logs UX. Default value is \"user,system\". Known values are: \"user\", \"system\", and + \"user,system\".""" + action_type: Optional[Union[str, "_models.ArmActionType"]] = rest_field(name="actionType", visibility=["read"]) + """Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for + internal only APIs. \"Internal\"""" + + @overload + def __init__( + self, + *, + display: Optional["_models.OperationDisplay"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class OperationDisplay(_Model): + """Localized display information for an operation. + + :ivar provider: The localized friendly form of the resource provider name, e.g. "Microsoft + Monitoring Insights" or "Microsoft Compute". + :vartype provider: str + :ivar resource: The localized friendly name of the resource type related to this operation. + E.g. "Virtual Machines" or "Job Schedule Collections". + :vartype resource: str + :ivar operation: The concise, localized friendly name for the operation; suitable for + dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine". + :vartype operation: str + :ivar description: The short, localized friendly description of the operation; suitable for + tool tips and detailed views. + :vartype description: str + """ + + provider: Optional[str] = rest_field(visibility=["read"]) + """The localized friendly form of the resource provider name, e.g. \"Microsoft Monitoring + Insights\" or \"Microsoft Compute\".""" + resource: Optional[str] = rest_field(visibility=["read"]) + """The localized friendly name of the resource type related to this operation. E.g. \"Virtual + Machines\" or \"Job Schedule Collections\".""" + operation: Optional[str] = rest_field(visibility=["read"]) + """The concise, localized friendly name for the operation; suitable for dropdowns. E.g. \"Create + or Update Virtual Machine\", \"Restart Virtual Machine\".""" + description: Optional[str] = rest_field(visibility=["read"]) + """The short, localized friendly description of the operation; suitable for tool tips and detailed + views.""" + + +class OperationResultAutoGenerated(_Model): + """Long run operation status of governance rule over a given scope. + + :ivar status: The status of the long run operation result of governance rule. Known values are: + "Succeeded", "Failed", and "Canceled". + :vartype status: str or ~azure.mgmt.security.models.OperationResultStatus + """ + + status: Optional[Union[str, "_models.OperationResultStatus"]] = rest_field(visibility=["read"]) + """The status of the long run operation result of governance rule. Known values are: + \"Succeeded\", \"Failed\", and \"Canceled\".""" + + +class OperationStatus(_Model): + """A status describing the success/failure of the enablement/disablement operation. + + :ivar code: The operation status code. + :vartype code: str + :ivar message: Additional information regarding the success/failure of the operation. + :vartype message: str + """ + + code: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The operation status code.""" + message: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Additional information regarding the success/failure of the operation.""" + + @overload + def __init__( + self, + *, + code: Optional[str] = None, + message: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class OperationStatusResult(_Model): + """The current status of an async operation. + + :ivar id: Fully qualified ID for the async operation. + :vartype id: str + :ivar name: Name of the async operation. + :vartype name: str + :ivar status: Operation status. Required. + :vartype status: str + :ivar percent_complete: Percent of the operation that is complete. + :vartype percent_complete: float + :ivar start_time: The start time of the operation. + :vartype start_time: ~datetime.datetime + :ivar end_time: The end time of the operation. + :vartype end_time: ~datetime.datetime + :ivar operations: The operations list. + :vartype operations: list[~azure.mgmt.security.models.OperationStatusResult] + :ivar error: If present, details of the operation error. + :vartype error: ~azure.mgmt.security.models.ErrorDetail + """ + + id: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Fully qualified ID for the async operation.""" + name: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Name of the async operation.""" + status: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Operation status. Required.""" + percent_complete: Optional[float] = rest_field( + name="percentComplete", visibility=["read", "create", "update", "delete", "query"] + ) + """Percent of the operation that is complete.""" + start_time: Optional[datetime.datetime] = rest_field( + name="startTime", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """The start time of the operation.""" + end_time: Optional[datetime.datetime] = rest_field( + name="endTime", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """The end time of the operation.""" + operations: Optional[list["_models.OperationStatusResult"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The operations list.""" + error: Optional["_models.ErrorDetail"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """If present, details of the operation error.""" + + @overload + def __init__( + self, + *, + status: str, + id: Optional[str] = None, # pylint: disable=redefined-builtin + name: Optional[str] = None, + percent_complete: Optional[float] = None, + start_time: Optional[datetime.datetime] = None, + end_time: Optional[datetime.datetime] = None, + operations: Optional[list["_models.OperationStatusResult"]] = None, + error: Optional["_models.ErrorDetail"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class PartialAssessmentProperties(_Model): + """Describes properties of an assessment as related to the standard. + + :ivar assessment_key: The assessment key. + :vartype assessment_key: str + """ + + assessment_key: Optional[str] = rest_field( + name="assessmentKey", visibility=["read", "create", "update", "delete", "query"] + ) + """The assessment key.""" + + @overload + def __init__( + self, + *, + assessment_key: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Pricing(ExtensionResource): + """Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard + tier offers advanced security capabilities, while the free tier offers basic security features. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Pricing data. + :vartype properties: ~azure.mgmt.security.models.PricingProperties + """ + + properties: Optional["_models.PricingProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Pricing data.""" + + __flattened_items = [ + "pricing_tier", + "sub_plan", + "free_trial_remaining_time", + "enablement_time", + "enforce", + "inherited", + "inherited_from", + "resources_coverage_status", + "extensions", + "deprecated", + "replaced_by", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.PricingProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class PricingProperties(_Model): + """Pricing properties for the relevant scope. + + :ivar pricing_tier: Indicates whether the Defender plan is enabled on the selected scope. + Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard + tier offers advanced security capabilities, while the free tier offers basic security features. + Required. Known values are: "Free" and "Standard". + :vartype pricing_tier: str or ~azure.mgmt.security.models.PricingTier + :ivar sub_plan: The sub-plan selected for a Standard pricing configuration, when more than one + sub-plan is available. Each sub-plan enables a set of security features. When not specified, + full plan is applied. For VirtualMachines plan, available sub plans are 'P1' & 'P2', where for + resource level only 'P1' sub plan is supported. + :vartype sub_plan: str + :ivar free_trial_remaining_time: The duration left for the subscriptions free trial period - in + ISO 8601 format (e.g. P3Y6M4DT12H30M5S). + :vartype free_trial_remaining_time: ~datetime.timedelta + :ivar enablement_time: Optional. If ``pricingTier`` is ``Standard`` then this property holds + the date of the last time the ``pricingTier`` was set to ``Standard``, when available (e.g + 2023-03-01T12:42:42.1921106Z). + :vartype enablement_time: ~datetime.datetime + :ivar enforce: If set to "False", it allows the descendants of this scope to override the + pricing configuration set on this scope (allows setting inherited="False"). If set to "True", + it prevents overrides and forces this pricing configuration on all the descendants of this + scope. This field is only available for subscription-level pricing. Known values are: "False" + and "True". + :vartype enforce: str or ~azure.mgmt.security.models.Enforce + :ivar inherited: "inherited" = "True" indicates that the current scope inherits its pricing + configuration from its parent. The ID of the parent scope that provides the inherited + configuration is displayed in the "inheritedFrom" field. On the other hand, "inherited" = + "False" indicates that the current scope has its own pricing configuration explicitly set, and + does not inherit from its parent. This field is read only and available only for resource-level + pricing. Known values are: "True" and "False". + :vartype inherited: str or ~azure.mgmt.security.models.Inherited + :ivar inherited_from: The id of the scope inherited from. "Null" if not inherited. This field + is only available for resource-level pricing. + :vartype inherited_from: str + :ivar resources_coverage_status: This field is available for subscription-level only, and + reflects the coverage status of the resources under the subscription. Please note: The + "pricingTier" field reflects the plan status of the subscription. However, since the plan + status can also be defined at the resource level, there might be misalignment between the + subscription's plan status and the resource status. This field helps indicate the coverage + status of the resources. Known values are: "FullyCovered", "PartiallyCovered", and + "NotCovered". + :vartype resources_coverage_status: str or ~azure.mgmt.security.models.ResourcesCoverageStatus + :ivar extensions: Optional. List of extensions offered under a plan. + :vartype extensions: list[~azure.mgmt.security.models.Extension] + :ivar deprecated: Optional. True if the plan is deprecated. If there are replacing plans they + will appear in ``replacedBy`` property. + :vartype deprecated: bool + :ivar replaced_by: Optional. List of plans that replace this plan. This property exists only if + this plan is deprecated. + :vartype replaced_by: list[str] + """ + + pricing_tier: Union[str, "_models.PricingTier"] = rest_field( + name="pricingTier", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether the Defender plan is enabled on the selected scope. Microsoft Defender for + Cloud is provided in two pricing tiers: free and standard. The standard tier offers advanced + security capabilities, while the free tier offers basic security features. Required. Known + values are: \"Free\" and \"Standard\".""" + sub_plan: Optional[str] = rest_field(name="subPlan", visibility=["read", "create", "update", "delete", "query"]) + """The sub-plan selected for a Standard pricing configuration, when more than one sub-plan is + available. Each sub-plan enables a set of security features. When not specified, full plan is + applied. For VirtualMachines plan, available sub plans are 'P1' & 'P2', where for resource + level only 'P1' sub plan is supported.""" + free_trial_remaining_time: Optional[datetime.timedelta] = rest_field( + name="freeTrialRemainingTime", visibility=["read"] + ) + """The duration left for the subscriptions free trial period - in ISO 8601 format (e.g. + P3Y6M4DT12H30M5S).""" + enablement_time: Optional[datetime.datetime] = rest_field( + name="enablementTime", visibility=["read"], format="rfc3339" + ) + """Optional. If ``pricingTier`` is ``Standard`` then this property holds the date of the last time + the ``pricingTier`` was set to ``Standard``, when available (e.g 2023-03-01T12:42:42.1921106Z).""" + enforce: Optional[Union[str, "_models.Enforce"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """If set to \"False\", it allows the descendants of this scope to override the pricing + configuration set on this scope (allows setting inherited=\"False\"). If set to \"True\", it + prevents overrides and forces this pricing configuration on all the descendants of this scope. + This field is only available for subscription-level pricing. Known values are: \"False\" and + \"True\".""" + inherited: Optional[Union[str, "_models.Inherited"]] = rest_field(visibility=["read"]) + """\"inherited\" = \"True\" indicates that the current scope inherits its pricing configuration + from its parent. The ID of the parent scope that provides the inherited configuration is + displayed in the \"inheritedFrom\" field. On the other hand, \"inherited\" = \"False\" + indicates that the current scope has its own pricing configuration explicitly set, and does not + inherit from its parent. This field is read only and available only for resource-level pricing. + Known values are: \"True\" and \"False\".""" + inherited_from: Optional[str] = rest_field(name="inheritedFrom", visibility=["read"]) + """The id of the scope inherited from. \"Null\" if not inherited. This field is only available for + resource-level pricing.""" + resources_coverage_status: Optional[Union[str, "_models.ResourcesCoverageStatus"]] = rest_field( + name="resourcesCoverageStatus", visibility=["read"] + ) + """This field is available for subscription-level only, and reflects the coverage status of the + resources under the subscription. Please note: The \"pricingTier\" field reflects the plan + status of the subscription. However, since the plan status can also be defined at the resource + level, there might be misalignment between the subscription's plan status and the resource + status. This field helps indicate the coverage status of the resources. Known values are: + \"FullyCovered\", \"PartiallyCovered\", and \"NotCovered\".""" + extensions: Optional[list["_models.Extension"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Optional. List of extensions offered under a plan.""" + deprecated: Optional[bool] = rest_field(visibility=["read"]) + """Optional. True if the plan is deprecated. If there are replacing plans they will appear in + ``replacedBy`` property.""" + replaced_by: Optional[list[str]] = rest_field(name="replacedBy", visibility=["read"]) + """Optional. List of plans that replace this plan. This property exists only if this plan is + deprecated.""" + + @overload + def __init__( + self, + *, + pricing_tier: Union[str, "_models.PricingTier"], + sub_plan: Optional[str] = None, + enforce: Optional[Union[str, "_models.Enforce"]] = None, + extensions: Optional[list["_models.Extension"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Private_link_parameters(_Model): + """Private_link_parameters.""" + + +class PrivateEndpoint(_Model): + """The private endpoint resource. + + :ivar id: The resource identifier of the private endpoint. + :vartype id: str + """ + + id: Optional[str] = rest_field(visibility=["read"]) + """The resource identifier of the private endpoint.""" + + +class PrivateEndpointConnection(Resource): + """The private endpoint connection resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Resource properties. + :vartype properties: ~azure.mgmt.security.models.PrivateEndpointConnectionProperties + """ + + properties: Optional["_models.PrivateEndpointConnectionProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Resource properties.""" + + __flattened_items = ["private_endpoint", "private_link_service_connection_state", "provisioning_state"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.PrivateEndpointConnectionProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class PrivateEndpointConnectionProperties(_Model): + """Properties of the private endpoint connection. + + :ivar private_endpoint: The private endpoint resource. + :vartype private_endpoint: ~azure.mgmt.security.models.PrivateEndpoint + :ivar private_link_service_connection_state: A collection of information about the state of the + connection between service consumer and provider. Required. + :vartype private_link_service_connection_state: + ~azure.mgmt.security.models.PrivateLinkServiceConnectionState + :ivar provisioning_state: The provisioning state of the private endpoint connection resource. + Known values are: "Succeeded", "Creating", "Deleting", and "Failed". + :vartype provisioning_state: str or + ~azure.mgmt.security.models.PrivateEndpointConnectionProvisioningState + """ + + private_endpoint: Optional["_models.PrivateEndpoint"] = rest_field( + name="privateEndpoint", visibility=["read", "create", "update", "delete", "query"] + ) + """The private endpoint resource.""" + private_link_service_connection_state: "_models.PrivateLinkServiceConnectionState" = rest_field( + name="privateLinkServiceConnectionState", visibility=["read", "create", "update", "delete", "query"] + ) + """A collection of information about the state of the connection between service consumer and + provider. Required.""" + provisioning_state: Optional[Union[str, "_models.PrivateEndpointConnectionProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """The provisioning state of the private endpoint connection resource. Known values are: + \"Succeeded\", \"Creating\", \"Deleting\", and \"Failed\".""" + + @overload + def __init__( + self, + *, + private_link_service_connection_state: "_models.PrivateLinkServiceConnectionState", + private_endpoint: Optional["_models.PrivateEndpoint"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class PrivateLinkGroupResource(ProxyResource): + """A private link group resource that describes a grouping for the private link. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Resource properties. + :vartype properties: ~azure.mgmt.security.models.PrivateLinkResourceProperties + """ + + properties: Optional["_models.PrivateLinkResourceProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Resource properties.""" + + __flattened_items = ["group_id", "required_members", "required_zone_names"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.PrivateLinkResourceProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class PrivateLinkProperties(_Model): + """Properties of a private link resource. These properties control the behavior and configuration + of private endpoint connectivity to Defender services. + + :ivar provisioning_state: The current provisioning state of the private link resource. + Indicates whether the resource is being created, updated, deleted, or has completed + successfully. Known values are: "Succeeded", "Creating", "Updating", "Deleting", "Failed", + "Canceled", and "InProgress". + :vartype provisioning_state: str or ~azure.mgmt.security.models.ProvisioningState + :ivar private_endpoint_connections: List of private endpoint connections associated with this + private link. Each connection represents a private endpoint from a customer's virtual network. + :vartype private_endpoint_connections: + list[~azure.mgmt.security.models.PrivateEndpointConnection] + :ivar private_link_resources: List of private link resources available for connection. For + Defender services, this typically includes the 'containers' group with 'api' and regional data + endpoints. + :vartype private_link_resources: list[~azure.mgmt.security.models.PrivateLinkGroupResource] + :ivar public_network_access: This determines if traffic is allowed over public network. By + default it is disabled. Known values are: "Enabled" and "Disabled". + :vartype public_network_access: str or ~azure.mgmt.security.models.PublicNetworkAccess + """ + + provisioning_state: Optional[Union[str, "_models.ProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """The current provisioning state of the private link resource. Indicates whether the resource is + being created, updated, deleted, or has completed successfully. Known values are: + \"Succeeded\", \"Creating\", \"Updating\", \"Deleting\", \"Failed\", \"Canceled\", and + \"InProgress\".""" + private_endpoint_connections: Optional[list["_models.PrivateEndpointConnection"]] = rest_field( + name="privateEndpointConnections", visibility=["read"] + ) + """List of private endpoint connections associated with this private link. Each connection + represents a private endpoint from a customer's virtual network.""" + private_link_resources: Optional[list["_models.PrivateLinkGroupResource"]] = rest_field( + name="privateLinkResources", visibility=["read"] + ) + """List of private link resources available for connection. For Defender services, this typically + includes the 'containers' group with 'api' and regional data endpoints.""" + public_network_access: Optional[Union[str, "_models.PublicNetworkAccess"]] = rest_field( + name="publicNetworkAccess", visibility=["read", "create", "update", "delete", "query"] + ) + """This determines if traffic is allowed over public network. By default it is disabled. Known + values are: \"Enabled\" and \"Disabled\".""" + + @overload + def __init__( + self, + *, + public_network_access: Optional[Union[str, "_models.PublicNetworkAccess"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class TrackedResource(Resource): + """Tracked Resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + """ + + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + location: str = rest_field(visibility=["read", "create"]) + """The geo-location where the resource lives. Required.""" + + @overload + def __init__( + self, + *, + location: str, + tags: Optional[dict[str, str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class PrivateLinkResource(TrackedResource): + """A private link resource that enables secure, private connectivity to Microsoft Defender for + Cloud services. This resource manages the lifecycle of private endpoint connections and + provides the necessary infrastructure for private connectivity. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + :ivar properties: Properties specific to the private link resource. Required. + :vartype properties: ~azure.mgmt.security.models.PrivateLinkProperties + """ + + properties: "_models.PrivateLinkProperties" = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Properties specific to the private link resource. Required.""" + + __flattened_items = [ + "provisioning_state", + "private_endpoint_connections", + "private_link_resources", + "public_network_access", + ] + + @overload + def __init__( + self, + *, + location: str, + properties: "_models.PrivateLinkProperties", + tags: Optional[dict[str, str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class PrivateLinkResourceProperties(_Model): + """Properties of a private link resource. + + :ivar group_id: The private link resource group id. + :vartype group_id: str + :ivar required_members: The private link resource required member names. + :vartype required_members: list[str] + :ivar required_zone_names: The private link resource private link DNS zone name. + :vartype required_zone_names: list[str] + """ + + group_id: Optional[str] = rest_field(name="groupId", visibility=["read"]) + """The private link resource group id.""" + required_members: Optional[list[str]] = rest_field(name="requiredMembers", visibility=["read"]) + """The private link resource required member names.""" + required_zone_names: Optional[list[str]] = rest_field( + name="requiredZoneNames", visibility=["read", "create", "update", "delete", "query"] + ) + """The private link resource private link DNS zone name.""" + + @overload + def __init__( + self, + *, + required_zone_names: Optional[list[str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class PrivateLinkServiceConnectionState(_Model): + """A collection of information about the state of the connection between service consumer and + provider. + + :ivar status: Indicates whether the connection has been Approved/Rejected/Removed by the owner + of the service. Known values are: "Pending", "Approved", and "Rejected". + :vartype status: str or ~azure.mgmt.security.models.PrivateEndpointServiceConnectionStatus + :ivar description: The reason for approval/rejection of the connection. + :vartype description: str + :ivar actions_required: A message indicating if changes on the service provider require any + updates on the consumer. + :vartype actions_required: str + """ + + status: Optional[Union[str, "_models.PrivateEndpointServiceConnectionStatus"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether the connection has been Approved/Rejected/Removed by the owner of the + service. Known values are: \"Pending\", \"Approved\", and \"Rejected\".""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The reason for approval/rejection of the connection.""" + actions_required: Optional[str] = rest_field( + name="actionsRequired", visibility=["read", "create", "update", "delete", "query"] + ) + """A message indicating if changes on the service provider require any updates on the consumer.""" + + @overload + def __init__( + self, + *, + status: Optional[Union[str, "_models.PrivateEndpointServiceConnectionStatus"]] = None, + description: Optional[str] = None, + actions_required: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class PrivateLinkUpdate(_Model): + """Request payload for updating a private link resource. Used in PATCH operations to update + specific mutable properties without affecting the entire resource configuration. + + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + """ + + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + + @overload + def __init__( + self, + *, + tags: Optional[dict[str, str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class QueryCheck(_Model): + """The rule query details. + + :ivar query: The rule query. + :vartype query: str + :ivar expected_result: Expected result. + :vartype expected_result: list[list[str]] + :ivar column_names: Column names of expected result. + :vartype column_names: list[str] + """ + + query: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The rule query.""" + expected_result: Optional[list[list[str]]] = rest_field( + name="expectedResult", visibility=["read", "create", "update", "delete", "query"] + ) + """Expected result.""" + column_names: Optional[list[str]] = rest_field( + name="columnNames", visibility=["read", "create", "update", "delete", "query"] + ) + """Column names of expected result.""" + + @overload + def __init__( + self, + *, + query: Optional[str] = None, + expected_result: Optional[list[list[str]]] = None, + column_names: Optional[list[str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class RecommendationConfigurationProperties(_Model): + """The type of IoT Security recommendation. + + :ivar recommendation_type: The type of IoT Security recommendation. Required. Known values are: + "IoT_ACRAuthentication", "IoT_AgentSendsUnutilizedMessages", "IoT_Baseline", + "IoT_EdgeHubMemOptimize", "IoT_EdgeLoggingOptions", "IoT_InconsistentModuleSettings", + "IoT_InstallAgent", "IoT_IPFilter_DenyAll", "IoT_IPFilter_PermissiveRule", "IoT_OpenPorts", + "IoT_PermissiveFirewallPolicy", "IoT_PermissiveInputFirewallRules", + "IoT_PermissiveOutputFirewallRules", "IoT_PrivilegedDockerOptions", "IoT_SharedCredentials", + and "IoT_VulnerableTLSCipherSuite". + :vartype recommendation_type: str or ~azure.mgmt.security.models.RecommendationType + :ivar name: + :vartype name: str + :ivar status: Recommendation status. When the recommendation status is disabled recommendations + are not generated. Required. Known values are: "Disabled" and "Enabled". + :vartype status: str or ~azure.mgmt.security.models.RecommendationConfigStatus + """ + + recommendation_type: Union[str, "_models.RecommendationType"] = rest_field( + name="recommendationType", visibility=["read", "create", "update", "delete", "query"] + ) + """The type of IoT Security recommendation. Required. Known values are: \"IoT_ACRAuthentication\", + \"IoT_AgentSendsUnutilizedMessages\", \"IoT_Baseline\", \"IoT_EdgeHubMemOptimize\", + \"IoT_EdgeLoggingOptions\", \"IoT_InconsistentModuleSettings\", \"IoT_InstallAgent\", + \"IoT_IPFilter_DenyAll\", \"IoT_IPFilter_PermissiveRule\", \"IoT_OpenPorts\", + \"IoT_PermissiveFirewallPolicy\", \"IoT_PermissiveInputFirewallRules\", + \"IoT_PermissiveOutputFirewallRules\", \"IoT_PrivilegedDockerOptions\", + \"IoT_SharedCredentials\", and \"IoT_VulnerableTLSCipherSuite\".""" + name: Optional[str] = rest_field(visibility=["read"]) + status: Union[str, "_models.RecommendationConfigStatus"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Recommendation status. When the recommendation status is disabled recommendations are not + generated. Required. Known values are: \"Disabled\" and \"Enabled\".""" + + @overload + def __init__( + self, + *, + recommendation_type: Union[str, "_models.RecommendationType"], + status: Union[str, "_models.RecommendationConfigStatus"], + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class RegulatoryComplianceAssessment(ProxyResource): + """Regulatory compliance assessment details and state. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Regulatory compliance assessment data. + :vartype properties: ~azure.mgmt.security.models.RegulatoryComplianceAssessmentProperties + """ + + properties: Optional["_models.RegulatoryComplianceAssessmentProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Regulatory compliance assessment data.""" + + __flattened_items = [ + "description", + "assessment_type", + "assessment_details_link", + "state", + "passed_resources", + "failed_resources", + "skipped_resources", + "unsupported_resources", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.RegulatoryComplianceAssessmentProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class RegulatoryComplianceAssessmentProperties(_Model): + """Regulatory compliance assessment data. + + :ivar description: The description of the regulatory compliance assessment. + :vartype description: str + :ivar assessment_type: The expected type of assessment contained in the AssessmentDetailsLink. + :vartype assessment_type: str + :ivar assessment_details_link: Link to more detailed assessment results data. The response type + will be according to the assessmentType field. + :vartype assessment_details_link: str + :ivar state: Aggregative state based on the assessment's scanned resources states. Known values + are: "Passed", "Failed", "Skipped", "Unsupported", "On", and "Off". + :vartype state: str or ~azure.mgmt.security.models.State + :ivar passed_resources: The given assessment's related resources count with passed state. + :vartype passed_resources: int + :ivar failed_resources: The given assessment's related resources count with failed state. + :vartype failed_resources: int + :ivar skipped_resources: The given assessment's related resources count with skipped state. + :vartype skipped_resources: int + :ivar unsupported_resources: The given assessment's related resources count with unsupported + state. + :vartype unsupported_resources: int + """ + + description: Optional[str] = rest_field(visibility=["read"]) + """The description of the regulatory compliance assessment.""" + assessment_type: Optional[str] = rest_field(name="assessmentType", visibility=["read"]) + """The expected type of assessment contained in the AssessmentDetailsLink.""" + assessment_details_link: Optional[str] = rest_field(name="assessmentDetailsLink", visibility=["read"]) + """Link to more detailed assessment results data. The response type will be according to the + assessmentType field.""" + state: Optional[Union[str, "_models.State"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Aggregative state based on the assessment's scanned resources states. Known values are: + \"Passed\", \"Failed\", \"Skipped\", \"Unsupported\", \"On\", and \"Off\".""" + passed_resources: Optional[int] = rest_field(name="passedResources", visibility=["read"]) + """The given assessment's related resources count with passed state.""" + failed_resources: Optional[int] = rest_field(name="failedResources", visibility=["read"]) + """The given assessment's related resources count with failed state.""" + skipped_resources: Optional[int] = rest_field(name="skippedResources", visibility=["read"]) + """The given assessment's related resources count with skipped state.""" + unsupported_resources: Optional[int] = rest_field(name="unsupportedResources", visibility=["read"]) + """The given assessment's related resources count with unsupported state.""" + + @overload + def __init__( + self, + *, + state: Optional[Union[str, "_models.State"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class RegulatoryComplianceControl(ProxyResource): + """Regulatory compliance control details and state. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Regulatory compliance control data. + :vartype properties: ~azure.mgmt.security.models.RegulatoryComplianceControlProperties + """ + + properties: Optional["_models.RegulatoryComplianceControlProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Regulatory compliance control data.""" + + __flattened_items = ["description", "state", "passed_assessments", "failed_assessments", "skipped_assessments"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.RegulatoryComplianceControlProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class RegulatoryComplianceControlProperties(_Model): + """Regulatory compliance control data. + + :ivar description: The description of the regulatory compliance control. + :vartype description: str + :ivar state: Aggregative state based on the control's supported assessments states. Known + values are: "Passed", "Failed", "Skipped", "Unsupported", "On", and "Off". + :vartype state: str or ~azure.mgmt.security.models.State + :ivar passed_assessments: The number of supported regulatory compliance assessments of the + given control with a passed state. + :vartype passed_assessments: int + :ivar failed_assessments: The number of supported regulatory compliance assessments of the + given control with a failed state. + :vartype failed_assessments: int + :ivar skipped_assessments: The number of supported regulatory compliance assessments of the + given control with a skipped state. + :vartype skipped_assessments: int + """ + + description: Optional[str] = rest_field(visibility=["read"]) + """The description of the regulatory compliance control.""" + state: Optional[Union[str, "_models.State"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Aggregative state based on the control's supported assessments states. Known values are: + \"Passed\", \"Failed\", \"Skipped\", \"Unsupported\", \"On\", and \"Off\".""" + passed_assessments: Optional[int] = rest_field(name="passedAssessments", visibility=["read"]) + """The number of supported regulatory compliance assessments of the given control with a passed + state.""" + failed_assessments: Optional[int] = rest_field(name="failedAssessments", visibility=["read"]) + """The number of supported regulatory compliance assessments of the given control with a failed + state.""" + skipped_assessments: Optional[int] = rest_field(name="skippedAssessments", visibility=["read"]) + """The number of supported regulatory compliance assessments of the given control with a skipped + state.""" + + @overload + def __init__( + self, + *, + state: Optional[Union[str, "_models.State"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class RegulatoryComplianceStandard(ProxyResource): + """Regulatory compliance standard details and state. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Regulatory compliance standard data. + :vartype properties: ~azure.mgmt.security.models.RegulatoryComplianceStandardProperties + """ + + properties: Optional["_models.RegulatoryComplianceStandardProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Regulatory compliance standard data.""" + + __flattened_items = ["state", "passed_controls", "failed_controls", "skipped_controls", "unsupported_controls"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.RegulatoryComplianceStandardProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class RegulatoryComplianceStandardProperties(_Model): + """Regulatory compliance standard data. + + :ivar state: Aggregative state based on the standard's supported controls states. Known values + are: "Passed", "Failed", "Skipped", "Unsupported", "On", and "Off". + :vartype state: str or ~azure.mgmt.security.models.State + :ivar passed_controls: The number of supported regulatory compliance controls of the given + standard with a passed state. + :vartype passed_controls: int + :ivar failed_controls: The number of supported regulatory compliance controls of the given + standard with a failed state. + :vartype failed_controls: int + :ivar skipped_controls: The number of supported regulatory compliance controls of the given + standard with a skipped state. + :vartype skipped_controls: int + :ivar unsupported_controls: The number of regulatory compliance controls of the given standard + which are unsupported by automated assessments. + :vartype unsupported_controls: int + """ + + state: Optional[Union[str, "_models.State"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Aggregative state based on the standard's supported controls states. Known values are: + \"Passed\", \"Failed\", \"Skipped\", \"Unsupported\", \"On\", and \"Off\".""" + passed_controls: Optional[int] = rest_field(name="passedControls", visibility=["read"]) + """The number of supported regulatory compliance controls of the given standard with a passed + state.""" + failed_controls: Optional[int] = rest_field(name="failedControls", visibility=["read"]) + """The number of supported regulatory compliance controls of the given standard with a failed + state.""" + skipped_controls: Optional[int] = rest_field(name="skippedControls", visibility=["read"]) + """The number of supported regulatory compliance controls of the given standard with a skipped + state.""" + unsupported_controls: Optional[int] = rest_field(name="unsupportedControls", visibility=["read"]) + """The number of regulatory compliance controls of the given standard which are unsupported by + automated assessments.""" + + @overload + def __init__( + self, + *, + state: Optional[Union[str, "_models.State"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Remediation(_Model): + """Remediation details. + + :ivar description: Remediation description. + :vartype description: str + :ivar scripts: Remediation script. + :vartype scripts: list[str] + :ivar automated: Is remediation automated. + :vartype automated: bool + :ivar portal_link: Optional link to remediate in Azure Portal. + :vartype portal_link: str + """ + + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Remediation description.""" + scripts: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Remediation script.""" + automated: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Is remediation automated.""" + portal_link: Optional[str] = rest_field( + name="portalLink", visibility=["read", "create", "update", "delete", "query"] + ) + """Optional link to remediate in Azure Portal.""" + + @overload + def __init__( + self, + *, + description: Optional[str] = None, + scripts: Optional[list[str]] = None, + automated: Optional[bool] = None, + portal_link: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class RemediationEta(_Model): + """The ETA (estimated time of arrival) for remediation. + + :ivar eta: ETA for remediation. Required. + :vartype eta: ~datetime.datetime + :ivar justification: Justification for change of Eta. Required. + :vartype justification: str + """ + + eta: datetime.datetime = rest_field(visibility=["read", "create", "update", "delete", "query"], format="rfc3339") + """ETA for remediation. Required.""" + justification: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Justification for change of Eta. Required.""" + + @overload + def __init__( + self, + *, + eta: datetime.datetime, + justification: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ResourceDetails(_Model): + """The resource details of the health report. + + :ivar source: The status of the health report. Known values are: "Azure", "OnPremise", + "OnPremiseSql", "Aws", and "Gcp". + :vartype source: str or ~azure.mgmt.security.models.Source + :ivar id: The azure id of the resource. + :vartype id: str + :ivar connector_id: The id of the connector. + :vartype connector_id: str + """ + + source: Optional[Union[str, "_models.Source"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The status of the health report. Known values are: \"Azure\", \"OnPremise\", \"OnPremiseSql\", + \"Aws\", and \"Gcp\".""" + id: Optional[str] = rest_field(visibility=["read"]) + """The azure id of the resource.""" + connector_id: Optional[str] = rest_field(name="connectorId", visibility=["read"]) + """The id of the connector.""" + + @overload + def __init__( + self, + *, + source: Optional[Union[str, "_models.Source"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class RuleResults(ExtensionResource): + """Rule results. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Rule results properties. + :vartype properties: ~azure.mgmt.security.models.RuleResultsProperties + """ + + properties: Optional["_models.RuleResultsProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Rule results properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.RuleResultsProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class RuleResultsInput(_Model): + """Rule results input. + + :ivar latest_scan: Take results from latest scan. + :vartype latest_scan: bool + :ivar results: Expected results to be inserted into the baseline. Leave this field empty if + latestScan == true. + :vartype results: list[list[str]] + """ + + latest_scan: Optional[bool] = rest_field( + name="latestScan", visibility=["read", "create", "update", "delete", "query"] + ) + """Take results from latest scan.""" + results: Optional[list[list[str]]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Expected results to be inserted into the baseline. Leave this field empty if latestScan == + true.""" + + @overload + def __init__( + self, + *, + latest_scan: Optional[bool] = None, + results: Optional[list[list[str]]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class RuleResultsProperties(_Model): + """Rule results properties. + + :ivar results: Expected results in the baseline. + :vartype results: list[list[str]] + :ivar latest_scan: Take results from latest scan. + :vartype latest_scan: bool + """ + + results: Optional[list[list[str]]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Expected results in the baseline.""" + latest_scan: Optional[bool] = rest_field( + name="latestScan", visibility=["read", "create", "update", "delete", "query"] + ) + """Take results from latest scan.""" + + @overload + def __init__( + self, + *, + results: Optional[list[list[str]]] = None, + latest_scan: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class RulesResults(_Model): + """A list of rules results. + + :ivar value: List of rule results. + :vartype value: list[~azure.mgmt.security.models.RuleResults] + :ivar next_link: + :vartype next_link: str + """ + + value: Optional[list["_models.RuleResults"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """List of rule results.""" + next_link: Optional[str] = rest_field(name="nextLink", visibility=["read", "create", "update", "delete", "query"]) + + @overload + def __init__( + self, + *, + value: Optional[list["_models.RuleResults"]] = None, + next_link: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class RulesResultsInput(_Model): + """Rules results input. + + :ivar latest_scan: Take results from latest scan. + :vartype latest_scan: bool + :ivar results: Expected results to be inserted into the baseline. Leave this field empty if + latestScan == true. + :vartype results: dict[str, list[list[str]]] + """ + + latest_scan: Optional[bool] = rest_field( + name="latestScan", visibility=["read", "create", "update", "delete", "query"] + ) + """Take results from latest scan.""" + results: Optional[dict[str, list[list[str]]]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Expected results to be inserted into the baseline. Leave this field empty if latestScan == + true.""" + + @overload + def __init__( + self, + *, + latest_scan: Optional[bool] = None, + results: Optional[dict[str, list[list[str]]]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ScanPropertiesV2(_Model): + """A vulnerability assessment scan record properties. + + :ivar trigger_type: The scan trigger type. Known values are: "OnDemand" and "Recurring". + :vartype trigger_type: str or ~azure.mgmt.security.models.ScanTriggerType + :ivar state: The scan status. Known values are: "Failed", "FailedToRun", "InProgress", and + "Passed". + :vartype state: str or ~azure.mgmt.security.models.ScanState + :ivar server: The server name. + :vartype server: str + :ivar database: The database name. + :vartype database: str + :ivar sql_version: The SQL version. + :vartype sql_version: str + :ivar start_time: The scan start time (UTC). + :vartype start_time: ~datetime.datetime + :ivar end_time: Scan results are valid until end time (UTC). + :vartype end_time: ~datetime.datetime + :ivar high_severity_failed_rules_count: The number of failed rules with high severity. + :vartype high_severity_failed_rules_count: int + :ivar medium_severity_failed_rules_count: The number of failed rules with medium severity. + :vartype medium_severity_failed_rules_count: int + :ivar low_severity_failed_rules_count: The number of failed rules with low severity. + :vartype low_severity_failed_rules_count: int + :ivar total_passed_rules_count: The number of total passed rules. + :vartype total_passed_rules_count: int + :ivar total_failed_rules_count: The number of total failed rules. + :vartype total_failed_rules_count: int + :ivar total_rules_count: The number of total rules assessed. + :vartype total_rules_count: int + :ivar is_baseline_applied: Baseline created for this database, and has one or more rules. + :vartype is_baseline_applied: bool + :ivar last_scan_time: Last scan time. + :vartype last_scan_time: ~datetime.datetime + """ + + trigger_type: Optional[Union[str, "_models.ScanTriggerType"]] = rest_field( + name="triggerType", visibility=["read", "create", "update", "delete", "query"] + ) + """The scan trigger type. Known values are: \"OnDemand\" and \"Recurring\".""" + state: Optional[Union[str, "_models.ScanState"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The scan status. Known values are: \"Failed\", \"FailedToRun\", \"InProgress\", and \"Passed\".""" + server: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The server name.""" + database: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The database name.""" + sql_version: Optional[str] = rest_field( + name="sqlVersion", visibility=["read", "create", "update", "delete", "query"] + ) + """The SQL version.""" + start_time: Optional[datetime.datetime] = rest_field( + name="startTime", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """The scan start time (UTC).""" + end_time: Optional[datetime.datetime] = rest_field( + name="endTime", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """Scan results are valid until end time (UTC).""" + high_severity_failed_rules_count: Optional[int] = rest_field( + name="highSeverityFailedRulesCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of failed rules with high severity.""" + medium_severity_failed_rules_count: Optional[int] = rest_field( + name="mediumSeverityFailedRulesCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of failed rules with medium severity.""" + low_severity_failed_rules_count: Optional[int] = rest_field( + name="lowSeverityFailedRulesCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of failed rules with low severity.""" + total_passed_rules_count: Optional[int] = rest_field( + name="totalPassedRulesCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of total passed rules.""" + total_failed_rules_count: Optional[int] = rest_field( + name="totalFailedRulesCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of total failed rules.""" + total_rules_count: Optional[int] = rest_field( + name="totalRulesCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of total rules assessed.""" + is_baseline_applied: Optional[bool] = rest_field( + name="isBaselineApplied", visibility=["read", "create", "update", "delete", "query"] + ) + """Baseline created for this database, and has one or more rules.""" + last_scan_time: Optional[datetime.datetime] = rest_field( + name="lastScanTime", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """Last scan time.""" + + @overload + def __init__( + self, + *, + trigger_type: Optional[Union[str, "_models.ScanTriggerType"]] = None, + state: Optional[Union[str, "_models.ScanState"]] = None, + server: Optional[str] = None, + database: Optional[str] = None, + sql_version: Optional[str] = None, + start_time: Optional[datetime.datetime] = None, + end_time: Optional[datetime.datetime] = None, + high_severity_failed_rules_count: Optional[int] = None, + medium_severity_failed_rules_count: Optional[int] = None, + low_severity_failed_rules_count: Optional[int] = None, + total_passed_rules_count: Optional[int] = None, + total_failed_rules_count: Optional[int] = None, + total_rules_count: Optional[int] = None, + is_baseline_applied: Optional[bool] = None, + last_scan_time: Optional[datetime.datetime] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ScanResult(ExtensionResource): + """A vulnerability assessment scan result for a single rule. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: A vulnerability assessment scan result properties for a single rule. + :vartype properties: ~azure.mgmt.security.models.ScanResultProperties + """ + + properties: Optional["_models.ScanResultProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """A vulnerability assessment scan result properties for a single rule.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.ScanResultProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ScanResultProperties(_Model): + """A vulnerability assessment scan result properties for a single rule. + + :ivar rule_id: The rule Id. + :vartype rule_id: str + :ivar status: The rule result status. Known values are: "NonFinding", "Finding", + "InternalError", and "NotApplicable". + :vartype status: str or ~azure.mgmt.security.models.RuleStatus + :ivar is_trimmed: Indicates whether the results specified here are trimmed. + :vartype is_trimmed: bool + :ivar query_results: The results of the query that was run. + :vartype query_results: list[list[str]] + :ivar remediation: Remediation details. + :vartype remediation: ~azure.mgmt.security.models.Remediation + :ivar baseline_adjusted_result: The rule result adjusted with baseline. + :vartype baseline_adjusted_result: ~azure.mgmt.security.models.BaselineAdjustedResult + :ivar rule_metadata: vulnerability assessment rule metadata details. + :vartype rule_metadata: ~azure.mgmt.security.models.VaRule + """ + + rule_id: Optional[str] = rest_field(name="ruleId", visibility=["read", "create", "update", "delete", "query"]) + """The rule Id.""" + status: Optional[Union[str, "_models.RuleStatus"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The rule result status. Known values are: \"NonFinding\", \"Finding\", \"InternalError\", and + \"NotApplicable\".""" + is_trimmed: Optional[bool] = rest_field( + name="isTrimmed", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether the results specified here are trimmed.""" + query_results: Optional[list[list[str]]] = rest_field( + name="queryResults", visibility=["read", "create", "update", "delete", "query"] + ) + """The results of the query that was run.""" + remediation: Optional["_models.Remediation"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Remediation details.""" + baseline_adjusted_result: Optional["_models.BaselineAdjustedResult"] = rest_field( + name="baselineAdjustedResult", visibility=["read", "create", "update", "delete", "query"] + ) + """The rule result adjusted with baseline.""" + rule_metadata: Optional["_models.VaRule"] = rest_field( + name="ruleMetadata", visibility=["read", "create", "update", "delete", "query"] + ) + """vulnerability assessment rule metadata details.""" + + @overload + def __init__( + self, + *, + rule_id: Optional[str] = None, + status: Optional[Union[str, "_models.RuleStatus"]] = None, + is_trimmed: Optional[bool] = None, + query_results: Optional[list[list[str]]] = None, + remediation: Optional["_models.Remediation"] = None, + baseline_adjusted_result: Optional["_models.BaselineAdjustedResult"] = None, + rule_metadata: Optional["_models.VaRule"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ScanSummary(_Model): + """A summary of the scan results. + + :ivar blobs: A summary of the scan results of the blobs that were scanned. + :vartype blobs: ~azure.mgmt.security.models.BlobsScanSummary + :ivar files: A summary of the scan results of the files that were scanned. + :vartype files: ~azure.mgmt.security.models.FilesScanSummary + :ivar estimated_scan_cost_usd: The estimated cost of the scan. Only available for a scan which + has terminated. + :vartype estimated_scan_cost_usd: float + """ + + blobs: Optional["_models.BlobsScanSummary"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """A summary of the scan results of the blobs that were scanned.""" + files: Optional["_models.FilesScanSummary"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """A summary of the scan results of the files that were scanned.""" + estimated_scan_cost_usd: Optional[float] = rest_field( + name="estimatedScanCostUSD", visibility=["read", "create", "update", "delete", "query"] + ) + """The estimated cost of the scan. Only available for a scan which has terminated.""" + + @overload + def __init__( + self, + *, + blobs: Optional["_models.BlobsScanSummary"] = None, + files: Optional["_models.FilesScanSummary"] = None, + estimated_scan_cost_usd: Optional[float] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ScanV2(ExtensionResource): + """A vulnerability assessment scan record. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: A vulnerability assessment scan record properties. + :vartype properties: ~azure.mgmt.security.models.ScanPropertiesV2 + """ + + properties: Optional["_models.ScanPropertiesV2"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """A vulnerability assessment scan record properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.ScanPropertiesV2"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ScopeElement(_Model): + """A more specific scope used to identify the alerts to suppress. + + :ivar field: The alert entity type to suppress by. + :vartype field: str + """ + + field: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The alert entity type to suppress by.""" + + @overload + def __init__( + self, + *, + field: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ScoreDetails(_Model): + """Calculation result data. + + :ivar max: Maximum score available. + :vartype max: int + :ivar current: Current score. + :vartype current: float + :ivar percentage: Ratio of the current score divided by the maximum. Rounded to 4 digits after + the decimal point. + :vartype percentage: float + """ + + max: Optional[int] = rest_field(visibility=["read"]) + """Maximum score available.""" + current: Optional[float] = rest_field(visibility=["read"]) + """Current score.""" + percentage: Optional[float] = rest_field(visibility=["read"]) + """Ratio of the current score divided by the maximum. Rounded to 4 digits after the decimal point.""" + + +class SecureScoreControlDefinitionItem(Resource): + """Information about the security control. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Security Control Definition Properties. + :vartype properties: ~azure.mgmt.security.models.SecureScoreControlDefinitionItemProperties + """ + + properties: Optional["_models.SecureScoreControlDefinitionItemProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Security Control Definition Properties.""" + + __flattened_items = ["display_name", "description", "max_score", "source", "assessment_definitions"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.SecureScoreControlDefinitionItemProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class SecureScoreControlDefinitionItemProperties(_Model): # pylint: disable=name-too-long + """Security Control Definition Properties. + + :ivar display_name: User friendly display name of the control. + :vartype display_name: str + :ivar description: User friendly description of the control. + :vartype description: str + :ivar max_score: Maximum control score (0..10). + :vartype max_score: int + :ivar source: Source object from which the control was created. + :vartype source: ~azure.mgmt.security.models.SecureScoreControlDefinitionSource + :ivar assessment_definitions: Array of assessments metadata IDs that are included in this + security control. + :vartype assessment_definitions: list[~azure.mgmt.security.models.AzureResourceLink] + """ + + display_name: Optional[str] = rest_field(name="displayName", visibility=["read"]) + """User friendly display name of the control.""" + description: Optional[str] = rest_field(visibility=["read"]) + """User friendly description of the control.""" + max_score: Optional[int] = rest_field(name="maxScore", visibility=["read"]) + """Maximum control score (0..10).""" + source: Optional["_models.SecureScoreControlDefinitionSource"] = rest_field(visibility=["read"]) + """Source object from which the control was created.""" + assessment_definitions: Optional[list["_models.AzureResourceLink"]] = rest_field( + name="assessmentDefinitions", visibility=["read"] + ) + """Array of assessments metadata IDs that are included in this security control.""" + + +class SecureScoreControlDefinitionSource(_Model): + """The type of the security control (For example, BuiltIn). + + :ivar source_type: The type of security control (for example, BuiltIn). Known values are: + "BuiltIn" and "Custom". + :vartype source_type: str or ~azure.mgmt.security.models.ControlType + """ + + source_type: Optional[Union[str, "_models.ControlType"]] = rest_field( + name="sourceType", visibility=["read", "create", "update", "delete", "query"] + ) + """The type of security control (for example, BuiltIn). Known values are: \"BuiltIn\" and + \"Custom\".""" + + @overload + def __init__( + self, + *, + source_type: Optional[Union[str, "_models.ControlType"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecureScoreControlDetails(Resource): + """Details of the security control, its score, and the health status of the relevant resources. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Calculation result data in control level. + :vartype properties: ~azure.mgmt.security.models.SecureScoreControlScoreDetails + """ + + properties: Optional["_models.SecureScoreControlScoreDetails"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Calculation result data in control level.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.SecureScoreControlScoreDetails"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecureScoreControlScoreDetails(_Model): + """Calculation result data in control level. + + :ivar display_name: User friendly display name of the control. + :vartype display_name: str + :ivar score: Actual score object for the control. + :vartype score: ~azure.mgmt.security.models.ScoreDetails + :ivar healthy_resource_count: Number of healthy resources in the control. + :vartype healthy_resource_count: int + :ivar unhealthy_resource_count: Number of unhealthy resources in the control. + :vartype unhealthy_resource_count: int + :ivar not_applicable_resource_count: Number of not applicable resources in the control. + :vartype not_applicable_resource_count: int + :ivar weight: The relative weight for this specific control in each of your subscriptions. Used + when calculating an aggregated score for this control across all of your subscriptions. + :vartype weight: int + :ivar definition: Information about the security control. + :vartype definition: ~azure.mgmt.security.models.SecureScoreControlDefinitionItem + """ + + display_name: Optional[str] = rest_field(name="displayName", visibility=["read"]) + """User friendly display name of the control.""" + score: Optional["_models.ScoreDetails"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Actual score object for the control.""" + healthy_resource_count: Optional[int] = rest_field(name="healthyResourceCount", visibility=["read"]) + """Number of healthy resources in the control.""" + unhealthy_resource_count: Optional[int] = rest_field(name="unhealthyResourceCount", visibility=["read"]) + """Number of unhealthy resources in the control.""" + not_applicable_resource_count: Optional[int] = rest_field(name="notApplicableResourceCount", visibility=["read"]) + """Number of not applicable resources in the control.""" + weight: Optional[int] = rest_field(visibility=["read"]) + """The relative weight for this specific control in each of your subscriptions. Used when + calculating an aggregated score for this control across all of your subscriptions.""" + definition: Optional["_models.SecureScoreControlDefinitionItem"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Information about the security control.""" + + __flattened_items = ["max", "current", "percentage"] + + @overload + def __init__( + self, + *, + score: Optional["_models.ScoreDetails"] = None, + definition: Optional["_models.SecureScoreControlDefinitionItem"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.score is None: + return None + return getattr(self.score, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.score is None: + self.score = self._attr_to_rest_field["score"]._class_type() + setattr(self.score, key, value) + else: + super().__setattr__(key, value) + + +class SecureScoreItem(ProxyResource): + """Secure score item data model. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Secure score item. + :vartype properties: ~azure.mgmt.security.models.SecureScoreItemProperties + """ + + properties: Optional["_models.SecureScoreItemProperties"] = rest_field(visibility=["read"]) + """Secure score item.""" + + +class SecureScoreItemProperties(_Model): + """Describes properties of a calculated secure score. + + :ivar display_name: The initiative's name. + :vartype display_name: str + :ivar score: score object. + :vartype score: ~azure.mgmt.security.models.ScoreDetails + :ivar weight: The relative weight for each subscription. Used when calculating an aggregated + secure score for multiple subscriptions. + :vartype weight: int + """ + + display_name: Optional[str] = rest_field(name="displayName", visibility=["read"]) + """The initiative's name.""" + score: Optional["_models.ScoreDetails"] = rest_field(visibility=["read"]) + """score object.""" + weight: Optional[int] = rest_field(visibility=["read"]) + """The relative weight for each subscription. Used when calculating an aggregated secure score for + multiple subscriptions.""" + + __flattened_items = ["max", "current", "percentage"] + + +class SecurityAssessment(Resource): + """Security assessment on a resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Describes properties of an assessment. + :vartype properties: ~azure.mgmt.security.models.SecurityAssessmentProperties + """ + + properties: Optional["_models.SecurityAssessmentProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Describes properties of an assessment.""" + + __flattened_items = [ + "risk", + "resource_details", + "display_name", + "additional_data", + "links", + "metadata", + "partners_data", + "status", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.SecurityAssessmentProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class SecurityAssessmentMetadataPartnerData(_Model): + """Describes the partner that created the assessment. + + :ivar partner_name: Name of the company of the partner. Required. + :vartype partner_name: str + :ivar product_name: Name of the product of the partner that created the assessment. + :vartype product_name: str + :ivar secret: Secret to authenticate the partner and verify it created the assessment - write + only. Required. + :vartype secret: str + """ + + partner_name: str = rest_field(name="partnerName", visibility=["read", "create", "update", "delete", "query"]) + """Name of the company of the partner. Required.""" + product_name: Optional[str] = rest_field( + name="productName", visibility=["read", "create", "update", "delete", "query"] + ) + """Name of the product of the partner that created the assessment.""" + secret: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Secret to authenticate the partner and verify it created the assessment - write only. Required.""" + + @overload + def __init__( + self, + *, + partner_name: str, + secret: str, + product_name: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityAssessmentMetadataProperties(_Model): + """Describes properties of an assessment metadata. + + :ivar display_name: User friendly display name of the assessment. Required. + :vartype display_name: str + :ivar policy_definition_id: Azure resource ID of the policy definition that turns this + assessment calculation on. + :vartype policy_definition_id: str + :ivar description: Human readable description of the assessment. + :vartype description: str + :ivar remediation_description: Human readable description of what you should do to mitigate + this security issue. + :vartype remediation_description: str + :ivar categories: + :vartype categories: list[str or ~azure.mgmt.security.models.Categories] + :ivar severity: The severity level of the assessment. Required. Known values are: "Low", + "Medium", "High", and "Critical". + :vartype severity: str or ~azure.mgmt.security.models.Severity + :ivar user_impact: The user impact of the assessment. Known values are: "Low", "Moderate", and + "High". + :vartype user_impact: str or ~azure.mgmt.security.models.UserImpact + :ivar implementation_effort: The implementation effort required to remediate this assessment. + Known values are: "Low", "Moderate", and "High". + :vartype implementation_effort: str or ~azure.mgmt.security.models.ImplementationEffort + :ivar threats: + :vartype threats: list[str or ~azure.mgmt.security.models.Threats] + :ivar preview: True if this assessment is in preview release status. + :vartype preview: bool + :ivar assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, + Custom if the assessment based on custom Azure Policy definition. Required. Known values are: + "Unknown", "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", + "VerifiedPartner", "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and + "DynamicBuiltIn". + :vartype assessment_type: str or ~azure.mgmt.security.models.AssessmentType + :ivar partner_data: Describes the partner that created the assessment. + :vartype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData + """ + + display_name: str = rest_field(name="displayName", visibility=["read", "create", "update", "delete", "query"]) + """User friendly display name of the assessment. Required.""" + policy_definition_id: Optional[str] = rest_field(name="policyDefinitionId", visibility=["read"]) + """Azure resource ID of the policy definition that turns this assessment calculation on.""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Human readable description of the assessment.""" + remediation_description: Optional[str] = rest_field( + name="remediationDescription", visibility=["read", "create", "update", "delete", "query"] + ) + """Human readable description of what you should do to mitigate this security issue.""" + categories: Optional[list[Union[str, "_models.Categories"]]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + severity: Union[str, "_models.Severity"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The severity level of the assessment. Required. Known values are: \"Low\", \"Medium\", + \"High\", and \"Critical\".""" + user_impact: Optional[Union[str, "_models.UserImpact"]] = rest_field( + name="userImpact", visibility=["read", "create", "update", "delete", "query"] + ) + """The user impact of the assessment. Known values are: \"Low\", \"Moderate\", and \"High\".""" + implementation_effort: Optional[Union[str, "_models.ImplementationEffort"]] = rest_field( + name="implementationEffort", visibility=["read", "create", "update", "delete", "query"] + ) + """The implementation effort required to remediate this assessment. Known values are: \"Low\", + \"Moderate\", and \"High\".""" + threats: Optional[list[Union[str, "_models.Threats"]]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + preview: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """True if this assessment is in preview release status.""" + assessment_type: Union[str, "_models.AssessmentType"] = rest_field( + name="assessmentType", visibility=["read", "create", "update", "delete", "query"] + ) + """BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment + based on custom Azure Policy definition. Required. Known values are: \"Unknown\", \"BuiltIn\", + \"Custom\", \"CustomPolicy\", \"CustomerManaged\", \"BuiltInPolicy\", \"VerifiedPartner\", + \"ManualBuiltInPolicy\", \"ManualBuiltIn\", \"ManualCustomPolicy\", and \"DynamicBuiltIn\".""" + partner_data: Optional["_models.SecurityAssessmentMetadataPartnerData"] = rest_field( + name="partnerData", visibility=["read", "create", "update", "delete", "query"] + ) + """Describes the partner that created the assessment.""" + + @overload + def __init__( + self, + *, + display_name: str, + severity: Union[str, "_models.Severity"], + assessment_type: Union[str, "_models.AssessmentType"], + description: Optional[str] = None, + remediation_description: Optional[str] = None, + categories: Optional[list[Union[str, "_models.Categories"]]] = None, + user_impact: Optional[Union[str, "_models.UserImpact"]] = None, + implementation_effort: Optional[Union[str, "_models.ImplementationEffort"]] = None, + threats: Optional[list[Union[str, "_models.Threats"]]] = None, + preview: Optional[bool] = None, + partner_data: Optional["_models.SecurityAssessmentMetadataPartnerData"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityAssessmentMetadataPropertiesResponse( + SecurityAssessmentMetadataProperties +): # pylint: disable=name-too-long + """Describes properties of an assessment metadata response. + + :ivar display_name: User friendly display name of the assessment. Required. + :vartype display_name: str + :ivar policy_definition_id: Azure resource ID of the policy definition that turns this + assessment calculation on. + :vartype policy_definition_id: str + :ivar description: Human readable description of the assessment. + :vartype description: str + :ivar remediation_description: Human readable description of what you should do to mitigate + this security issue. + :vartype remediation_description: str + :ivar categories: + :vartype categories: list[str or ~azure.mgmt.security.models.Categories] + :ivar severity: The severity level of the assessment. Required. Known values are: "Low", + "Medium", "High", and "Critical". + :vartype severity: str or ~azure.mgmt.security.models.Severity + :ivar user_impact: The user impact of the assessment. Known values are: "Low", "Moderate", and + "High". + :vartype user_impact: str or ~azure.mgmt.security.models.UserImpact + :ivar implementation_effort: The implementation effort required to remediate this assessment. + Known values are: "Low", "Moderate", and "High". + :vartype implementation_effort: str or ~azure.mgmt.security.models.ImplementationEffort + :ivar threats: + :vartype threats: list[str or ~azure.mgmt.security.models.Threats] + :ivar preview: True if this assessment is in preview release status. + :vartype preview: bool + :ivar assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, + Custom if the assessment based on custom Azure Policy definition. Required. Known values are: + "Unknown", "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", + "VerifiedPartner", "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and + "DynamicBuiltIn". + :vartype assessment_type: str or ~azure.mgmt.security.models.AssessmentType + :ivar partner_data: Describes the partner that created the assessment. + :vartype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData + :ivar publish_dates: + :vartype publish_dates: + ~azure.mgmt.security.models.SecurityAssessmentMetadataPropertiesResponsePublishDates + :ivar planned_deprecation_date: + :vartype planned_deprecation_date: str + :ivar tactics: + :vartype tactics: list[str or ~azure.mgmt.security.models.Tactics] + :ivar techniques: + :vartype techniques: list[str or ~azure.mgmt.security.models.Techniques] + """ + + publish_dates: Optional["_models.SecurityAssessmentMetadataPropertiesResponsePublishDates"] = rest_field( + name="publishDates", visibility=["read", "create", "update", "delete", "query"] + ) + planned_deprecation_date: Optional[str] = rest_field( + name="plannedDeprecationDate", visibility=["read", "create", "update", "delete", "query"] + ) + tactics: Optional[list[Union[str, "_models.Tactics"]]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + techniques: Optional[list[Union[str, "_models.Techniques"]]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + + @overload + def __init__( + self, + *, + display_name: str, + severity: Union[str, "_models.Severity"], + assessment_type: Union[str, "_models.AssessmentType"], + description: Optional[str] = None, + remediation_description: Optional[str] = None, + categories: Optional[list[Union[str, "_models.Categories"]]] = None, + user_impact: Optional[Union[str, "_models.UserImpact"]] = None, + implementation_effort: Optional[Union[str, "_models.ImplementationEffort"]] = None, + threats: Optional[list[Union[str, "_models.Threats"]]] = None, + preview: Optional[bool] = None, + partner_data: Optional["_models.SecurityAssessmentMetadataPartnerData"] = None, + publish_dates: Optional["_models.SecurityAssessmentMetadataPropertiesResponsePublishDates"] = None, + planned_deprecation_date: Optional[str] = None, + tactics: Optional[list[Union[str, "_models.Tactics"]]] = None, + techniques: Optional[list[Union[str, "_models.Techniques"]]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityAssessmentMetadataPropertiesResponsePublishDates(_Model): # pylint: disable=name-too-long + """SecurityAssessmentMetadataPropertiesResponsePublishDates. + + :ivar ga: + :vartype ga: str + :ivar public: Required. + :vartype public: str + """ + + ga: Optional[str] = rest_field(name="GA", visibility=["read", "create", "update", "delete", "query"]) + public: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Required.""" + + @overload + def __init__( + self, + *, + public: str, + ga: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityAssessmentMetadataResponse(ProxyResource): + """Security assessment metadata response. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Describes properties of an assessment metadata response. + :vartype properties: ~azure.mgmt.security.models.SecurityAssessmentMetadataPropertiesResponse + """ + + properties: Optional["_models.SecurityAssessmentMetadataPropertiesResponse"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Describes properties of an assessment metadata response.""" + + __flattened_items = [ + "display_name", + "policy_definition_id", + "description", + "remediation_description", + "categories", + "severity", + "user_impact", + "implementation_effort", + "threats", + "preview", + "assessment_type", + "partner_data", + "publish_dates", + "planned_deprecation_date", + "tactics", + "techniques", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.SecurityAssessmentMetadataPropertiesResponse"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class SecurityAssessmentPartnerData(_Model): + """Data regarding 3rd party partner integration. + + :ivar partner_name: Name of the company of the partner. Required. + :vartype partner_name: str + :ivar secret: secret to authenticate the partner - write only. Required. + :vartype secret: str + """ + + partner_name: str = rest_field(name="partnerName", visibility=["read", "create", "update", "delete", "query"]) + """Name of the company of the partner. Required.""" + secret: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """secret to authenticate the partner - write only. Required.""" + + @overload + def __init__( + self, + *, + partner_name: str, + secret: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityAssessmentPropertiesBase(_Model): + """Describes properties of an assessment. + + :ivar risk: External model of risk result. + :vartype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk + :ivar resource_details: Details of the resource that was assessed. Required. + :vartype resource_details: ~azure.mgmt.security.models.CommonResourceDetails + :ivar display_name: User friendly display name of the assessment. + :vartype display_name: str + :ivar additional_data: Additional data regarding the assessment. + :vartype additional_data: dict[str, str] + :ivar links: Links relevant to the assessment. + :vartype links: ~azure.mgmt.security.models.AssessmentLinks + :ivar metadata: Describes properties of an assessment metadata. + :vartype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties + :ivar partners_data: Data regarding 3rd party partner integration. + :vartype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData + """ + + risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """External model of risk result.""" + resource_details: "_models.CommonResourceDetails" = rest_field( + name="resourceDetails", visibility=["read", "create", "update", "delete", "query"] + ) + """Details of the resource that was assessed. Required.""" + display_name: Optional[str] = rest_field(name="displayName", visibility=["read"]) + """User friendly display name of the assessment.""" + additional_data: Optional[dict[str, str]] = rest_field( + name="additionalData", visibility=["read", "create", "update", "delete", "query"] + ) + """Additional data regarding the assessment.""" + links: Optional["_models.AssessmentLinks"] = rest_field(visibility=["read"]) + """Links relevant to the assessment.""" + metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Describes properties of an assessment metadata.""" + partners_data: Optional["_models.SecurityAssessmentPartnerData"] = rest_field( + name="partnersData", visibility=["read", "create", "update", "delete", "query"] + ) + """Data regarding 3rd party partner integration.""" + + @overload + def __init__( + self, + *, + resource_details: "_models.CommonResourceDetails", + risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, + additional_data: Optional[dict[str, str]] = None, + metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, + partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityAssessmentProperties(SecurityAssessmentPropertiesBase): + """Describes properties of an assessment. + + :ivar risk: External model of risk result. + :vartype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk + :ivar resource_details: Details of the resource that was assessed. Required. + :vartype resource_details: ~azure.mgmt.security.models.CommonResourceDetails + :ivar display_name: User friendly display name of the assessment. + :vartype display_name: str + :ivar additional_data: Additional data regarding the assessment. + :vartype additional_data: dict[str, str] + :ivar links: Links relevant to the assessment. + :vartype links: ~azure.mgmt.security.models.AssessmentLinks + :ivar metadata: Describes properties of an assessment metadata. + :vartype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties + :ivar partners_data: Data regarding 3rd party partner integration. + :vartype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData + :ivar status: The result of the assessment. Required. + :vartype status: ~azure.mgmt.security.models.AssessmentStatus + """ + + status: "_models.AssessmentStatus" = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The result of the assessment. Required.""" + + @overload + def __init__( + self, + *, + resource_details: "_models.CommonResourceDetails", + status: "_models.AssessmentStatus", + risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, + additional_data: Optional[dict[str, str]] = None, + metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, + partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityAssessmentPropertiesBaseRisk(_Model): + """External model of risk result. + + :ivar risk_factors: The factors of the risk adding base factor. + :vartype risk_factors: list[str] + :ivar level: The risk level. Known values are: "None", "Low", "Medium", "High", and "Critical". + :vartype level: str or ~azure.mgmt.security.models.RiskLevel + :ivar attack_paths_references: The attack paths references of the risk. + :vartype attack_paths_references: list[str] + :ivar paths: + :vartype paths: list[~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRiskPathsItem] + :ivar is_contextual_risk: Indicates if the risk is contextual or static. + :vartype is_contextual_risk: bool + """ + + risk_factors: Optional[list[str]] = rest_field( + name="riskFactors", visibility=["read", "create", "update", "delete", "query"] + ) + """The factors of the risk adding base factor.""" + level: Optional[Union[str, "_models.RiskLevel"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The risk level. Known values are: \"None\", \"Low\", \"Medium\", \"High\", and \"Critical\".""" + attack_paths_references: Optional[list[str]] = rest_field( + name="attackPathsReferences", visibility=["read", "create", "update", "delete", "query"] + ) + """The attack paths references of the risk.""" + paths: Optional[list["_models.SecurityAssessmentPropertiesBaseRiskPathsItem"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + is_contextual_risk: Optional[bool] = rest_field( + name="isContextualRisk", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates if the risk is contextual or static.""" + + @overload + def __init__( + self, + *, + risk_factors: Optional[list[str]] = None, + level: Optional[Union[str, "_models.RiskLevel"]] = None, + attack_paths_references: Optional[list[str]] = None, + paths: Optional[list["_models.SecurityAssessmentPropertiesBaseRiskPathsItem"]] = None, + is_contextual_risk: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityAssessmentPropertiesBaseRiskPathsItem(_Model): # pylint: disable=name-too-long + """SecurityAssessmentPropertiesBaseRiskPathsItem. + + :ivar id: Unique identifier for the path. + :vartype id: str + :ivar nodes: + :vartype nodes: + list[~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem] + :ivar edges: Connections between nodes. + :vartype edges: + list[~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem] + """ + + id: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Unique identifier for the path.""" + nodes: Optional[list["_models.SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + edges: Optional[list["_models.SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Connections between nodes.""" + + @overload + def __init__( + self, + *, + id: Optional[str] = None, # pylint: disable=redefined-builtin + nodes: Optional[list["_models.SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem"]] = None, + edges: Optional[list["_models.SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem(_Model): # pylint: disable=name-too-long + """SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem. + + :ivar id: Edge identifier. Required. + :vartype id: str + :ivar target_id: Target node identifier. Required. + :vartype target_id: str + :ivar source_id: Source node identifier. Required. + :vartype source_id: str + """ + + id: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Edge identifier. Required.""" + target_id: str = rest_field(name="targetId", visibility=["read", "create", "update", "delete", "query"]) + """Target node identifier. Required.""" + source_id: str = rest_field(name="sourceId", visibility=["read", "create", "update", "delete", "query"]) + """Source node identifier. Required.""" + + @overload + def __init__( + self, + *, + id: str, # pylint: disable=redefined-builtin + target_id: str, + source_id: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem(_Model): # pylint: disable=name-too-long + """SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem. + + :ivar id: Node identifier. + :vartype id: str + :ivar node_properties_label: Properties associated with the node. + :vartype node_properties_label: list[str] + """ + + id: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Node identifier.""" + node_properties_label: Optional[list[str]] = rest_field( + name="nodePropertiesLabel", visibility=["read", "create", "update", "delete", "query"] + ) + """Properties associated with the node.""" + + @overload + def __init__( + self, + *, + id: Optional[str] = None, # pylint: disable=redefined-builtin + node_properties_label: Optional[list[str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityAssessmentPropertiesResponse(SecurityAssessmentPropertiesBase): + """Describes properties of an assessment. + + :ivar risk: External model of risk result. + :vartype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk + :ivar resource_details: Details of the resource that was assessed. Required. + :vartype resource_details: ~azure.mgmt.security.models.CommonResourceDetails + :ivar display_name: User friendly display name of the assessment. + :vartype display_name: str + :ivar additional_data: Additional data regarding the assessment. + :vartype additional_data: dict[str, str] + :ivar links: Links relevant to the assessment. + :vartype links: ~azure.mgmt.security.models.AssessmentLinks + :ivar metadata: Describes properties of an assessment metadata. + :vartype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties + :ivar partners_data: Data regarding 3rd party partner integration. + :vartype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData + :ivar status: The result of the assessment. Required. + :vartype status: ~azure.mgmt.security.models.AssessmentStatusResponse + """ + + status: "_models.AssessmentStatusResponse" = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The result of the assessment. Required.""" + + @overload + def __init__( + self, + *, + resource_details: "_models.CommonResourceDetails", + status: "_models.AssessmentStatusResponse", + risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, + additional_data: Optional[dict[str, str]] = None, + metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, + partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityAssessmentResponse(ExtensionResource): + """Security assessment on a resource - response format. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Describes properties of an assessment. + :vartype properties: ~azure.mgmt.security.models.SecurityAssessmentPropertiesResponse + """ + + properties: Optional["_models.SecurityAssessmentPropertiesResponse"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Describes properties of an assessment.""" + + __flattened_items = [ + "risk", + "resource_details", + "display_name", + "additional_data", + "links", + "metadata", + "partners_data", + "status", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.SecurityAssessmentPropertiesResponse"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class SecurityConnector(ProxyResource): + """The security connector resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Security connector data. + :vartype properties: ~azure.mgmt.security.models.SecurityConnectorProperties + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. + :vartype location: str + :ivar kind: Kind of the resource. + :vartype kind: str + :ivar etag: Entity tag is used for comparing two or more entities from the same requested + resource. + :vartype etag: str + """ + + properties: Optional["_models.SecurityConnectorProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Security connector data.""" + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + location: Optional[str] = rest_field(visibility=["read", "create"]) + """The geo-location where the resource lives.""" + kind: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Kind of the resource.""" + etag: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Entity tag is used for comparing two or more entities from the same requested resource.""" + + __flattened_items = [ + "hierarchy_identifier", + "hierarchy_identifier_trial_end_date", + "environment_name", + "offerings", + "environment_data", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.SecurityConnectorProperties"] = None, + tags: Optional[dict[str, str]] = None, + location: Optional[str] = None, + kind: Optional[str] = None, + etag: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class SecurityConnectorProperties(_Model): + """A set of properties that defines the security connector configuration. + + :ivar hierarchy_identifier: The multi cloud resource identifier (account id in case of AWS + connector, project number in case of GCP connector). + :vartype hierarchy_identifier: str + :ivar hierarchy_identifier_trial_end_date: The date on which the trial period will end, if + applicable. Trial period exists for 30 days after upgrading to payed offerings. + :vartype hierarchy_identifier_trial_end_date: ~datetime.datetime + :ivar environment_name: The multi cloud resource's cloud name. Known values are: "Azure", + "AWS", "GCP", "Github", "AzureDevOps", "GitLab", "DockerHub", and "JFrog". + :vartype environment_name: str or ~azure.mgmt.security.models.CloudName + :ivar offerings: A collection of offerings for the security connector. + :vartype offerings: list[~azure.mgmt.security.models.CloudOffering] + :ivar environment_data: The security connector environment data. + :vartype environment_data: ~azure.mgmt.security.models.EnvironmentData + """ + + hierarchy_identifier: Optional[str] = rest_field( + name="hierarchyIdentifier", visibility=["read", "create", "update", "delete", "query"] + ) + """The multi cloud resource identifier (account id in case of AWS connector, project number in + case of GCP connector).""" + hierarchy_identifier_trial_end_date: Optional[datetime.datetime] = rest_field( + name="hierarchyIdentifierTrialEndDate", visibility=["read"], format="rfc3339" + ) + """The date on which the trial period will end, if applicable. Trial period exists for 30 days + after upgrading to payed offerings.""" + environment_name: Optional[Union[str, "_models.CloudName"]] = rest_field( + name="environmentName", visibility=["read", "create", "update", "delete", "query"] + ) + """The multi cloud resource's cloud name. Known values are: \"Azure\", \"AWS\", \"GCP\", + \"Github\", \"AzureDevOps\", \"GitLab\", \"DockerHub\", and \"JFrog\".""" + offerings: Optional[list["_models.CloudOffering"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """A collection of offerings for the security connector.""" + environment_data: Optional["_models.EnvironmentData"] = rest_field( + name="environmentData", visibility=["read", "create", "update", "delete", "query"] + ) + """The security connector environment data.""" + + @overload + def __init__( + self, + *, + hierarchy_identifier: Optional[str] = None, + environment_name: Optional[Union[str, "_models.CloudName"]] = None, + offerings: Optional[list["_models.CloudOffering"]] = None, + environment_data: Optional["_models.EnvironmentData"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityContact(ProxyResource): + """Contact details and configurations for notifications coming from Microsoft Defender for Cloud. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Security contact data. + :vartype properties: ~azure.mgmt.security.models.SecurityContactProperties + """ + + properties: Optional["_models.SecurityContactProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Security contact data.""" + + __flattened_items = ["emails", "phone", "is_enabled", "notifications_sources", "notifications_by_role"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.SecurityContactProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class SecurityContactProperties(_Model): + """Describes security contact properties. + + :ivar emails: List of email addresses which will get notifications from Microsoft Defender for + Cloud by the configurations defined in this security contact. + :vartype emails: str + :ivar phone: The security contact's phone number. + :vartype phone: str + :ivar is_enabled: Indicates whether the security contact is enabled. + :vartype is_enabled: bool + :ivar notifications_sources: A collection of sources types which evaluate the email + notification. + :vartype notifications_sources: list[~azure.mgmt.security.models.NotificationsSource] + :ivar notifications_by_role: Defines whether to send email notifications from Microsoft + Defender for Cloud to persons with specific RBAC roles on the subscription. + :vartype notifications_by_role: + ~azure.mgmt.security.models.SecurityContactPropertiesNotificationsByRole + """ + + emails: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """List of email addresses which will get notifications from Microsoft Defender for Cloud by the + configurations defined in this security contact.""" + phone: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The security contact's phone number.""" + is_enabled: Optional[bool] = rest_field( + name="isEnabled", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether the security contact is enabled.""" + notifications_sources: Optional[list["_models.NotificationsSource"]] = rest_field( + name="notificationsSources", visibility=["read", "create", "update", "delete", "query"] + ) + """A collection of sources types which evaluate the email notification.""" + notifications_by_role: Optional["_models.SecurityContactPropertiesNotificationsByRole"] = rest_field( + name="notificationsByRole", visibility=["read", "create", "update", "delete", "query"] + ) + """Defines whether to send email notifications from Microsoft Defender for Cloud to persons with + specific RBAC roles on the subscription.""" + + @overload + def __init__( + self, + *, + emails: Optional[str] = None, + phone: Optional[str] = None, + is_enabled: Optional[bool] = None, + notifications_sources: Optional[list["_models.NotificationsSource"]] = None, + notifications_by_role: Optional["_models.SecurityContactPropertiesNotificationsByRole"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityContactPropertiesNotificationsByRole(_Model): # pylint: disable=name-too-long + """Defines whether to send email notifications from Microsoft Defender for Cloud to persons with + specific RBAC roles on the subscription. + + :ivar state: Defines whether to send email notifications from AMicrosoft Defender for Cloud to + persons with specific RBAC roles on the subscription. Known values are: "Passed", "Failed", + "Skipped", "Unsupported", "On", and "Off". + :vartype state: str or ~azure.mgmt.security.models.State + :ivar roles: Defines which RBAC roles will get email notifications from Microsoft Defender for + Cloud. List of allowed RBAC roles:. + :vartype roles: list[str or ~azure.mgmt.security.models.SecurityContactRole] + """ + + state: Optional[Union[str, "_models.State"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Defines whether to send email notifications from AMicrosoft Defender for Cloud to persons with + specific RBAC roles on the subscription. Known values are: \"Passed\", \"Failed\", \"Skipped\", + \"Unsupported\", \"On\", and \"Off\".""" + roles: Optional[list[Union[str, "_models.SecurityContactRole"]]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Defines which RBAC roles will get email notifications from Microsoft Defender for Cloud. List + of allowed RBAC roles:.""" + + @overload + def __init__( + self, + *, + state: Optional[Union[str, "_models.State"]] = None, + roles: Optional[list[Union[str, "_models.SecurityContactRole"]]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityOperator(ProxyResource): + """Security operator under a given subscription and pricing. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar identity: Identity for the resource. + :vartype identity: ~azure.mgmt.security.models.Identity + """ + + identity: Optional["_models.Identity"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Identity for the resource.""" + + @overload + def __init__( + self, + *, + identity: Optional["_models.Identity"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecuritySolution(ProxyResource): + """Concrete proxy resource types can be created by aliasing this type using a specific property + type. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: + :vartype properties: ~azure.mgmt.security.models.SecuritySolutionProperties + :ivar location: Location where the resource is stored. Required. + :vartype location: str + """ + + properties: Optional["_models.SecuritySolutionProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + location: str = rest_field(visibility=["read"]) + """Location where the resource is stored. Required.""" + + __flattened_items = ["security_family", "provisioning_state", "template", "protection_status"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.SecuritySolutionProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class SecuritySolutionProperties(_Model): + """SecuritySolutionProperties. + + :ivar security_family: The security family of the security solution. Required. Known values + are: "Waf", "Ngfw", "SaasWaf", and "Va". + :vartype security_family: str or ~azure.mgmt.security.models.SecurityFamily + :ivar provisioning_state: The security family provisioning State. Required. Known values are: + "Succeeded", "Creating", "Updating", "Deleting", "Failed", "Canceled", and "InProgress". + :vartype provisioning_state: str or ~azure.mgmt.security.models.ProvisioningState + :ivar template: The security solutions' template. Required. + :vartype template: str + :ivar protection_status: The security solutions' status. Required. + :vartype protection_status: str + """ + + security_family: Union[str, "_models.SecurityFamily"] = rest_field( + name="securityFamily", visibility=["read", "create", "update", "delete", "query"] + ) + """The security family of the security solution. Required. Known values are: \"Waf\", \"Ngfw\", + \"SaasWaf\", and \"Va\".""" + provisioning_state: Union[str, "_models.ProvisioningState"] = rest_field( + name="provisioningState", visibility=["read", "create", "update", "delete", "query"] + ) + """The security family provisioning State. Required. Known values are: \"Succeeded\", + \"Creating\", \"Updating\", \"Deleting\", \"Failed\", \"Canceled\", and \"InProgress\".""" + template: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The security solutions' template. Required.""" + protection_status: str = rest_field( + name="protectionStatus", visibility=["read", "create", "update", "delete", "query"] + ) + """The security solutions' status. Required.""" + + @overload + def __init__( + self, + *, + security_family: Union[str, "_models.SecurityFamily"], + provisioning_state: Union[str, "_models.ProvisioningState"], + template: str, + protection_status: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecuritySolutionsReferenceData(_Model): + """SecuritySolutionsReferenceData. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar location: Location where the resource is stored. + :vartype location: str + :ivar properties: Required. + :vartype properties: ~azure.mgmt.security.models.SecuritySolutionsReferenceDataProperties + """ + + id: Optional[str] = rest_field(visibility=["read"]) + """Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.""" + name: Optional[str] = rest_field(visibility=["read"]) + """The name of the resource.""" + type: Optional[str] = rest_field(visibility=["read"]) + """The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or + \"Microsoft.Storage/storageAccounts\".""" + system_data: Optional["_models.SystemData"] = rest_field(name="systemData", visibility=["read"]) + """Azure Resource Manager metadata containing createdBy and modifiedBy information.""" + location: Optional[str] = rest_field(visibility=["read"]) + """Location where the resource is stored.""" + properties: "_models.SecuritySolutionsReferenceDataProperties" = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Required.""" + + __flattened_items = [ + "security_family", + "alert_vendor_name", + "package_info_url", + "product_name", + "publisher", + "publisher_display_name", + "template", + ] + + @overload + def __init__( + self, + *, + properties: "_models.SecuritySolutionsReferenceDataProperties", + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class SecuritySolutionsReferenceDataList(_Model): + """SecuritySolutionsReferenceDataList. + + :ivar value: + :vartype value: list[~azure.mgmt.security.models.SecuritySolutionsReferenceData] + """ + + value: Optional[list["_models.SecuritySolutionsReferenceData"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + + @overload + def __init__( + self, + *, + value: Optional[list["_models.SecuritySolutionsReferenceData"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecuritySolutionsReferenceDataProperties(_Model): + """SecuritySolutionsReferenceDataProperties. + + :ivar security_family: The security family of the security solution. Required. Known values + are: "Waf", "Ngfw", "SaasWaf", and "Va". + :vartype security_family: str or ~azure.mgmt.security.models.SecurityFamily + :ivar alert_vendor_name: The security solutions' vendor name. Required. + :vartype alert_vendor_name: str + :ivar package_info_url: The security solutions' package info url. Required. + :vartype package_info_url: str + :ivar product_name: The security solutions' product name. Required. + :vartype product_name: str + :ivar publisher: The security solutions' publisher. Required. + :vartype publisher: str + :ivar publisher_display_name: The security solutions' publisher display name. Required. + :vartype publisher_display_name: str + :ivar template: The security solutions' template. Required. + :vartype template: str + """ + + security_family: Union[str, "_models.SecurityFamily"] = rest_field( + name="securityFamily", visibility=["read", "create", "update", "delete", "query"] + ) + """The security family of the security solution. Required. Known values are: \"Waf\", \"Ngfw\", + \"SaasWaf\", and \"Va\".""" + alert_vendor_name: str = rest_field( + name="alertVendorName", visibility=["read", "create", "update", "delete", "query"] + ) + """The security solutions' vendor name. Required.""" + package_info_url: str = rest_field( + name="packageInfoUrl", visibility=["read", "create", "update", "delete", "query"] + ) + """The security solutions' package info url. Required.""" + product_name: str = rest_field(name="productName", visibility=["read", "create", "update", "delete", "query"]) + """The security solutions' product name. Required.""" + publisher: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The security solutions' publisher. Required.""" + publisher_display_name: str = rest_field( + name="publisherDisplayName", visibility=["read", "create", "update", "delete", "query"] + ) + """The security solutions' publisher display name. Required.""" + template: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The security solutions' template. Required.""" + + @overload + def __init__( + self, + *, + security_family: Union[str, "_models.SecurityFamily"], + alert_vendor_name: str, + package_info_url: str, + product_name: str, + publisher: str, + publisher_display_name: str, + template: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityStandard(ExtensionResource): + """Security Standard on a resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Properties of a security standard. + :vartype properties: ~azure.mgmt.security.models.SecurityStandardProperties + """ + + properties: Optional["_models.SecurityStandardProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of a security standard.""" + + __flattened_items = [ + "display_name", + "standard_type", + "description", + "assessments", + "cloud_providers", + "policy_set_definition_id", + "metadata", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.SecurityStandardProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class SecurityStandardProperties(_Model): + """Describes properties of a standard. + + :ivar display_name: Display name of the standard, equivalent to the standardId. + :vartype display_name: str + :ivar standard_type: Standard type (Custom or Default or Compliance only currently). Known + values are: "Custom", "Default", and "Compliance". + :vartype standard_type: str or ~azure.mgmt.security.models.StandardType + :ivar description: Description of the standard. + :vartype description: str + :ivar assessments: List of assessment keys to apply to standard scope. + :vartype assessments: list[~azure.mgmt.security.models.PartialAssessmentProperties] + :ivar cloud_providers: List of all standard supported clouds. + :vartype cloud_providers: list[str or ~azure.mgmt.security.models.StandardSupportedCloud] + :ivar policy_set_definition_id: The policy set definition id associated with the standard. + :vartype policy_set_definition_id: str + :ivar metadata: The security standard metadata. + :vartype metadata: ~azure.mgmt.security.models.StandardMetadata + """ + + display_name: Optional[str] = rest_field( + name="displayName", visibility=["read", "create", "update", "delete", "query"] + ) + """Display name of the standard, equivalent to the standardId.""" + standard_type: Optional[Union[str, "_models.StandardType"]] = rest_field(name="standardType", visibility=["read"]) + """Standard type (Custom or Default or Compliance only currently). Known values are: \"Custom\", + \"Default\", and \"Compliance\".""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Description of the standard.""" + assessments: Optional[list["_models.PartialAssessmentProperties"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """List of assessment keys to apply to standard scope.""" + cloud_providers: Optional[list[Union[str, "_models.StandardSupportedCloud"]]] = rest_field( + name="cloudProviders", visibility=["read", "create", "update", "delete", "query"] + ) + """List of all standard supported clouds.""" + policy_set_definition_id: Optional[str] = rest_field( + name="policySetDefinitionId", visibility=["read", "create", "update", "delete", "query"] + ) + """The policy set definition id associated with the standard.""" + metadata: Optional["_models.StandardMetadata"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The security standard metadata.""" + + @overload + def __init__( + self, + *, + display_name: Optional[str] = None, + description: Optional[str] = None, + assessments: Optional[list["_models.PartialAssessmentProperties"]] = None, + cloud_providers: Optional[list[Union[str, "_models.StandardSupportedCloud"]]] = None, + policy_set_definition_id: Optional[str] = None, + metadata: Optional["_models.StandardMetadata"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecuritySubAssessment(ExtensionResource): + """Security sub-assessment on a resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Describes properties of an sub-assessment. + :vartype properties: ~azure.mgmt.security.models.SecuritySubAssessmentProperties + """ + + properties: Optional["_models.SecuritySubAssessmentProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Describes properties of an sub-assessment.""" + + __flattened_items = [ + "id", + "display_name", + "status", + "remediation", + "impact", + "category", + "description", + "time_generated", + "resource_details", + "additional_data", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.SecuritySubAssessmentProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class SecuritySubAssessmentProperties(_Model): + """Describes properties of an sub-assessment. + + :ivar id: Vulnerability ID. + :vartype id: str + :ivar display_name: User friendly display name of the sub-assessment. + :vartype display_name: str + :ivar status: Status of the sub-assessment. + :vartype status: ~azure.mgmt.security.models.SubAssessmentStatus + :ivar remediation: Information on how to remediate this sub-assessment. + :vartype remediation: str + :ivar impact: Description of the impact of this sub-assessment. + :vartype impact: str + :ivar category: Category of the sub-assessment. + :vartype category: str + :ivar description: Human readable description of the assessment status. + :vartype description: str + :ivar time_generated: The date and time the sub-assessment was generated. + :vartype time_generated: ~datetime.datetime + :ivar resource_details: Details of the resource that was assessed. + :vartype resource_details: ~azure.mgmt.security.models.CommonResourceDetails + :ivar additional_data: Details of the sub-assessment. + :vartype additional_data: ~azure.mgmt.security.models.AdditionalData + """ + + id: Optional[str] = rest_field(visibility=["read"]) + """Vulnerability ID.""" + display_name: Optional[str] = rest_field(name="displayName", visibility=["read"]) + """User friendly display name of the sub-assessment.""" + status: Optional["_models.SubAssessmentStatus"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Status of the sub-assessment.""" + remediation: Optional[str] = rest_field(visibility=["read"]) + """Information on how to remediate this sub-assessment.""" + impact: Optional[str] = rest_field(visibility=["read"]) + """Description of the impact of this sub-assessment.""" + category: Optional[str] = rest_field(visibility=["read"]) + """Category of the sub-assessment.""" + description: Optional[str] = rest_field(visibility=["read"]) + """Human readable description of the assessment status.""" + time_generated: Optional[datetime.datetime] = rest_field( + name="timeGenerated", visibility=["read"], format="rfc3339" + ) + """The date and time the sub-assessment was generated.""" + resource_details: Optional["_models.CommonResourceDetails"] = rest_field( + name="resourceDetails", visibility=["read", "create", "update", "delete", "query"] + ) + """Details of the resource that was assessed.""" + additional_data: Optional["_models.AdditionalData"] = rest_field( + name="additionalData", visibility=["read", "create", "update", "delete", "query"] + ) + """Details of the sub-assessment.""" + + @overload + def __init__( + self, + *, + status: Optional["_models.SubAssessmentStatus"] = None, + resource_details: Optional["_models.CommonResourceDetails"] = None, + additional_data: Optional["_models.AdditionalData"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SecurityTask(ProxyResource): + """Security task that we recommend to do in order to strengthen security. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Describes properties of a task. + :vartype properties: ~azure.mgmt.security.models.SecurityTaskProperties + """ + + properties: Optional["_models.SecurityTaskProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Describes properties of a task.""" + + __flattened_items = [ + "state", + "creation_time_utc", + "security_task_parameters", + "last_state_change_time_utc", + "sub_state", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.SecurityTaskProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class SecurityTaskParameters(_Model): + """Changing set of properties, depending on the task type that is derived from the name field. + + :ivar name: Name of the task type. + :vartype name: str + """ + + name: Optional[str] = rest_field(visibility=["read"]) + """Name of the task type.""" + + +class SecurityTaskProperties(_Model): + """Describes properties of a task. + + :ivar state: State of the task (Active, Resolved etc.). + :vartype state: str + :ivar creation_time_utc: The time this task was discovered in UTC. + :vartype creation_time_utc: ~datetime.datetime + :ivar security_task_parameters: Changing set of properties, depending on the task type that is + derived from the name field. + :vartype security_task_parameters: ~azure.mgmt.security.models.SecurityTaskParameters + :ivar last_state_change_time_utc: The time this task's details were last changed in UTC. + :vartype last_state_change_time_utc: ~datetime.datetime + :ivar sub_state: Additional data on the state of the task. + :vartype sub_state: str + """ + + state: Optional[str] = rest_field(visibility=["read"]) + """State of the task (Active, Resolved etc.).""" + creation_time_utc: Optional[datetime.datetime] = rest_field( + name="creationTimeUtc", visibility=["read"], format="rfc3339" + ) + """The time this task was discovered in UTC.""" + security_task_parameters: Optional["_models.SecurityTaskParameters"] = rest_field( + name="securityTaskParameters", visibility=["read", "create", "update", "delete", "query"] + ) + """Changing set of properties, depending on the task type that is derived from the name field.""" + last_state_change_time_utc: Optional[datetime.datetime] = rest_field( + name="lastStateChangeTimeUtc", visibility=["read"], format="rfc3339" + ) + """The time this task's details were last changed in UTC.""" + sub_state: Optional[str] = rest_field(name="subState", visibility=["read"]) + """Additional data on the state of the task.""" + + @overload + def __init__( + self, + *, + security_task_parameters: Optional["_models.SecurityTaskParameters"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SensitiveDataDiscoveryProperties(_Model): + """Properties of Sensitive Data Discovery. + + :ivar is_enabled: Indicates whether Sensitive Data Discovery should be enabled. + :vartype is_enabled: bool + :ivar operation_status: Upon failure or partial success. Additional data describing Sensitive + Data Discovery enable/disable operation. + :vartype operation_status: ~azure.mgmt.security.models.OperationStatus + """ + + is_enabled: Optional[bool] = rest_field( + name="isEnabled", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether Sensitive Data Discovery should be enabled.""" + operation_status: Optional["_models.OperationStatus"] = rest_field(name="operationStatus", visibility=["read"]) + """Upon failure or partial success. Additional data describing Sensitive Data Discovery + enable/disable operation.""" + + @overload + def __init__( + self, + *, + is_enabled: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SensitivityLabel(_Model): + """The sensitivity label. + + :ivar display_name: The name of the sensitivity label. + :vartype display_name: str + :ivar description: The description of the sensitivity label. + :vartype description: str + :ivar rank: The rank of the sensitivity label. Known values are: "None", "Low", "Medium", + "High", and "Critical". + :vartype rank: str or ~azure.mgmt.security.models.Rank + :ivar order: The order of the sensitivity label. + :vartype order: int + :ivar enabled: Indicates whether the label is enabled or not. + :vartype enabled: bool + """ + + display_name: Optional[str] = rest_field( + name="displayName", visibility=["read", "create", "update", "delete", "query"] + ) + """The name of the sensitivity label.""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The description of the sensitivity label.""" + rank: Optional[Union[str, "_models.Rank"]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The rank of the sensitivity label. Known values are: \"None\", \"Low\", \"Medium\", \"High\", + and \"Critical\".""" + order: Optional[int] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The order of the sensitivity label.""" + enabled: Optional[bool] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Indicates whether the label is enabled or not.""" + + @overload + def __init__( + self, + *, + display_name: Optional[str] = None, + description: Optional[str] = None, + rank: Optional[Union[str, "_models.Rank"]] = None, + order: Optional[int] = None, + enabled: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ServerVulnerabilityAssessment(ProxyResource): + """Describes the server vulnerability assessment details on a resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: describes ServerVulnerabilityAssessment properties. + :vartype properties: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentProperties + """ + + properties: Optional["_models.ServerVulnerabilityAssessmentProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """describes ServerVulnerabilityAssessment properties.""" + + __flattened_items = ["provisioning_state"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.ServerVulnerabilityAssessmentProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class ServerVulnerabilityAssessmentProperties(_Model): + """describes ServerVulnerabilityAssessment properties. + + :ivar provisioning_state: The provisioningState of the vulnerability assessment capability on + the VM. Known values are: "Succeeded", "Failed", "Canceled", "Provisioning", and + "Deprovisioning". + :vartype provisioning_state: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentPropertiesProvisioningState + """ + + provisioning_state: Optional[Union[str, "_models.ServerVulnerabilityAssessmentPropertiesProvisioningState"]] = ( + rest_field(name="provisioningState", visibility=["read"]) + ) + """The provisioningState of the vulnerability assessment capability on the VM. Known values are: + \"Succeeded\", \"Failed\", \"Canceled\", \"Provisioning\", and \"Deprovisioning\".""" + + +class ServerVulnerabilityAssessmentsAzureSettingProperties(_Model): # pylint: disable=name-too-long + """Describes the vulnerability assessments setting properties on Azure servers in the defined + scope. + + :ivar selected_provider: The selected vulnerability assessments provider on Azure servers in + the defined scope. Required. "MdeTvm" + :vartype selected_provider: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider + """ + + selected_provider: Union[str, "_models.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider"] = rest_field( + name="selectedProvider", visibility=["read", "create", "update", "delete", "query"] + ) + """The selected vulnerability assessments provider on Azure servers in the defined scope. + Required. \"MdeTvm\"""" + + @overload + def __init__( + self, + *, + selected_provider: Union[str, "_models.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider"], + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ServerVulnerabilityProperties(AdditionalData, discriminator="ServerVulnerabilityAssessment"): + """Additional context fields for server vulnerability assessment. + + :ivar type: Vulnerability Type. e.g: Vulnerability, Potential Vulnerability, Information + Gathered. + :vartype type: str + :ivar cvss: Dictionary from cvss version to cvss details object. + :vartype cvss: dict[str, ~azure.mgmt.security.models.CVSS] + :ivar patchable: Indicates whether a patch is available or not. + :vartype patchable: bool + :ivar cve: List of CVEs. + :vartype cve: list[~azure.mgmt.security.models.CVE] + :ivar threat: Threat name. + :vartype threat: str + :ivar published_time: Published time. + :vartype published_time: ~datetime.datetime + :ivar vendor_references: + :vartype vendor_references: list[~azure.mgmt.security.models.VendorReference] + :ivar assessed_resource_type: Sub-assessment resource type. Required. Default value is + "ServerVulnerabilityAssessment". + :vartype assessed_resource_type: str + """ + + type: Optional[str] = rest_field(visibility=["read"]) + """Vulnerability Type. e.g: Vulnerability, Potential Vulnerability, Information Gathered.""" + cvss: Optional[dict[str, "_models.CVSS"]] = rest_field(visibility=["read"]) + """Dictionary from cvss version to cvss details object.""" + patchable: Optional[bool] = rest_field(visibility=["read"]) + """Indicates whether a patch is available or not.""" + cve: Optional[list["_models.CVE"]] = rest_field(visibility=["read"]) + """List of CVEs.""" + threat: Optional[str] = rest_field(visibility=["read"]) + """Threat name.""" + published_time: Optional[datetime.datetime] = rest_field( + name="publishedTime", visibility=["read"], format="rfc3339" + ) + """Published time.""" + vendor_references: Optional[list["_models.VendorReference"]] = rest_field( + name="vendorReferences", visibility=["read"] + ) + assessed_resource_type: Literal["ServerVulnerabilityAssessment"] = rest_discriminator(name="assessedResourceType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Sub-assessment resource type. Required. Default value is \"ServerVulnerabilityAssessment\".""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.assessed_resource_type = "ServerVulnerabilityAssessment" # type: ignore + + +class SqlServerVulnerabilityProperties(AdditionalData, discriminator="SqlServerVulnerability"): + """Details of the resource that was assessed. + + :ivar type: The resource type the sub assessment refers to in its resource details. + :vartype type: str + :ivar query: The T-SQL query that runs on your SQL database to perform the particular check. + :vartype query: str + :ivar assessed_resource_type: Sub-assessment resource type. Required. SqlServerVulnerability. + :vartype assessed_resource_type: str or ~azure.mgmt.security.models.SQL_SERVER_VULNERABILITY + """ + + type: Optional[str] = rest_field(visibility=["read"]) + """The resource type the sub assessment refers to in its resource details.""" + query: Optional[str] = rest_field(visibility=["read"]) + """The T-SQL query that runs on your SQL database to perform the particular check.""" + assessed_resource_type: Literal[AssessedResourceType.SQL_SERVER_VULNERABILITY] = rest_discriminator(name="assessedResourceType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Sub-assessment resource type. Required. SqlServerVulnerability.""" + + @overload + def __init__( + self, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.assessed_resource_type = AssessedResourceType.SQL_SERVER_VULNERABILITY # type: ignore + + +class SqlVulnerabilityAssessmentScanOperationResult(Resource): # pylint: disable=name-too-long + """Represents the result of a SQL Vulnerability Assessment scan operation, wrapped in the ARM + resource envelope. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Represents the properties of a SQL Vulnerability Assessment scan operation + result. + :vartype properties: + ~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResultProperties + """ + + properties: Optional["_models.SqlVulnerabilityAssessmentScanOperationResultProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Represents the properties of a SQL Vulnerability Assessment scan operation result.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.SqlVulnerabilityAssessmentScanOperationResultProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SqlVulnerabilityAssessmentScanOperationResultProperties(_Model): # pylint: disable=name-too-long + """Represents the properties of a SQL Vulnerability Assessment scan operation result. + + :ivar operation_id: Gets or sets the operation id. + :vartype operation_id: str + :ivar scan_status: The scan operation status. Known values are: "Passed", "Failed", + "FailedToRun", and "InProgress". + :vartype scan_status: str or ~azure.mgmt.security.models.ScanOperationStatus + """ + + operation_id: Optional[str] = rest_field( + name="operationId", visibility=["read", "create", "update", "delete", "query"] + ) + """Gets or sets the operation id.""" + scan_status: Optional[Union[str, "_models.ScanOperationStatus"]] = rest_field( + name="scanStatus", visibility=["read", "create", "update", "delete", "query"] + ) + """The scan operation status. Known values are: \"Passed\", \"Failed\", \"FailedToRun\", and + \"InProgress\".""" + + @overload + def __init__( + self, + *, + operation_id: Optional[str] = None, + scan_status: Optional[Union[str, "_models.ScanOperationStatus"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SqlVulnerabilityAssessmentSettings(ExtensionResource): + """SQL Vulnerability Assessment settings resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: SQL Vulnerability Assessment settings properties. + :vartype properties: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettingsProperties + """ + + properties: Optional["_models.SqlVulnerabilityAssessmentSettingsProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """SQL Vulnerability Assessment settings properties.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.SqlVulnerabilityAssessmentSettingsProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SqlVulnerabilityAssessmentSettingsProperties(_Model): # pylint: disable=name-too-long + """SQL Vulnerability Assessment settings properties. + + :ivar creation_time: The creation time of the SQL Vulnerability Assessment settings. + :vartype creation_time: ~datetime.datetime + :ivar state: Represents the state of a SQL Vulnerability Assessment. Known values are: + "Enabled" and "Disabled". + :vartype state: str or ~azure.mgmt.security.models.SqlVulnerabilityAssessmentState + """ + + creation_time: Optional[datetime.datetime] = rest_field(name="creationTime", visibility=["read"], format="rfc3339") + """The creation time of the SQL Vulnerability Assessment settings.""" + state: Optional[Union[str, "_models.SqlVulnerabilityAssessmentState"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Represents the state of a SQL Vulnerability Assessment. Known values are: \"Enabled\" and + \"Disabled\".""" + + @overload + def __init__( + self, + *, + state: Optional[Union[str, "_models.SqlVulnerabilityAssessmentState"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Standard(ProxyResource): + """Security Standard on a resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Properties of a security standard. + :vartype properties: ~azure.mgmt.security.models.StandardProperties + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. + :vartype location: str + :ivar kind: Kind of the resource. + :vartype kind: str + :ivar etag: Entity tag is used for comparing two or more entities from the same requested + resource. + :vartype etag: str + """ + + properties: Optional["_models.StandardProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of a security standard.""" + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + location: Optional[str] = rest_field(visibility=["read", "create"]) + """The geo-location where the resource lives.""" + kind: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Kind of the resource.""" + etag: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Entity tag is used for comparing two or more entities from the same requested resource.""" + + __flattened_items = ["display_name", "standard_type", "description", "category", "components", "supported_clouds"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.StandardProperties"] = None, + tags: Optional[dict[str, str]] = None, + location: Optional[str] = None, + kind: Optional[str] = None, + etag: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class StandardAssignment(ExtensionResource): + """Security Assignment on a resource group over a given scope. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Properties of a standard assignments assignment. + :vartype properties: ~azure.mgmt.security.models.StandardAssignmentProperties + """ + + properties: Optional["_models.StandardAssignmentProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of a standard assignments assignment.""" + + __flattened_items = [ + "display_name", + "description", + "assigned_standard", + "effect", + "excluded_scopes", + "expires_on", + "exemption_data", + "attestation_data", + "metadata", + ] + + @overload + def __init__( + self, + *, + properties: Optional["_models.StandardAssignmentProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class StandardAssignmentMetadata(_Model): + """The standard assignment metadata. + + :ivar created_by: Standard assignment Created by object id (GUID). + :vartype created_by: str + :ivar created_on: Standard assignment creation date. + :vartype created_on: ~datetime.datetime + :ivar last_updated_by: Standard assignment last updated by object id (GUID). + :vartype last_updated_by: str + :ivar last_updated_on: Standard assignment last update date. + :vartype last_updated_on: ~datetime.datetime + """ + + created_by: Optional[str] = rest_field(name="createdBy", visibility=["read"]) + """Standard assignment Created by object id (GUID).""" + created_on: Optional[datetime.datetime] = rest_field(name="createdOn", visibility=["read"], format="rfc3339") + """Standard assignment creation date.""" + last_updated_by: Optional[str] = rest_field(name="lastUpdatedBy", visibility=["read"]) + """Standard assignment last updated by object id (GUID).""" + last_updated_on: Optional[datetime.datetime] = rest_field( + name="lastUpdatedOn", visibility=["read"], format="rfc3339" + ) + """Standard assignment last update date.""" + + +class StandardAssignmentProperties(_Model): + """Describes the properties of a standardAssignment. + + :ivar display_name: Display name of the standardAssignment. + :vartype display_name: str + :ivar description: Description of the standardAssignment. + :vartype description: str + :ivar assigned_standard: Standard item with key as applied to this standard assignment over the + given scope. + :vartype assigned_standard: ~azure.mgmt.security.models.AssignedStandardItem + :ivar effect: Expected effect of this assignment (Audit/Exempt/Attest). Known values are: + "Audit", "Exempt", and "Attest". + :vartype effect: str or ~azure.mgmt.security.models.Effect + :ivar excluded_scopes: Excluded scopes, filter out the descendants of the scope (on management + scopes). + :vartype excluded_scopes: list[str] + :ivar expires_on: Expiration date of this assignment as a full ISO date. + :vartype expires_on: ~datetime.datetime + :ivar exemption_data: Additional data about assignment that has Exempt effect. + :vartype exemption_data: ~azure.mgmt.security.models.StandardAssignmentPropertiesExemptionData + :ivar attestation_data: Additional data about assignment that has Attest effect. + :vartype attestation_data: + ~azure.mgmt.security.models.StandardAssignmentPropertiesAttestationData + :ivar metadata: The standard assignment metadata. + :vartype metadata: ~azure.mgmt.security.models.StandardAssignmentMetadata + """ + + display_name: Optional[str] = rest_field( + name="displayName", visibility=["read", "create", "update", "delete", "query"] + ) + """Display name of the standardAssignment.""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Description of the standardAssignment.""" + assigned_standard: Optional["_models.AssignedStandardItem"] = rest_field( + name="assignedStandard", visibility=["read", "create", "update", "delete", "query"] + ) + """Standard item with key as applied to this standard assignment over the given scope.""" + effect: Optional[Union[str, "_models.Effect"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Expected effect of this assignment (Audit/Exempt/Attest). Known values are: \"Audit\", + \"Exempt\", and \"Attest\".""" + excluded_scopes: Optional[list[str]] = rest_field( + name="excludedScopes", visibility=["read", "create", "update", "delete", "query"] + ) + """Excluded scopes, filter out the descendants of the scope (on management scopes).""" + expires_on: Optional[datetime.datetime] = rest_field( + name="expiresOn", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """Expiration date of this assignment as a full ISO date.""" + exemption_data: Optional["_models.StandardAssignmentPropertiesExemptionData"] = rest_field( + name="exemptionData", visibility=["read", "create", "update", "delete", "query"] + ) + """Additional data about assignment that has Exempt effect.""" + attestation_data: Optional["_models.StandardAssignmentPropertiesAttestationData"] = rest_field( + name="attestationData", visibility=["read", "create", "update", "delete", "query"] + ) + """Additional data about assignment that has Attest effect.""" + metadata: Optional["_models.StandardAssignmentMetadata"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The standard assignment metadata.""" + + @overload + def __init__( + self, + *, + display_name: Optional[str] = None, + description: Optional[str] = None, + assigned_standard: Optional["_models.AssignedStandardItem"] = None, + effect: Optional[Union[str, "_models.Effect"]] = None, + excluded_scopes: Optional[list[str]] = None, + expires_on: Optional[datetime.datetime] = None, + exemption_data: Optional["_models.StandardAssignmentPropertiesExemptionData"] = None, + attestation_data: Optional["_models.StandardAssignmentPropertiesAttestationData"] = None, + metadata: Optional["_models.StandardAssignmentMetadata"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class StandardAssignmentPropertiesAttestationData(_Model): # pylint: disable=name-too-long + """Additional data about assignment that has Attest effect. + + :ivar compliance_state: Attest category of this assignment. Known values are: "unknown", + "compliant", and "nonCompliant". + :vartype compliance_state: str or ~azure.mgmt.security.models.AttestationComplianceState + :ivar assigned_assessment: Component item with key as applied to this standard assignment over + the given scope. + :vartype assigned_assessment: ~azure.mgmt.security.models.AssignedAssessmentItem + :ivar compliance_date: Attestation compliance date. + :vartype compliance_date: ~datetime.datetime + :ivar evidence: Array of links to attestation evidence. + :vartype evidence: list[~azure.mgmt.security.models.AttestationEvidence] + """ + + compliance_state: Optional[Union[str, "_models.AttestationComplianceState"]] = rest_field( + name="complianceState", visibility=["read", "create", "update", "delete", "query"] + ) + """Attest category of this assignment. Known values are: \"unknown\", \"compliant\", and + \"nonCompliant\".""" + assigned_assessment: Optional["_models.AssignedAssessmentItem"] = rest_field( + name="assignedAssessment", visibility=["read", "create", "update", "delete", "query"] + ) + """Component item with key as applied to this standard assignment over the given scope.""" + compliance_date: Optional[datetime.datetime] = rest_field( + name="complianceDate", visibility=["read"], format="rfc3339" + ) + """Attestation compliance date.""" + evidence: Optional[list["_models.AttestationEvidence"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Array of links to attestation evidence.""" + + @overload + def __init__( + self, + *, + compliance_state: Optional[Union[str, "_models.AttestationComplianceState"]] = None, + assigned_assessment: Optional["_models.AssignedAssessmentItem"] = None, + evidence: Optional[list["_models.AttestationEvidence"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class StandardAssignmentPropertiesExemptionData(_Model): # pylint: disable=name-too-long + """Additional data about assignment that has Exempt effect. + + :ivar exemption_category: Exemption category of this assignment. Known values are: "waiver" and + "mitigated". + :vartype exemption_category: str or ~azure.mgmt.security.models.ExemptionCategory + :ivar assigned_assessment: Component item with key as applied to this standard assignment over + the given scope. + :vartype assigned_assessment: ~azure.mgmt.security.models.AssignedAssessmentItem + """ + + exemption_category: Optional[Union[str, "_models.ExemptionCategory"]] = rest_field( + name="exemptionCategory", visibility=["read", "create", "update", "delete", "query"] + ) + """Exemption category of this assignment. Known values are: \"waiver\" and \"mitigated\".""" + assigned_assessment: Optional["_models.AssignedAssessmentItem"] = rest_field( + name="assignedAssessment", visibility=["read", "create", "update", "delete", "query"] + ) + """Component item with key as applied to this standard assignment over the given scope.""" + + @overload + def __init__( + self, + *, + exemption_category: Optional[Union[str, "_models.ExemptionCategory"]] = None, + assigned_assessment: Optional["_models.AssignedAssessmentItem"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class StandardComponentProperties(_Model): + """Describes properties of an component as related to the standard. + + :ivar key: Component Key matching componentMetadata. + :vartype key: str + """ + + key: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Component Key matching componentMetadata.""" + + @overload + def __init__( + self, + *, + key: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class StandardMetadata(_Model): + """The standard metadata. + + :ivar created_by: Standard Created by object id (GUID). + :vartype created_by: str + :ivar created_on: Standard creation date. + :vartype created_on: ~datetime.datetime + :ivar last_updated_by: Standard last updated by object id (GUID). + :vartype last_updated_by: str + :ivar last_updated_on: Standard last update date. + :vartype last_updated_on: ~datetime.datetime + """ + + created_by: Optional[str] = rest_field(name="createdBy", visibility=["read"]) + """Standard Created by object id (GUID).""" + created_on: Optional[datetime.datetime] = rest_field(name="createdOn", visibility=["read"], format="rfc3339") + """Standard creation date.""" + last_updated_by: Optional[str] = rest_field(name="lastUpdatedBy", visibility=["read"]) + """Standard last updated by object id (GUID).""" + last_updated_on: Optional[datetime.datetime] = rest_field( + name="lastUpdatedOn", visibility=["read"], format="rfc3339" + ) + """Standard last update date.""" + + +class StandardProperties(_Model): + """Describes properties of a standard. + + :ivar display_name: display name of the standard, equivalent to the standardId. + :vartype display_name: str + :ivar standard_type: standard type (Custom or BuiltIn only currently). + :vartype standard_type: str + :ivar description: description of the standard. + :vartype description: str + :ivar category: category of the standard provided. + :vartype category: str + :ivar components: List of component objects containing component unique keys (such as + assessment keys) to apply to standard scope. Currently only supports assessment keys. + :vartype components: list[~azure.mgmt.security.models.StandardComponentProperties] + :ivar supported_clouds: List of all standard supported clouds. + :vartype supported_clouds: list[str or ~azure.mgmt.security.models.StandardSupportedClouds] + """ + + display_name: Optional[str] = rest_field( + name="displayName", visibility=["read", "create", "update", "delete", "query"] + ) + """display name of the standard, equivalent to the standardId.""" + standard_type: Optional[str] = rest_field(name="standardType", visibility=["read"]) + """standard type (Custom or BuiltIn only currently).""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """description of the standard.""" + category: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """category of the standard provided.""" + components: Optional[list["_models.StandardComponentProperties"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """List of component objects containing component unique keys (such as assessment keys) to apply + to standard scope. Currently only supports assessment keys.""" + supported_clouds: Optional[list[Union[str, "_models.StandardSupportedClouds"]]] = rest_field( + name="supportedClouds", visibility=["read", "create", "update", "delete", "query"] + ) + """List of all standard supported clouds.""" + + @overload + def __init__( + self, + *, + display_name: Optional[str] = None, + description: Optional[str] = None, + category: Optional[str] = None, + components: Optional[list["_models.StandardComponentProperties"]] = None, + supported_clouds: Optional[list[Union[str, "_models.StandardSupportedClouds"]]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class StatusAutoGenerated(_Model): + """The status of the health report. + + :ivar code: The status of the health report. Known values are: "Healthy", "NotHealthy", and + "NotApplicable". + :vartype code: str or ~azure.mgmt.security.models.StatusName + :ivar reason: The reason of the given status. + :vartype reason: str + :ivar last_scanned_date: The date of when the resource was scanned in the last time. + :vartype last_scanned_date: ~datetime.datetime + :ivar status_change_date: The date of when the status of the health report was changed in the + last time. + :vartype status_change_date: ~datetime.datetime + :ivar first_evaluation_date: The date of when the resource of the health report was scanned in + the first time. + :vartype first_evaluation_date: ~datetime.datetime + """ + + code: Optional[Union[str, "_models.StatusName"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The status of the health report. Known values are: \"Healthy\", \"NotHealthy\", and + \"NotApplicable\".""" + reason: Optional[str] = rest_field(visibility=["read"]) + """The reason of the given status.""" + last_scanned_date: Optional[datetime.datetime] = rest_field( + name="lastScannedDate", visibility=["read"], format="rfc3339" + ) + """The date of when the resource was scanned in the last time.""" + status_change_date: Optional[datetime.datetime] = rest_field( + name="statusChangeDate", visibility=["read"], format="rfc3339" + ) + """The date of when the status of the health report was changed in the last time.""" + first_evaluation_date: Optional[datetime.datetime] = rest_field( + name="firstEvaluationDate", visibility=["read"], format="rfc3339" + ) + """The date of when the resource of the health report was scanned in the first time.""" + + @overload + def __init__( + self, + *, + code: Optional[Union[str, "_models.StatusName"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SubAssessmentStatus(_Model): + """Status of the sub-assessment. + + :ivar code: Programmatic code for the status of the assessment. Known values are: "Healthy", + "Unhealthy", and "NotApplicable". + :vartype code: str or ~azure.mgmt.security.models.SubAssessmentStatusCode + :ivar cause: Programmatic code for the cause of the assessment status. + :vartype cause: str + :ivar description: Human readable description of the assessment status. + :vartype description: str + :ivar severity: The sub-assessment severity level. Known values are: "Low", "Medium", "High", + and "Critical". + :vartype severity: str or ~azure.mgmt.security.models.Severity + """ + + code: Optional[Union[str, "_models.SubAssessmentStatusCode"]] = rest_field(visibility=["read"]) + """Programmatic code for the status of the assessment. Known values are: \"Healthy\", + \"Unhealthy\", and \"NotApplicable\".""" + cause: Optional[str] = rest_field(visibility=["read"]) + """Programmatic code for the cause of the assessment status.""" + description: Optional[str] = rest_field(visibility=["read"]) + """Human readable description of the assessment status.""" + severity: Optional[Union[str, "_models.Severity"]] = rest_field(visibility=["read"]) + """The sub-assessment severity level. Known values are: \"Low\", \"Medium\", \"High\", and + \"Critical\".""" + + +class SuppressionAlertsScope(_Model): + """SuppressionAlertsScope. + + :ivar all_of: All the conditions inside need to be true in order to suppress the alert. + Required. + :vartype all_of: list[~azure.mgmt.security.models.ScopeElement] + """ + + all_of: list["_models.ScopeElement"] = rest_field( + name="allOf", visibility=["read", "create", "update", "delete", "query"] + ) + """All the conditions inside need to be true in order to suppress the alert. Required.""" + + @overload + def __init__( + self, + *, + all_of: list["_models.ScopeElement"], + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class SystemData(_Model): + """Metadata pertaining to creation and last modification of the resource. + + :ivar created_by: The identity that created the resource. + :vartype created_by: str + :ivar created_by_type: The type of identity that created the resource. Known values are: + "User", "Application", "ManagedIdentity", and "Key". + :vartype created_by_type: str or ~azure.mgmt.security.models.CreatedByType + :ivar created_at: The timestamp of resource creation (UTC). + :vartype created_at: ~datetime.datetime + :ivar last_modified_by: The identity that last modified the resource. + :vartype last_modified_by: str + :ivar last_modified_by_type: The type of identity that last modified the resource. Known values + are: "User", "Application", "ManagedIdentity", and "Key". + :vartype last_modified_by_type: str or ~azure.mgmt.security.models.CreatedByType + :ivar last_modified_at: The timestamp of resource last modification (UTC). + :vartype last_modified_at: ~datetime.datetime + """ + + created_by: Optional[str] = rest_field(name="createdBy", visibility=["read", "create", "update", "delete", "query"]) + """The identity that created the resource.""" + created_by_type: Optional[Union[str, "_models.CreatedByType"]] = rest_field( + name="createdByType", visibility=["read", "create", "update", "delete", "query"] + ) + """The type of identity that created the resource. Known values are: \"User\", \"Application\", + \"ManagedIdentity\", and \"Key\".""" + created_at: Optional[datetime.datetime] = rest_field( + name="createdAt", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """The timestamp of resource creation (UTC).""" + last_modified_by: Optional[str] = rest_field( + name="lastModifiedBy", visibility=["read", "create", "update", "delete", "query"] + ) + """The identity that last modified the resource.""" + last_modified_by_type: Optional[Union[str, "_models.CreatedByType"]] = rest_field( + name="lastModifiedByType", visibility=["read", "create", "update", "delete", "query"] + ) + """The type of identity that last modified the resource. Known values are: \"User\", + \"Application\", \"ManagedIdentity\", and \"Key\".""" + last_modified_at: Optional[datetime.datetime] = rest_field( + name="lastModifiedAt", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """The timestamp of resource last modification (UTC).""" + + @overload + def __init__( + self, + *, + created_by: Optional[str] = None, + created_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, + created_at: Optional[datetime.datetime] = None, + last_modified_by: Optional[str] = None, + last_modified_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, + last_modified_at: Optional[datetime.datetime] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class TagsResource(_Model): + """A container holding only the Tags for a resource, allowing the user to update the tags. + + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + """ + + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + + @overload + def __init__( + self, + *, + tags: Optional[dict[str, str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class TargetBranchConfiguration(_Model): + """Repository branch configuration for PR Annotations. + + :ivar branch_names: Gets or sets branches that should have annotations. + :vartype branch_names: list[str] + :ivar annotate_default_branch: Configuration of PR Annotations on default branch. + + Enabled - PR Annotations are enabled on the resource's default branch. + Disabled - PR Annotations are disabled on the resource's default branch. Known values are: + "Disabled" and "Enabled". + :vartype annotate_default_branch: str or ~azure.mgmt.security.models.AnnotateDefaultBranchState + """ + + branch_names: Optional[list[str]] = rest_field( + name="branchNames", visibility=["read", "create", "update", "delete", "query"] + ) + """Gets or sets branches that should have annotations.""" + annotate_default_branch: Optional[Union[str, "_models.AnnotateDefaultBranchState"]] = rest_field( + name="annotateDefaultBranch", visibility=["read", "create", "update", "delete", "query"] + ) + """Configuration of PR Annotations on default branch. + + Enabled - PR Annotations are enabled on the resource's default branch. + Disabled - PR Annotations are disabled on the resource's default branch. Known values are: + \"Disabled\" and \"Enabled\".""" + + @overload + def __init__( + self, + *, + branch_names: Optional[list[str]] = None, + annotate_default_branch: Optional[Union[str, "_models.AnnotateDefaultBranchState"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ThresholdCustomAlertRule(CustomAlertRule, discriminator="ThresholdCustomAlertRule"): + """A custom alert rule that checks if a value (depends on the custom alert type) is within the + given range. + + :ivar display_name: The display name of the custom alert. + :vartype display_name: str + :ivar description: The description of the custom alert. + :vartype description: str + :ivar is_enabled: Status of the custom alert. Required. + :vartype is_enabled: bool + :ivar min_threshold: The minimum threshold. Required. + :vartype min_threshold: int + :ivar max_threshold: The maximum threshold. Required. + :vartype max_threshold: int + :ivar rule_type: Required. Default value is "ThresholdCustomAlertRule". + :vartype rule_type: str + """ + + min_threshold: int = rest_field(name="minThreshold", visibility=["read", "create", "update", "delete", "query"]) + """The minimum threshold. Required.""" + max_threshold: int = rest_field(name="maxThreshold", visibility=["read", "create", "update", "delete", "query"]) + """The maximum threshold. Required.""" + rule_type: Literal["ThresholdCustomAlertRule"] = rest_discriminator(name="ruleType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Required. Default value is \"ThresholdCustomAlertRule\".""" + + @overload + def __init__( + self, + *, + is_enabled: bool, + min_threshold: int, + max_threshold: int, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.rule_type = "ThresholdCustomAlertRule" # type: ignore + + +class TimeWindowCustomAlertRule(CustomAlertRule, discriminator="TimeWindowCustomAlertRule"): + """A custom alert rule that checks if the number of activities (depends on the custom alert type) + in a time window is within the given range. + + :ivar display_name: The display name of the custom alert. + :vartype display_name: str + :ivar description: The description of the custom alert. + :vartype description: str + :ivar is_enabled: Status of the custom alert. Required. + :vartype is_enabled: bool + :ivar min_threshold: The minimum threshold. Required. + :vartype min_threshold: int + :ivar max_threshold: The maximum threshold. Required. + :vartype max_threshold: int + :ivar time_window_size: The time window size in iso8601 format. Required. + :vartype time_window_size: ~datetime.timedelta + :ivar rule_type: Required. Default value is "TimeWindowCustomAlertRule". + :vartype rule_type: str + """ + + min_threshold: int = rest_field(name="minThreshold", visibility=["read", "create", "update", "delete", "query"]) + """The minimum threshold. Required.""" + max_threshold: int = rest_field(name="maxThreshold", visibility=["read", "create", "update", "delete", "query"]) + """The maximum threshold. Required.""" + time_window_size: datetime.timedelta = rest_field( + name="timeWindowSize", visibility=["read", "create", "update", "delete", "query"] + ) + """The time window size in iso8601 format. Required.""" + rule_type: Literal["TimeWindowCustomAlertRule"] = rest_discriminator(name="ruleType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Required. Default value is \"TimeWindowCustomAlertRule\".""" + + @overload + def __init__( + self, + *, + is_enabled: bool, + min_threshold: int, + max_threshold: int, + time_window_size: datetime.timedelta, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.rule_type = "TimeWindowCustomAlertRule" # type: ignore + + +class TopologyResource(ProxyResource): + """Concrete proxy resource types can be created by aliasing this type using a specific property + type. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: + :vartype properties: ~azure.mgmt.security.models.TopologyResourceProperties + :ivar location: Location where the resource is stored. Required. + :vartype location: str + """ + + properties: Optional["_models.TopologyResourceProperties"] = rest_field(visibility=["read"]) + location: str = rest_field(visibility=["read"]) + """Location where the resource is stored. Required.""" + + __flattened_items = ["calculated_date_time", "topology_resources"] + + +class TopologyResourceProperties(_Model): + """TopologyResourceProperties. + + :ivar calculated_date_time: The UTC time on which the topology was calculated. + :vartype calculated_date_time: ~datetime.datetime + :ivar topology_resources: Azure resources which are part of this topology resource. + :vartype topology_resources: list[~azure.mgmt.security.models.TopologySingleResource] + """ + + calculated_date_time: Optional[datetime.datetime] = rest_field( + name="calculatedDateTime", visibility=["read"], format="rfc3339" + ) + """The UTC time on which the topology was calculated.""" + topology_resources: Optional[list["_models.TopologySingleResource"]] = rest_field( + name="topologyResources", visibility=["read"] + ) + """Azure resources which are part of this topology resource.""" + + +class TopologySingleResource(_Model): + """TopologySingleResource. + + :ivar resource_id: Azure resource id. + :vartype resource_id: str + :ivar severity: The security severity of the resource. + :vartype severity: str + :ivar recommendations_exist: Indicates if the resource has security recommendations. + :vartype recommendations_exist: bool + :ivar network_zones: Indicates the resource connectivity level to the Internet (InternetFacing, + Internal ,etc.). + :vartype network_zones: str + :ivar topology_score: Score of the resource based on its security severity. + :vartype topology_score: int + :ivar location: The location of this resource. + :vartype location: str + :ivar parents: Azure resources connected to this resource which are in higher level in the + topology view. + :vartype parents: list[~azure.mgmt.security.models.TopologySingleResourceParent] + :ivar children: Azure resources connected to this resource which are in lower level in the + topology view. + :vartype children: list[~azure.mgmt.security.models.TopologySingleResourceChild] + """ + + resource_id: Optional[str] = rest_field(name="resourceId", visibility=["read"]) + """Azure resource id.""" + severity: Optional[str] = rest_field(visibility=["read"]) + """The security severity of the resource.""" + recommendations_exist: Optional[bool] = rest_field(name="recommendationsExist", visibility=["read"]) + """Indicates if the resource has security recommendations.""" + network_zones: Optional[str] = rest_field(name="networkZones", visibility=["read"]) + """Indicates the resource connectivity level to the Internet (InternetFacing, Internal ,etc.).""" + topology_score: Optional[int] = rest_field(name="topologyScore", visibility=["read"]) + """Score of the resource based on its security severity.""" + location: Optional[str] = rest_field(visibility=["read"]) + """The location of this resource.""" + parents: Optional[list["_models.TopologySingleResourceParent"]] = rest_field(visibility=["read"]) + """Azure resources connected to this resource which are in higher level in the topology view.""" + children: Optional[list["_models.TopologySingleResourceChild"]] = rest_field(visibility=["read"]) + """Azure resources connected to this resource which are in lower level in the topology view.""" + + +class TopologySingleResourceChild(_Model): + """TopologySingleResourceChild. + + :ivar resource_id: Azure resource id which serves as child resource in topology view. + :vartype resource_id: str + """ + + resource_id: Optional[str] = rest_field(name="resourceId", visibility=["read"]) + """Azure resource id which serves as child resource in topology view.""" + + +class TopologySingleResourceParent(_Model): + """TopologySingleResourceParent. + + :ivar resource_id: Azure resource id which serves as parent resource in topology view. + :vartype resource_id: str + """ + + resource_id: Optional[str] = rest_field(name="resourceId", visibility=["read"]) + """Azure resource id which serves as parent resource in topology view.""" + + +class UpdateIotSecuritySolutionData(TagsResource): + """UpdateIotSecuritySolutionData. + + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar properties: Security Solution data. + :vartype properties: ~azure.mgmt.security.models.UpdateIoTSecuritySolutionProperties + """ + + properties: Optional["_models.UpdateIoTSecuritySolutionProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Security Solution data.""" + + __flattened_items = ["user_defined_resources", "recommendations_configuration"] + + @overload + def __init__( + self, + *, + tags: Optional[dict[str, str]] = None, + properties: Optional["_models.UpdateIoTSecuritySolutionProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class UpdateIoTSecuritySolutionProperties(_Model): + """Update Security Solution setting data. + + :ivar user_defined_resources: Properties of the IoT Security solution's user defined resources. + :vartype user_defined_resources: ~azure.mgmt.security.models.UserDefinedResourcesProperties + :ivar recommendations_configuration: List of the configuration status for each recommendation + type. + :vartype recommendations_configuration: + list[~azure.mgmt.security.models.RecommendationConfigurationProperties] + """ + + user_defined_resources: Optional["_models.UserDefinedResourcesProperties"] = rest_field( + name="userDefinedResources", visibility=["read", "create", "update", "delete", "query"] + ) + """Properties of the IoT Security solution's user defined resources.""" + recommendations_configuration: Optional[list["_models.RecommendationConfigurationProperties"]] = rest_field( + name="recommendationsConfiguration", visibility=["read", "create", "update", "delete", "query"] + ) + """List of the configuration status for each recommendation type.""" + + @overload + def __init__( + self, + *, + user_defined_resources: Optional["_models.UserDefinedResourcesProperties"] = None, + recommendations_configuration: Optional[list["_models.RecommendationConfigurationProperties"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class UpdateSensitivitySettingsRequest(_Model): + """Request to update data sensitivity settings for sensitive data discovery. + + :ivar sensitive_info_types_ids: List of selected sensitive info types' IDs. Required. + :vartype sensitive_info_types_ids: list[str] + :ivar sensitivity_threshold_label_order: The order of the sensitivity threshold label. Any + label at or above this order will be considered sensitive. If set to -1, sensitivity by labels + is turned off. + :vartype sensitivity_threshold_label_order: float + :ivar sensitivity_threshold_label_id: The id of the sensitivity threshold label. Any label at + or above this rank will be considered sensitive. + :vartype sensitivity_threshold_label_id: str + """ + + sensitive_info_types_ids: list[str] = rest_field( + name="sensitiveInfoTypesIds", visibility=["read", "create", "update", "delete", "query"] + ) + """List of selected sensitive info types' IDs. Required.""" + sensitivity_threshold_label_order: Optional[float] = rest_field( + name="sensitivityThresholdLabelOrder", visibility=["read", "create", "update", "delete", "query"] + ) + """The order of the sensitivity threshold label. Any label at or above this order will be + considered sensitive. If set to -1, sensitivity by labels is turned off.""" + sensitivity_threshold_label_id: Optional[str] = rest_field( + name="sensitivityThresholdLabelId", visibility=["read", "create", "update", "delete", "query"] + ) + """The id of the sensitivity threshold label. Any label at or above this rank will be considered + sensitive.""" + + @overload + def __init__( + self, + *, + sensitive_info_types_ids: list[str], + sensitivity_threshold_label_order: Optional[float] = None, + sensitivity_threshold_label_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class UserDefinedResourcesProperties(_Model): + """Properties of the IoT Security solution's user defined resources. + + :ivar query: Azure Resource Graph query which represents the security solution's user defined + resources. Required to start with "where type != "Microsoft.Devices/IotHubs"". Required. + :vartype query: str + :ivar query_subscriptions: List of Azure subscription ids on which the user defined resources + query should be executed. Required. + :vartype query_subscriptions: list[str] + """ + + query: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Azure Resource Graph query which represents the security solution's user defined resources. + Required to start with \"where type != \"Microsoft.Devices/IotHubs\"\". Required.""" + query_subscriptions: list[str] = rest_field( + name="querySubscriptions", visibility=["read", "create", "update", "delete", "query"] + ) + """List of Azure subscription ids on which the user defined resources query should be executed. + Required.""" + + @overload + def __init__( + self, + *, + query: str, + query_subscriptions: list[str], + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class VaRule(_Model): + """vulnerability assessment rule metadata details. + + :ivar rule_id: The rule Id. + :vartype rule_id: str + :ivar severity: The rule severity. Known values are: "High", "Medium", "Low", "Informational", + and "Obsolete". + :vartype severity: str or ~azure.mgmt.security.models.RuleSeverity + :ivar category: The rule category. + :vartype category: str + :ivar rule_type: The rule type. Known values are: "Binary", "BaselineExpected", "PositiveList", + and "NegativeList". + :vartype rule_type: str or ~azure.mgmt.security.models.RuleType + :ivar title: The rule title. + :vartype title: str + :ivar description: The rule description. + :vartype description: str + :ivar rationale: The rule rationale. + :vartype rationale: str + :ivar query_check: The rule query details. + :vartype query_check: ~azure.mgmt.security.models.QueryCheck + :ivar benchmark_references: The benchmark references. + :vartype benchmark_references: list[~azure.mgmt.security.models.BenchmarkReference] + """ + + rule_id: Optional[str] = rest_field(name="ruleId", visibility=["read", "create", "update", "delete", "query"]) + """The rule Id.""" + severity: Optional[Union[str, "_models.RuleSeverity"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The rule severity. Known values are: \"High\", \"Medium\", \"Low\", \"Informational\", and + \"Obsolete\".""" + category: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The rule category.""" + rule_type: Optional[Union[str, "_models.RuleType"]] = rest_field( + name="ruleType", visibility=["read", "create", "update", "delete", "query"] + ) + """The rule type. Known values are: \"Binary\", \"BaselineExpected\", \"PositiveList\", and + \"NegativeList\".""" + title: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The rule title.""" + description: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The rule description.""" + rationale: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The rule rationale.""" + query_check: Optional["_models.QueryCheck"] = rest_field( + name="queryCheck", visibility=["read", "create", "update", "delete", "query"] + ) + """The rule query details.""" + benchmark_references: Optional[list["_models.BenchmarkReference"]] = rest_field( + name="benchmarkReferences", visibility=["read", "create", "update", "delete", "query"] + ) + """The benchmark references.""" + + @overload + def __init__( + self, + *, + rule_id: Optional[str] = None, + severity: Optional[Union[str, "_models.RuleSeverity"]] = None, + category: Optional[str] = None, + rule_type: Optional[Union[str, "_models.RuleType"]] = None, + title: Optional[str] = None, + description: Optional[str] = None, + rationale: Optional[str] = None, + query_check: Optional["_models.QueryCheck"] = None, + benchmark_references: Optional[list["_models.BenchmarkReference"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class VendorReference(_Model): + """Vendor reference. + + :ivar title: Link title. + :vartype title: str + :ivar link: Link url. + :vartype link: str + """ + + title: Optional[str] = rest_field(visibility=["read"]) + """Link title.""" + link: Optional[str] = rest_field(visibility=["read"]) + """Link url.""" + + +class VmScannersBaseConfiguration(_Model): + """Configuration for VM scanning. + + :ivar scanning_mode: The scanning mode for the VM scan. "Default" + :vartype scanning_mode: str or ~azure.mgmt.security.models.ScanningMode + :ivar exclusion_tags: Tags that indicates that a resource should not be scanned. + :vartype exclusion_tags: dict[str, str] + """ + + scanning_mode: Optional[Union[str, "_models.ScanningMode"]] = rest_field( + name="scanningMode", visibility=["read", "create", "update", "delete", "query"] + ) + """The scanning mode for the VM scan. \"Default\"""" + exclusion_tags: Optional[dict[str, str]] = rest_field( + name="exclusionTags", visibility=["read", "create", "update", "delete", "query"] + ) + """Tags that indicates that a resource should not be scanned.""" + + @overload + def __init__( + self, + *, + scanning_mode: Optional[Union[str, "_models.ScanningMode"]] = None, + exclusion_tags: Optional[dict[str, str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class WorkspaceSetting(ProxyResource): + """Configures where to store the OMS agent data for workspaces under a scope. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.security.models.SystemData + :ivar properties: Workspace setting data. + :vartype properties: ~azure.mgmt.security.models.WorkspaceSettingProperties + """ + + properties: Optional["_models.WorkspaceSettingProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Workspace setting data.""" + + __flattened_items = ["workspace_id", "scope"] + + @overload + def __init__( + self, + *, + properties: Optional["_models.WorkspaceSettingProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + _flattened_input = {k: kwargs.pop(k) for k in kwargs.keys() & self.__flattened_items} + super().__init__(*args, **kwargs) + for k, v in _flattened_input.items(): + setattr(self, k, v) + + def __getattr__(self, name: str) -> Any: + if name in self.__flattened_items: + if self.properties is None: + return None + return getattr(self.properties, name) + raise AttributeError(f"'{self.__class__.__name__}' object has no attribute '{name}'") + + def __setattr__(self, key: str, value: Any) -> None: + if key in self.__flattened_items: + if self.properties is None: + self.properties = self._attr_to_rest_field["properties"]._class_type() + setattr(self.properties, key, value) + else: + super().__setattr__(key, value) + + +class WorkspaceSettingProperties(_Model): + """Workspace setting data. + + :ivar workspace_id: The full Azure ID of the workspace to save the data in. Required. + :vartype workspace_id: str + :ivar scope: All the VMs in this scope will send their security data to the mentioned workspace + unless overridden by a setting with more specific scope. Required. + :vartype scope: str + """ + + workspace_id: str = rest_field(name="workspaceId", visibility=["read", "create", "update", "delete", "query"]) + """The full Azure ID of the workspace to save the data in. Required.""" + scope: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """All the VMs in this scope will send their security data to the mentioned workspace unless + overridden by a setting with more specific scope. Required.""" + + @overload + def __init__( + self, + *, + workspace_id: str, + scope: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_models_py3.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_models_py3.py deleted file mode 100644 index 6cca85fa74fb..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_models_py3.py +++ /dev/null @@ -1,23005 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression,too-many-lines -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from collections.abc import MutableMapping -import datetime -from typing import Any, Literal, Optional, TYPE_CHECKING, Union - -from .._utils import serialization as _serialization - -if TYPE_CHECKING: - from .. import models as _models -JSON = MutableMapping[str, Any] - - -class AadConnectivityState(_serialization.Model): - """Describes an Azure resource with kind. - - :ivar connectivity_state: The connectivity state of the external AAD solution. Known values - are: "Discovered", "NotLicensed", and "Connected". - :vartype connectivity_state: str or ~azure.mgmt.security.models.AadConnectivityStateEnum - """ - - _attribute_map = { - "connectivity_state": {"key": "connectivityState", "type": "str"}, - } - - def __init__( - self, *, connectivity_state: Optional[Union[str, "_models.AadConnectivityStateEnum"]] = None, **kwargs: Any - ) -> None: - """ - :keyword connectivity_state: The connectivity state of the external AAD solution. Known values - are: "Discovered", "NotLicensed", and "Connected". - :paramtype connectivity_state: str or ~azure.mgmt.security.models.AadConnectivityStateEnum - """ - super().__init__(**kwargs) - self.connectivity_state = connectivity_state - - -class Location(_serialization.Model): - """Describes an Azure resource with location. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar location: Location where the resource is stored. - :vartype location: str - """ - - _validation = { - "location": {"readonly": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.location: Optional[str] = None - - -class ExternalSecuritySolutionKind(_serialization.Model): - """Describes an Azure resource with kind. - - :ivar kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :vartype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - """ - - _attribute_map = { - "kind": {"key": "kind", "type": "str"}, - } - - def __init__( - self, *, kind: Optional[Union[str, "_models.ExternalSecuritySolutionKindEnum"]] = None, **kwargs: Any - ) -> None: - """ - :keyword kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :paramtype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - """ - super().__init__(**kwargs) - self.kind = kind - - -class Resource(_serialization.Model): - """Describes an Azure resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class ExternalSecuritySolution(Resource, ExternalSecuritySolutionKind, Location): - """Represents a security solution external to Microsoft Defender for Cloud which sends information - to an OMS workspace and whose data is displayed by Microsoft Defender for Cloud. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :vartype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - """ - - _validation = { - "location": {"readonly": True}, - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__( - self, *, kind: Optional[Union[str, "_models.ExternalSecuritySolutionKindEnum"]] = None, **kwargs: Any - ) -> None: - """ - :keyword kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :paramtype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - """ - super().__init__(kind=kind, **kwargs) - self.location: Optional[str] = None - self.kind = kind - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class AadExternalSecuritySolution(ExternalSecuritySolution): - """Represents an AAD identity protection solution which sends logs to an OMS workspace. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :vartype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: The external security solution properties for AAD solutions. - :vartype properties: ~azure.mgmt.security.models.AadSolutionProperties - """ - - _validation = { - "location": {"readonly": True}, - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "AadSolutionProperties"}, - } - - def __init__( - self, - *, - kind: Optional[Union[str, "_models.ExternalSecuritySolutionKindEnum"]] = None, - properties: Optional["_models.AadSolutionProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :paramtype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - :keyword properties: The external security solution properties for AAD solutions. - :paramtype properties: ~azure.mgmt.security.models.AadSolutionProperties - """ - super().__init__(kind=kind, **kwargs) - self.properties = properties - - -class ExternalSecuritySolutionProperties(_serialization.Model): - """The solution properties (correspond to the solution kind). - - :ivar additional_properties: Unmatched properties from the message are deserialized to this - collection. - :vartype additional_properties: dict[str, any] - :ivar device_vendor: - :vartype device_vendor: str - :ivar device_type: - :vartype device_type: str - :ivar workspace: Represents an OMS workspace to which the solution is connected. - :vartype workspace: ~azure.mgmt.security.models.ConnectedWorkspace - """ - - _attribute_map = { - "additional_properties": {"key": "", "type": "{object}"}, - "device_vendor": {"key": "deviceVendor", "type": "str"}, - "device_type": {"key": "deviceType", "type": "str"}, - "workspace": {"key": "workspace", "type": "ConnectedWorkspace"}, - } - - def __init__( - self, - *, - additional_properties: Optional[dict[str, Any]] = None, - device_vendor: Optional[str] = None, - device_type: Optional[str] = None, - workspace: Optional["_models.ConnectedWorkspace"] = None, - **kwargs: Any - ) -> None: - """ - :keyword additional_properties: Unmatched properties from the message are deserialized to this - collection. - :paramtype additional_properties: dict[str, any] - :keyword device_vendor: - :paramtype device_vendor: str - :keyword device_type: - :paramtype device_type: str - :keyword workspace: Represents an OMS workspace to which the solution is connected. - :paramtype workspace: ~azure.mgmt.security.models.ConnectedWorkspace - """ - super().__init__(**kwargs) - self.additional_properties = additional_properties - self.device_vendor = device_vendor - self.device_type = device_type - self.workspace = workspace - - -class AadSolutionProperties(ExternalSecuritySolutionProperties, AadConnectivityState): - """The external security solution properties for AAD solutions. - - :ivar connectivity_state: The connectivity state of the external AAD solution. Known values - are: "Discovered", "NotLicensed", and "Connected". - :vartype connectivity_state: str or ~azure.mgmt.security.models.AadConnectivityStateEnum - :ivar additional_properties: Unmatched properties from the message are deserialized to this - collection. - :vartype additional_properties: dict[str, any] - :ivar device_vendor: - :vartype device_vendor: str - :ivar device_type: - :vartype device_type: str - :ivar workspace: Represents an OMS workspace to which the solution is connected. - :vartype workspace: ~azure.mgmt.security.models.ConnectedWorkspace - """ - - _attribute_map = { - "connectivity_state": {"key": "connectivityState", "type": "str"}, - "additional_properties": {"key": "", "type": "{object}"}, - "device_vendor": {"key": "deviceVendor", "type": "str"}, - "device_type": {"key": "deviceType", "type": "str"}, - "workspace": {"key": "workspace", "type": "ConnectedWorkspace"}, - } - - def __init__( - self, - *, - connectivity_state: Optional[Union[str, "_models.AadConnectivityStateEnum"]] = None, - additional_properties: Optional[dict[str, Any]] = None, - device_vendor: Optional[str] = None, - device_type: Optional[str] = None, - workspace: Optional["_models.ConnectedWorkspace"] = None, - **kwargs: Any - ) -> None: - """ - :keyword connectivity_state: The connectivity state of the external AAD solution. Known values - are: "Discovered", "NotLicensed", and "Connected". - :paramtype connectivity_state: str or ~azure.mgmt.security.models.AadConnectivityStateEnum - :keyword additional_properties: Unmatched properties from the message are deserialized to this - collection. - :paramtype additional_properties: dict[str, any] - :keyword device_vendor: - :paramtype device_vendor: str - :keyword device_type: - :paramtype device_type: str - :keyword workspace: Represents an OMS workspace to which the solution is connected. - :paramtype workspace: ~azure.mgmt.security.models.ConnectedWorkspace - """ - super().__init__( - additional_properties=additional_properties, - device_vendor=device_vendor, - device_type=device_type, - workspace=workspace, - connectivity_state=connectivity_state, - **kwargs - ) - self.connectivity_state = connectivity_state - self.additional_properties = additional_properties - self.device_vendor = device_vendor - self.device_type = device_type - self.workspace = workspace - - -class Authentication(_serialization.Model): - """The environment authentication details. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AccessTokenAuthentication - - All required parameters must be populated in order to send to server. - - :ivar authentication_type: The authentication type. Required. "AccessToken" - :vartype authentication_type: str or ~azure.mgmt.security.models.AuthenticationType - """ - - _validation = { - "authentication_type": {"required": True}, - } - - _attribute_map = { - "authentication_type": {"key": "authenticationType", "type": "str"}, - } - - _subtype_map = {"authentication_type": {"AccessToken": "AccessTokenAuthentication"}} - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.authentication_type: Optional[str] = None - - -class AccessTokenAuthentication(Authentication): - """The environment authentication details. - - All required parameters must be populated in order to send to server. - - :ivar authentication_type: The authentication type. Required. "AccessToken" - :vartype authentication_type: str or ~azure.mgmt.security.models.AuthenticationType - :ivar username: The user name that will be used while authenticating with the onboarded - environment. - :vartype username: str - :ivar access_token: The access token that will be used while authenticating with the onboarded - environment. - :vartype access_token: str - """ - - _validation = { - "authentication_type": {"required": True}, - } - - _attribute_map = { - "authentication_type": {"key": "authenticationType", "type": "str"}, - "username": {"key": "username", "type": "str"}, - "access_token": {"key": "accessToken", "type": "str"}, - } - - def __init__(self, *, username: Optional[str] = None, access_token: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword username: The user name that will be used while authenticating with the onboarded - environment. - :paramtype username: str - :keyword access_token: The access token that will be used while authenticating with the - onboarded environment. - :paramtype access_token: str - """ - super().__init__(**kwargs) - self.authentication_type: str = "AccessToken" - self.username = username - self.access_token = access_token - - -class ActionableRemediation(_serialization.Model): - """Configuration payload for PR Annotations. - - :ivar state: ActionableRemediation Setting. None - the setting was never set. Enabled - - ActionableRemediation is enabled. Disabled - ActionableRemediation is disabled. Known values - are: "None", "Disabled", and "Enabled". - :vartype state: str or ~azure.mgmt.security.models.ActionableRemediationState - :ivar category_configurations: Gets or sets list of categories and severity levels. - :vartype category_configurations: list[~azure.mgmt.security.models.CategoryConfiguration] - :ivar branch_configuration: Repository branch configuration for PR Annotations. - :vartype branch_configuration: ~azure.mgmt.security.models.TargetBranchConfiguration - :ivar inherit_from_parent_state: Update Settings. - - Enabled - Resource should inherit configurations from parent. - Disabled - Resource should not inherit configurations from parent. Known values are: "Disabled" - and "Enabled". - :vartype inherit_from_parent_state: str or ~azure.mgmt.security.models.InheritFromParentState - """ - - _attribute_map = { - "state": {"key": "state", "type": "str"}, - "category_configurations": {"key": "categoryConfigurations", "type": "[CategoryConfiguration]"}, - "branch_configuration": {"key": "branchConfiguration", "type": "TargetBranchConfiguration"}, - "inherit_from_parent_state": {"key": "inheritFromParentState", "type": "str"}, - } - - def __init__( - self, - *, - state: Optional[Union[str, "_models.ActionableRemediationState"]] = None, - category_configurations: Optional[list["_models.CategoryConfiguration"]] = None, - branch_configuration: Optional["_models.TargetBranchConfiguration"] = None, - inherit_from_parent_state: Optional[Union[str, "_models.InheritFromParentState"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword state: ActionableRemediation Setting. None - the setting was never set. Enabled - - ActionableRemediation is enabled. Disabled - ActionableRemediation is disabled. Known values - are: "None", "Disabled", and "Enabled". - :paramtype state: str or ~azure.mgmt.security.models.ActionableRemediationState - :keyword category_configurations: Gets or sets list of categories and severity levels. - :paramtype category_configurations: list[~azure.mgmt.security.models.CategoryConfiguration] - :keyword branch_configuration: Repository branch configuration for PR Annotations. - :paramtype branch_configuration: ~azure.mgmt.security.models.TargetBranchConfiguration - :keyword inherit_from_parent_state: Update Settings. - - Enabled - Resource should inherit configurations from parent. - Disabled - Resource should not inherit configurations from parent. Known values are: "Disabled" - and "Enabled". - :paramtype inherit_from_parent_state: str or ~azure.mgmt.security.models.InheritFromParentState - """ - super().__init__(**kwargs) - self.state = state - self.category_configurations = category_configurations - self.branch_configuration = branch_configuration - self.inherit_from_parent_state = inherit_from_parent_state - - -class CustomAlertRule(_serialization.Model): - """A custom alert rule. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - ListCustomAlertRule, ThresholdCustomAlertRule - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - } - - _subtype_map = { - "rule_type": { - "ListCustomAlertRule": "ListCustomAlertRule", - "ThresholdCustomAlertRule": "ThresholdCustomAlertRule", - } - } - - def __init__(self, *, is_enabled: bool, **kwargs: Any) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - """ - super().__init__(**kwargs) - self.display_name: Optional[str] = None - self.description: Optional[str] = None - self.is_enabled = is_enabled - self.rule_type: Optional[str] = None - - -class ThresholdCustomAlertRule(CustomAlertRule): - """A custom alert rule that checks if a value (depends on the custom alert type) is within the - given range. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - TimeWindowCustomAlertRule - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - } - - _subtype_map = {"rule_type": {"TimeWindowCustomAlertRule": "TimeWindowCustomAlertRule"}} - - def __init__(self, *, is_enabled: bool, min_threshold: int, max_threshold: int, **kwargs: Any) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - """ - super().__init__(is_enabled=is_enabled, **kwargs) - self.rule_type: str = "ThresholdCustomAlertRule" - self.min_threshold = min_threshold - self.max_threshold = max_threshold - - -class TimeWindowCustomAlertRule(ThresholdCustomAlertRule): - """A custom alert rule that checks if the number of activities (depends on the custom alert type) - in a time window is within the given range. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - ActiveConnectionsNotInAllowedRange, AmqpC2DMessagesNotInAllowedRange, - AmqpC2DRejectedMessagesNotInAllowedRange, AmqpD2CMessagesNotInAllowedRange, - DirectMethodInvokesNotInAllowedRange, FailedLocalLoginsNotInAllowedRange, - FileUploadsNotInAllowedRange, HttpC2DMessagesNotInAllowedRange, - HttpC2DRejectedMessagesNotInAllowedRange, HttpD2CMessagesNotInAllowedRange, - MqttC2DMessagesNotInAllowedRange, MqttC2DRejectedMessagesNotInAllowedRange, - MqttD2CMessagesNotInAllowedRange, QueuePurgesNotInAllowedRange, TwinUpdatesNotInAllowedRange, - UnauthorizedOperationsNotInAllowedRange - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - _subtype_map = { - "rule_type": { - "ActiveConnectionsNotInAllowedRange": "ActiveConnectionsNotInAllowedRange", - "AmqpC2DMessagesNotInAllowedRange": "AmqpC2DMessagesNotInAllowedRange", - "AmqpC2DRejectedMessagesNotInAllowedRange": "AmqpC2DRejectedMessagesNotInAllowedRange", - "AmqpD2CMessagesNotInAllowedRange": "AmqpD2CMessagesNotInAllowedRange", - "DirectMethodInvokesNotInAllowedRange": "DirectMethodInvokesNotInAllowedRange", - "FailedLocalLoginsNotInAllowedRange": "FailedLocalLoginsNotInAllowedRange", - "FileUploadsNotInAllowedRange": "FileUploadsNotInAllowedRange", - "HttpC2DMessagesNotInAllowedRange": "HttpC2DMessagesNotInAllowedRange", - "HttpC2DRejectedMessagesNotInAllowedRange": "HttpC2DRejectedMessagesNotInAllowedRange", - "HttpD2CMessagesNotInAllowedRange": "HttpD2CMessagesNotInAllowedRange", - "MqttC2DMessagesNotInAllowedRange": "MqttC2DMessagesNotInAllowedRange", - "MqttC2DRejectedMessagesNotInAllowedRange": "MqttC2DRejectedMessagesNotInAllowedRange", - "MqttD2CMessagesNotInAllowedRange": "MqttD2CMessagesNotInAllowedRange", - "QueuePurgesNotInAllowedRange": "QueuePurgesNotInAllowedRange", - "TwinUpdatesNotInAllowedRange": "TwinUpdatesNotInAllowedRange", - "UnauthorizedOperationsNotInAllowedRange": "UnauthorizedOperationsNotInAllowedRange", - } - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__(is_enabled=is_enabled, min_threshold=min_threshold, max_threshold=max_threshold, **kwargs) - self.rule_type: str = "TimeWindowCustomAlertRule" - self.time_window_size = time_window_size - - -class ActiveConnectionsNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of active connections is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "ActiveConnectionsNotInAllowedRange" - - -class AdditionalData(_serialization.Model): - """Details of the sub-assessment. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - ContainerRegistryVulnerabilityProperties, ServerVulnerabilityProperties, - SqlServerVulnerabilityProperties - - All required parameters must be populated in order to send to server. - - :ivar assessed_resource_type: Sub-assessment resource type. Required. Known values are: - "SqlServerVulnerability", "ContainerRegistryVulnerability", and "ServerVulnerability". - :vartype assessed_resource_type: str or ~azure.mgmt.security.models.AssessedResourceType - """ - - _validation = { - "assessed_resource_type": {"required": True}, - } - - _attribute_map = { - "assessed_resource_type": {"key": "assessedResourceType", "type": "str"}, - } - - _subtype_map = { - "assessed_resource_type": { - "ContainerRegistryVulnerability": "ContainerRegistryVulnerabilityProperties", - "ServerVulnerabilityAssessment": "ServerVulnerabilityProperties", - "SqlServerVulnerability": "SqlServerVulnerabilityProperties", - } - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.assessed_resource_type: Optional[str] = None - - -class AdditionalWorkspacesProperties(_serialization.Model): - """Properties of the additional workspaces. - - :ivar workspace: Workspace resource id. - :vartype workspace: str - :ivar type: Workspace type. "Sentinel" - :vartype type: str or ~azure.mgmt.security.models.AdditionalWorkspaceType - :ivar data_types: List of data types sent to workspace. - :vartype data_types: list[str or ~azure.mgmt.security.models.AdditionalWorkspaceDataType] - """ - - _attribute_map = { - "workspace": {"key": "workspace", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "data_types": {"key": "dataTypes", "type": "[str]"}, - } - - def __init__( - self, - *, - workspace: Optional[str] = None, - type: Union[str, "_models.AdditionalWorkspaceType"] = "Sentinel", - data_types: Optional[list[Union[str, "_models.AdditionalWorkspaceDataType"]]] = None, - **kwargs: Any - ) -> None: - """ - :keyword workspace: Workspace resource id. - :paramtype workspace: str - :keyword type: Workspace type. "Sentinel" - :paramtype type: str or ~azure.mgmt.security.models.AdditionalWorkspaceType - :keyword data_types: List of data types sent to workspace. - :paramtype data_types: list[str or ~azure.mgmt.security.models.AdditionalWorkspaceDataType] - """ - super().__init__(**kwargs) - self.workspace = workspace - self.type = type - self.data_types = data_types - - -class AdvancedThreatProtectionSetting(Resource): - """The Advanced Threat Protection resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar is_enabled: Indicates whether Advanced Threat Protection is enabled. - :vartype is_enabled: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "is_enabled": {"key": "properties.isEnabled", "type": "bool"}, - } - - def __init__(self, *, is_enabled: Optional[bool] = None, **kwargs: Any) -> None: - """ - :keyword is_enabled: Indicates whether Advanced Threat Protection is enabled. - :paramtype is_enabled: bool - """ - super().__init__(**kwargs) - self.is_enabled = is_enabled - - -class AgentlessConfiguration(_serialization.Model): - """Details about Agentless configuration. - - :ivar agentless_enabled: Agentless Enablement states. Known values are: "Disabled", "Enabled", - and "NotApplicable". - :vartype agentless_enabled: str or ~azure.mgmt.security.models.AgentlessEnablement - :ivar agentless_auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", - and "NotApplicable". - :vartype agentless_auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :ivar scanners: Gets or sets the scanners for the connector. - :vartype scanners: list[str] - :ivar inventory_list_type: Types for inventory list. Known values are: "Inclusion" and - "Exclusion". - :vartype inventory_list_type: str or ~azure.mgmt.security.models.InventoryListKind - :ivar inventory_list: Gets or sets the inventory list for inclusion or exclusion from - Agentless. Will be ignored if agentless auto-discovery is enabled. - :vartype inventory_list: list[~azure.mgmt.security.models.InventoryList] - """ - - _attribute_map = { - "agentless_enabled": {"key": "agentlessEnabled", "type": "str"}, - "agentless_auto_discovery": {"key": "agentlessAutoDiscovery", "type": "str"}, - "scanners": {"key": "scanners", "type": "[str]"}, - "inventory_list_type": {"key": "inventoryListType", "type": "str"}, - "inventory_list": {"key": "inventoryList", "type": "[InventoryList]"}, - } - - def __init__( - self, - *, - agentless_enabled: Optional[Union[str, "_models.AgentlessEnablement"]] = None, - agentless_auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, - scanners: Optional[list[str]] = None, - inventory_list_type: Optional[Union[str, "_models.InventoryListKind"]] = None, - inventory_list: Optional[list["_models.InventoryList"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword agentless_enabled: Agentless Enablement states. Known values are: "Disabled", - "Enabled", and "NotApplicable". - :paramtype agentless_enabled: str or ~azure.mgmt.security.models.AgentlessEnablement - :keyword agentless_auto_discovery: AutoDiscovery states. Known values are: "Disabled", - "Enabled", and "NotApplicable". - :paramtype agentless_auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :keyword scanners: Gets or sets the scanners for the connector. - :paramtype scanners: list[str] - :keyword inventory_list_type: Types for inventory list. Known values are: "Inclusion" and - "Exclusion". - :paramtype inventory_list_type: str or ~azure.mgmt.security.models.InventoryListKind - :keyword inventory_list: Gets or sets the inventory list for inclusion or exclusion from - Agentless. Will be ignored if agentless auto-discovery is enabled. - :paramtype inventory_list: list[~azure.mgmt.security.models.InventoryList] - """ - super().__init__(**kwargs) - self.agentless_enabled = agentless_enabled - self.agentless_auto_discovery = agentless_auto_discovery - self.scanners = scanners - self.inventory_list_type = inventory_list_type - self.inventory_list = inventory_list - - -class Alert(Resource): - """Security alert. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar version: Schema version. - :vartype version: str - :ivar alert_type: Unique identifier for the detection logic (all alert instances from the same - detection logic will have the same alertType). - :vartype alert_type: str - :ivar system_alert_id: Unique identifier for the alert. - :vartype system_alert_id: str - :ivar product_component_name: The name of Azure Security Center pricing tier which powering - this alert. Learn more: - https://docs.microsoft.com/en-us/azure/security-center/security-center-pricing. - :vartype product_component_name: str - :ivar alert_display_name: The display name of the alert. - :vartype alert_display_name: str - :ivar description: Description of the suspicious activity that was detected. - :vartype description: str - :ivar severity: The risk level of the threat that was detected. Learn more: - https://docs.microsoft.com/en-us/azure/security-center/security-center-alerts-overview#how-are-alerts-classified. - Known values are: "Informational", "Low", "Medium", and "High". - :vartype severity: str or ~azure.mgmt.security.models.AlertSeverity - :ivar intent: The kill chain related intent behind the alert. For list of supported values, and - explanations of Azure Security Center's supported kill chain intents. Known values are: - "Unknown", "PreAttack", "InitialAccess", "Persistence", "PrivilegeEscalation", - "DefenseEvasion", "CredentialAccess", "Discovery", "LateralMovement", "Execution", - "Collection", "Exfiltration", "CommandAndControl", "Impact", "Probing", and "Exploitation". - :vartype intent: str or ~azure.mgmt.security.models.Intent - :ivar start_time_utc: The UTC time of the first event or activity included in the alert in - ISO8601 format. - :vartype start_time_utc: ~datetime.datetime - :ivar end_time_utc: The UTC time of the last event or activity included in the alert in ISO8601 - format. - :vartype end_time_utc: ~datetime.datetime - :ivar resource_identifiers: The resource identifiers that can be used to direct the alert to - the right product exposure group (tenant, workspace, subscription etc.). There can be multiple - identifiers of different type per alert. - :vartype resource_identifiers: list[~azure.mgmt.security.models.ResourceIdentifier] - :ivar remediation_steps: Manual action items to take to remediate the alert. - :vartype remediation_steps: list[str] - :ivar vendor_name: The name of the vendor that raises the alert. - :vartype vendor_name: str - :ivar status: The life cycle status of the alert. Known values are: "Active", "InProgress", - "Resolved", and "Dismissed". - :vartype status: str or ~azure.mgmt.security.models.AlertStatus - :ivar extended_links: Links related to the alert. - :vartype extended_links: list[dict[str, str]] - :ivar alert_uri: A direct link to the alert page in Azure Portal. - :vartype alert_uri: str - :ivar time_generated_utc: The UTC time the alert was generated in ISO8601 format. - :vartype time_generated_utc: ~datetime.datetime - :ivar product_name: The name of the product which published this alert (Microsoft Sentinel, - Microsoft Defender for Identity, Microsoft Defender for Endpoint, Microsoft Defender for - Office, Microsoft Defender for Cloud Apps, and so on). - :vartype product_name: str - :ivar processing_end_time_utc: The UTC processing end time of the alert in ISO8601 format. - :vartype processing_end_time_utc: ~datetime.datetime - :ivar entities: A list of entities related to the alert. - :vartype entities: list[~azure.mgmt.security.models.AlertEntity] - :ivar is_incident: This field determines whether the alert is an incident (a compound grouping - of several alerts) or a single alert. - :vartype is_incident: bool - :ivar correlation_key: Key for corelating related alerts. Alerts with the same correlation key - considered to be related. - :vartype correlation_key: str - :ivar extended_properties: Custom properties for the alert. - :vartype extended_properties: dict[str, str] - :ivar compromised_entity: The display name of the resource most related to this alert. - :vartype compromised_entity: str - :ivar techniques: kill chain related techniques behind the alert. - :vartype techniques: list[str] - :ivar sub_techniques: Kill chain related sub-techniques behind the alert. - :vartype sub_techniques: list[str] - :ivar supporting_evidence: Changing set of properties depending on the supportingEvidence type. - :vartype supporting_evidence: ~azure.mgmt.security.models.AlertPropertiesSupportingEvidence - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "version": {"readonly": True}, - "alert_type": {"readonly": True}, - "system_alert_id": {"readonly": True}, - "product_component_name": {"readonly": True}, - "alert_display_name": {"readonly": True}, - "description": {"readonly": True}, - "severity": {"readonly": True}, - "intent": {"readonly": True}, - "start_time_utc": {"readonly": True}, - "end_time_utc": {"readonly": True}, - "resource_identifiers": {"readonly": True}, - "remediation_steps": {"readonly": True}, - "vendor_name": {"readonly": True}, - "status": {"readonly": True}, - "extended_links": {"readonly": True}, - "alert_uri": {"readonly": True}, - "time_generated_utc": {"readonly": True}, - "product_name": {"readonly": True}, - "processing_end_time_utc": {"readonly": True}, - "entities": {"readonly": True}, - "is_incident": {"readonly": True}, - "correlation_key": {"readonly": True}, - "compromised_entity": {"readonly": True}, - "techniques": {"readonly": True}, - "sub_techniques": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "version": {"key": "properties.version", "type": "str"}, - "alert_type": {"key": "properties.alertType", "type": "str"}, - "system_alert_id": {"key": "properties.systemAlertId", "type": "str"}, - "product_component_name": {"key": "properties.productComponentName", "type": "str"}, - "alert_display_name": {"key": "properties.alertDisplayName", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "severity": {"key": "properties.severity", "type": "str"}, - "intent": {"key": "properties.intent", "type": "str"}, - "start_time_utc": {"key": "properties.startTimeUtc", "type": "iso-8601"}, - "end_time_utc": {"key": "properties.endTimeUtc", "type": "iso-8601"}, - "resource_identifiers": {"key": "properties.resourceIdentifiers", "type": "[ResourceIdentifier]"}, - "remediation_steps": {"key": "properties.remediationSteps", "type": "[str]"}, - "vendor_name": {"key": "properties.vendorName", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "extended_links": {"key": "properties.extendedLinks", "type": "[{str}]"}, - "alert_uri": {"key": "properties.alertUri", "type": "str"}, - "time_generated_utc": {"key": "properties.timeGeneratedUtc", "type": "iso-8601"}, - "product_name": {"key": "properties.productName", "type": "str"}, - "processing_end_time_utc": {"key": "properties.processingEndTimeUtc", "type": "iso-8601"}, - "entities": {"key": "properties.entities", "type": "[AlertEntity]"}, - "is_incident": {"key": "properties.isIncident", "type": "bool"}, - "correlation_key": {"key": "properties.correlationKey", "type": "str"}, - "extended_properties": {"key": "properties.extendedProperties", "type": "{str}"}, - "compromised_entity": {"key": "properties.compromisedEntity", "type": "str"}, - "techniques": {"key": "properties.techniques", "type": "[str]"}, - "sub_techniques": {"key": "properties.subTechniques", "type": "[str]"}, - "supporting_evidence": {"key": "properties.supportingEvidence", "type": "AlertPropertiesSupportingEvidence"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - extended_properties: Optional[dict[str, str]] = None, - supporting_evidence: Optional["_models.AlertPropertiesSupportingEvidence"] = None, - **kwargs: Any - ) -> None: - """ - :keyword extended_properties: Custom properties for the alert. - :paramtype extended_properties: dict[str, str] - :keyword supporting_evidence: Changing set of properties depending on the supportingEvidence - type. - :paramtype supporting_evidence: ~azure.mgmt.security.models.AlertPropertiesSupportingEvidence - """ - super().__init__(**kwargs) - self.version: Optional[str] = None - self.alert_type: Optional[str] = None - self.system_alert_id: Optional[str] = None - self.product_component_name: Optional[str] = None - self.alert_display_name: Optional[str] = None - self.description: Optional[str] = None - self.severity: Optional[Union[str, "_models.AlertSeverity"]] = None - self.intent: Optional[Union[str, "_models.Intent"]] = None - self.start_time_utc: Optional[datetime.datetime] = None - self.end_time_utc: Optional[datetime.datetime] = None - self.resource_identifiers: Optional[list["_models.ResourceIdentifier"]] = None - self.remediation_steps: Optional[list[str]] = None - self.vendor_name: Optional[str] = None - self.status: Optional[Union[str, "_models.AlertStatus"]] = None - self.extended_links: Optional[list[dict[str, str]]] = None - self.alert_uri: Optional[str] = None - self.time_generated_utc: Optional[datetime.datetime] = None - self.product_name: Optional[str] = None - self.processing_end_time_utc: Optional[datetime.datetime] = None - self.entities: Optional[list["_models.AlertEntity"]] = None - self.is_incident: Optional[bool] = None - self.correlation_key: Optional[str] = None - self.extended_properties = extended_properties - self.compromised_entity: Optional[str] = None - self.techniques: Optional[list[str]] = None - self.sub_techniques: Optional[list[str]] = None - self.supporting_evidence = supporting_evidence - - -class AlertEntity(_serialization.Model): - """Changing set of properties depending on the entity type. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar additional_properties: Unmatched properties from the message are deserialized to this - collection. - :vartype additional_properties: dict[str, JSON] - :ivar type: Type of entity. - :vartype type: str - """ - - _validation = { - "type": {"readonly": True}, - } - - _attribute_map = { - "additional_properties": {"key": "", "type": "{object}"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, *, additional_properties: Optional[dict[str, JSON]] = None, **kwargs: Any) -> None: - """ - :keyword additional_properties: Unmatched properties from the message are deserialized to this - collection. - :paramtype additional_properties: dict[str, JSON] - """ - super().__init__(**kwargs) - self.additional_properties = additional_properties - self.type: Optional[str] = None - - -class AlertList(_serialization.Model): - """List of security alerts. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: describes security alert properties. - :vartype value: list[~azure.mgmt.security.models.Alert] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Alert]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[list["_models.Alert"]] = None, **kwargs: Any) -> None: - """ - :keyword value: describes security alert properties. - :paramtype value: list[~azure.mgmt.security.models.Alert] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class AlertPropertiesSupportingEvidence(_serialization.Model): - """Changing set of properties depending on the supportingEvidence type. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar additional_properties: Unmatched properties from the message are deserialized to this - collection. - :vartype additional_properties: dict[str, JSON] - :ivar type: Type of the supportingEvidence. - :vartype type: str - """ - - _validation = { - "type": {"readonly": True}, - } - - _attribute_map = { - "additional_properties": {"key": "", "type": "{object}"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, *, additional_properties: Optional[dict[str, JSON]] = None, **kwargs: Any) -> None: - """ - :keyword additional_properties: Unmatched properties from the message are deserialized to this - collection. - :paramtype additional_properties: dict[str, JSON] - """ - super().__init__(**kwargs) - self.additional_properties = additional_properties - self.type: Optional[str] = None - - -class AlertSimulatorRequestProperties(_serialization.Model): - """Describes properties of an alert simulation request. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AlertSimulatorBundlesRequestProperties - - All required parameters must be populated in order to send to server. - - :ivar additional_properties: Unmatched properties from the message are deserialized to this - collection. - :vartype additional_properties: dict[str, any] - :ivar kind: The kind of alert simulation. Required. "Bundles" - :vartype kind: str or ~azure.mgmt.security.models.KindEnum - """ - - _validation = { - "kind": {"required": True}, - } - - _attribute_map = { - "additional_properties": {"key": "", "type": "{object}"}, - "kind": {"key": "kind", "type": "str"}, - } - - _subtype_map = {"kind": {"Bundles": "AlertSimulatorBundlesRequestProperties"}} - - def __init__(self, *, additional_properties: Optional[dict[str, Any]] = None, **kwargs: Any) -> None: - """ - :keyword additional_properties: Unmatched properties from the message are deserialized to this - collection. - :paramtype additional_properties: dict[str, any] - """ - super().__init__(**kwargs) - self.additional_properties = additional_properties - self.kind: Optional[str] = None - - -class AlertSimulatorBundlesRequestProperties(AlertSimulatorRequestProperties): - """Simulate alerts according to this bundles. - - All required parameters must be populated in order to send to server. - - :ivar additional_properties: Unmatched properties from the message are deserialized to this - collection. - :vartype additional_properties: dict[str, any] - :ivar kind: The kind of alert simulation. Required. "Bundles" - :vartype kind: str or ~azure.mgmt.security.models.KindEnum - :ivar bundles: Bundles list. - :vartype bundles: list[str or ~azure.mgmt.security.models.BundleType] - """ - - _validation = { - "kind": {"required": True}, - } - - _attribute_map = { - "additional_properties": {"key": "", "type": "{object}"}, - "kind": {"key": "kind", "type": "str"}, - "bundles": {"key": "bundles", "type": "[str]"}, - } - - def __init__( - self, - *, - additional_properties: Optional[dict[str, Any]] = None, - bundles: Optional[list[Union[str, "_models.BundleType"]]] = None, - **kwargs: Any - ) -> None: - """ - :keyword additional_properties: Unmatched properties from the message are deserialized to this - collection. - :paramtype additional_properties: dict[str, any] - :keyword bundles: Bundles list. - :paramtype bundles: list[str or ~azure.mgmt.security.models.BundleType] - """ - super().__init__(additional_properties=additional_properties, **kwargs) - self.kind: str = "Bundles" - self.bundles = bundles - - -class AlertSimulatorRequestBody(_serialization.Model): - """Alert Simulator request body. - - :ivar properties: Alert Simulator request body data. - :vartype properties: ~azure.mgmt.security.models.AlertSimulatorRequestProperties - """ - - _attribute_map = { - "properties": {"key": "properties", "type": "AlertSimulatorRequestProperties"}, - } - - def __init__( - self, *, properties: Optional["_models.AlertSimulatorRequestProperties"] = None, **kwargs: Any - ) -> None: - """ - :keyword properties: Alert Simulator request body data. - :paramtype properties: ~azure.mgmt.security.models.AlertSimulatorRequestProperties - """ - super().__init__(**kwargs) - self.properties = properties - - -class AlertsSuppressionRule(Resource): - """Describes the suppression rule. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar alert_type: Type of the alert to automatically suppress. For all alert types, use '*'. - :vartype alert_type: str - :ivar last_modified_utc: The last time this rule was modified. - :vartype last_modified_utc: ~datetime.datetime - :ivar expiration_date_utc: Expiration date of the rule, if value is not provided or provided as - null there will no expiration at all. - :vartype expiration_date_utc: ~datetime.datetime - :ivar reason: The reason for dismissing the alert. - :vartype reason: str - :ivar state: Possible states of the rule. Known values are: "Enabled", "Disabled", and - "Expired". - :vartype state: str or ~azure.mgmt.security.models.RuleState - :ivar comment: Any comment regarding the rule. - :vartype comment: str - :ivar suppression_alerts_scope: The suppression conditions. - :vartype suppression_alerts_scope: ~azure.mgmt.security.models.SuppressionAlertsScope - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "last_modified_utc": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "alert_type": {"key": "properties.alertType", "type": "str"}, - "last_modified_utc": {"key": "properties.lastModifiedUtc", "type": "iso-8601"}, - "expiration_date_utc": {"key": "properties.expirationDateUtc", "type": "iso-8601"}, - "reason": {"key": "properties.reason", "type": "str"}, - "state": {"key": "properties.state", "type": "str"}, - "comment": {"key": "properties.comment", "type": "str"}, - "suppression_alerts_scope": {"key": "properties.suppressionAlertsScope", "type": "SuppressionAlertsScope"}, - } - - def __init__( - self, - *, - alert_type: Optional[str] = None, - expiration_date_utc: Optional[datetime.datetime] = None, - reason: Optional[str] = None, - state: Optional[Union[str, "_models.RuleState"]] = None, - comment: Optional[str] = None, - suppression_alerts_scope: Optional["_models.SuppressionAlertsScope"] = None, - **kwargs: Any - ) -> None: - """ - :keyword alert_type: Type of the alert to automatically suppress. For all alert types, use '*'. - :paramtype alert_type: str - :keyword expiration_date_utc: Expiration date of the rule, if value is not provided or provided - as null there will no expiration at all. - :paramtype expiration_date_utc: ~datetime.datetime - :keyword reason: The reason for dismissing the alert. - :paramtype reason: str - :keyword state: Possible states of the rule. Known values are: "Enabled", "Disabled", and - "Expired". - :paramtype state: str or ~azure.mgmt.security.models.RuleState - :keyword comment: Any comment regarding the rule. - :paramtype comment: str - :keyword suppression_alerts_scope: The suppression conditions. - :paramtype suppression_alerts_scope: ~azure.mgmt.security.models.SuppressionAlertsScope - """ - super().__init__(**kwargs) - self.alert_type = alert_type - self.last_modified_utc: Optional[datetime.datetime] = None - self.expiration_date_utc = expiration_date_utc - self.reason = reason - self.state = state - self.comment = comment - self.suppression_alerts_scope = suppression_alerts_scope - - -class AlertsSuppressionRulesList(_serialization.Model): - """Suppression rules list for subscription. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: Required. - :vartype value: list[~azure.mgmt.security.models.AlertsSuppressionRule] - :ivar next_link: URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[AlertsSuppressionRule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: list["_models.AlertsSuppressionRule"], **kwargs: Any) -> None: - """ - :keyword value: Required. - :paramtype value: list[~azure.mgmt.security.models.AlertsSuppressionRule] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class Setting(Resource): - """The kind of the security setting. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AlertSyncSettings, DataExportSettings - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar kind: the kind of the settings string. Required. Known values are: "DataExportSettings", - "AlertSuppressionSetting", and "AlertSyncSettings". - :vartype kind: str or ~azure.mgmt.security.models.SettingKind - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "kind": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - } - - _subtype_map = {"kind": {"AlertSyncSettings": "AlertSyncSettings", "DataExportSettings": "DataExportSettings"}} - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.kind: Optional[str] = None - - -class AlertSyncSettings(Setting): - """Represents an alert sync setting. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar kind: the kind of the settings string. Required. Known values are: "DataExportSettings", - "AlertSuppressionSetting", and "AlertSyncSettings". - :vartype kind: str or ~azure.mgmt.security.models.SettingKind - :ivar enabled: Is the alert sync setting enabled. - :vartype enabled: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "kind": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "enabled": {"key": "properties.enabled", "type": "bool"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is the alert sync setting enabled. - :paramtype enabled: bool - """ - super().__init__(**kwargs) - self.kind: str = "AlertSyncSettings" - self.enabled = enabled - - -class AllowedConnectionsList(_serialization.Model): - """List of all possible traffic between Azure resources. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.AllowedConnectionsResource] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[AllowedConnectionsResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.AllowedConnectionsResource"]] = None - self.next_link: Optional[str] = None - - -class AllowedConnectionsResource(Resource, Location): - """The resource whose properties describes the allowed traffic between Azure resources. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar calculated_date_time: The UTC time on which the allowed connections resource was - calculated. - :vartype calculated_date_time: ~datetime.datetime - :ivar connectable_resources: List of connectable resources. - :vartype connectable_resources: list[~azure.mgmt.security.models.ConnectableResource] - """ - - _validation = { - "location": {"readonly": True}, - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "calculated_date_time": {"readonly": True}, - "connectable_resources": {"readonly": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "calculated_date_time": {"key": "properties.calculatedDateTime", "type": "iso-8601"}, - "connectable_resources": {"key": "properties.connectableResources", "type": "[ConnectableResource]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.location: Optional[str] = None - self.calculated_date_time: Optional[datetime.datetime] = None - self.connectable_resources: Optional[list["_models.ConnectableResource"]] = None - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class ListCustomAlertRule(CustomAlertRule): - """A List custom alert rule. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AllowlistCustomAlertRule, DenylistCustomAlertRule - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar value_type: The value type of the items in the list. Known values are: "IpCidr" and - "String". - :vartype value_type: str or ~azure.mgmt.security.models.ValueType - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "value_type": {"readonly": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "value_type": {"key": "valueType", "type": "str"}, - } - - _subtype_map = { - "rule_type": { - "AllowlistCustomAlertRule": "AllowlistCustomAlertRule", - "DenylistCustomAlertRule": "DenylistCustomAlertRule", - } - } - - def __init__(self, *, is_enabled: bool, **kwargs: Any) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - """ - super().__init__(is_enabled=is_enabled, **kwargs) - self.rule_type: str = "ListCustomAlertRule" - self.value_type: Optional[Union[str, "_models.ValueType"]] = None - - -class AllowlistCustomAlertRule(ListCustomAlertRule): - """A custom alert rule that checks if a value (depends on the custom alert type) is allowed. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - ConnectionFromIpNotAllowed, ConnectionToIpNotAllowed, LocalUserNotAllowed, ProcessNotAllowed - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar value_type: The value type of the items in the list. Known values are: "IpCidr" and - "String". - :vartype value_type: str or ~azure.mgmt.security.models.ValueType - :ivar allowlist_values: The values to allow. The format of the values depends on the rule type. - Required. - :vartype allowlist_values: list[str] - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "value_type": {"readonly": True}, - "allowlist_values": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "value_type": {"key": "valueType", "type": "str"}, - "allowlist_values": {"key": "allowlistValues", "type": "[str]"}, - } - - _subtype_map = { - "rule_type": { - "ConnectionFromIpNotAllowed": "ConnectionFromIpNotAllowed", - "ConnectionToIpNotAllowed": "ConnectionToIpNotAllowed", - "LocalUserNotAllowed": "LocalUserNotAllowed", - "ProcessNotAllowed": "ProcessNotAllowed", - } - } - - def __init__(self, *, is_enabled: bool, allowlist_values: list[str], **kwargs: Any) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword allowlist_values: The values to allow. The format of the values depends on the rule - type. Required. - :paramtype allowlist_values: list[str] - """ - super().__init__(is_enabled=is_enabled, **kwargs) - self.rule_type: str = "AllowlistCustomAlertRule" - self.allowlist_values = allowlist_values - - -class AmqpC2DMessagesNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of cloud to device messages (AMQP protocol) is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "AmqpC2DMessagesNotInAllowedRange" - - -class AmqpC2DRejectedMessagesNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of rejected cloud to device messages (AMQP protocol) is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "AmqpC2DRejectedMessagesNotInAllowedRange" - - -class AmqpD2CMessagesNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of device to cloud messages (AMQP protocol) is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "AmqpD2CMessagesNotInAllowedRange" - - -class ApiCollection(Resource): - """An API collection as represented by Microsoft Defender for APIs. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar provisioning_state: Gets the provisioning state of the API collection. Known values are: - "Succeeded", "Failed", and "Updating". - :vartype provisioning_state: str or ~azure.mgmt.security.models.ProvisioningState - :ivar display_name: The display name of the API collection. - :vartype display_name: str - :ivar discovered_via: The resource Id of the resource from where this API collection was - discovered. - :vartype discovered_via: str - :ivar base_url: The base URI for this API collection. All endpoints of this API collection - extend this base URI. - :vartype base_url: str - :ivar number_of_api_endpoints: The number of API endpoints discovered in this API collection. - :vartype number_of_api_endpoints: int - :ivar number_of_inactive_api_endpoints: The number of API endpoints in this API collection that - have not received any API traffic in the last 30 days. - :vartype number_of_inactive_api_endpoints: int - :ivar number_of_unauthenticated_api_endpoints: The number of API endpoints in this API - collection that are unauthenticated. - :vartype number_of_unauthenticated_api_endpoints: int - :ivar number_of_external_api_endpoints: The number of API endpoints in this API collection for - which API traffic from the internet was observed. - :vartype number_of_external_api_endpoints: int - :ivar number_of_api_endpoints_with_sensitive_data_exposed: The number of API endpoints in this - API collection which are exposing sensitive data in their requests and/or responses. - :vartype number_of_api_endpoints_with_sensitive_data_exposed: int - :ivar sensitivity_label: The highest priority sensitivity label from Microsoft Purview in this - API collection. - :vartype sensitivity_label: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "display_name": {"readonly": True}, - "discovered_via": {"readonly": True}, - "base_url": {"readonly": True}, - "number_of_api_endpoints": {"readonly": True}, - "number_of_inactive_api_endpoints": {"readonly": True}, - "number_of_unauthenticated_api_endpoints": {"readonly": True}, - "number_of_external_api_endpoints": {"readonly": True}, - "number_of_api_endpoints_with_sensitive_data_exposed": {"readonly": True}, - "sensitivity_label": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "discovered_via": {"key": "properties.discoveredVia", "type": "str"}, - "base_url": {"key": "properties.baseUrl", "type": "str"}, - "number_of_api_endpoints": {"key": "properties.numberOfApiEndpoints", "type": "int"}, - "number_of_inactive_api_endpoints": {"key": "properties.numberOfInactiveApiEndpoints", "type": "int"}, - "number_of_unauthenticated_api_endpoints": { - "key": "properties.numberOfUnauthenticatedApiEndpoints", - "type": "int", - }, - "number_of_external_api_endpoints": {"key": "properties.numberOfExternalApiEndpoints", "type": "int"}, - "number_of_api_endpoints_with_sensitive_data_exposed": { - "key": "properties.numberOfApiEndpointsWithSensitiveDataExposed", - "type": "int", - }, - "sensitivity_label": {"key": "properties.sensitivityLabel", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.provisioning_state: Optional[Union[str, "_models.ProvisioningState"]] = None - self.display_name: Optional[str] = None - self.discovered_via: Optional[str] = None - self.base_url: Optional[str] = None - self.number_of_api_endpoints: Optional[int] = None - self.number_of_inactive_api_endpoints: Optional[int] = None - self.number_of_unauthenticated_api_endpoints: Optional[int] = None - self.number_of_external_api_endpoints: Optional[int] = None - self.number_of_api_endpoints_with_sensitive_data_exposed: Optional[int] = None - self.sensitivity_label: Optional[str] = None - - -class ApiCollectionList(_serialization.Model): - """Page of a list of API collections as represented by Microsoft Defender for APIs. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: API collections in this page. - :vartype value: list[~azure.mgmt.security.models.ApiCollection] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[ApiCollection]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.ApiCollection"]] = None - self.next_link: Optional[str] = None - - -class Application(Resource): - """Security Application over a given scope. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar display_name: display name of the application. - :vartype display_name: str - :ivar description: description of the application. - :vartype description: str - :ivar source_resource_type: The application source, what it affects, e.g. Assessments. - "Assessments" - :vartype source_resource_type: str or ~azure.mgmt.security.models.ApplicationSourceResourceType - :ivar condition_sets: The application conditionSets - see examples. - :vartype condition_sets: list[JSON] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "source_resource_type": {"key": "properties.sourceResourceType", "type": "str"}, - "condition_sets": {"key": "properties.conditionSets", "type": "[object]"}, - } - - def __init__( - self, - *, - display_name: Optional[str] = None, - description: Optional[str] = None, - source_resource_type: Optional[Union[str, "_models.ApplicationSourceResourceType"]] = None, - condition_sets: Optional[list[JSON]] = None, - **kwargs: Any - ) -> None: - """ - :keyword display_name: display name of the application. - :paramtype display_name: str - :keyword description: description of the application. - :paramtype description: str - :keyword source_resource_type: The application source, what it affects, e.g. Assessments. - "Assessments" - :paramtype source_resource_type: str or - ~azure.mgmt.security.models.ApplicationSourceResourceType - :keyword condition_sets: The application conditionSets - see examples. - :paramtype condition_sets: list[JSON] - """ - super().__init__(**kwargs) - self.display_name = display_name - self.description = description - self.source_resource_type = source_resource_type - self.condition_sets = condition_sets - - -class ApplicationCondition(_serialization.Model): - """Application's condition. - - :ivar property: The application Condition's Property, e.g. ID, see examples. - :vartype property: str - :ivar value: The application Condition's Value like IDs that contain some string, see examples. - :vartype value: str - :ivar operator: The application Condition's Operator, for example Contains for id or In for - list of possible IDs, see examples. Known values are: "Contains", "Equals", and "In". - :vartype operator: str or ~azure.mgmt.security.models.ApplicationConditionOperator - """ - - _attribute_map = { - "property": {"key": "property", "type": "str"}, - "value": {"key": "value", "type": "str"}, - "operator": {"key": "operator", "type": "str"}, - } - - def __init__( - self, - *, - property: Optional[str] = None, # pylint: disable=redefined-builtin - value: Optional[str] = None, - operator: Optional[Union[str, "_models.ApplicationConditionOperator"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword property: The application Condition's Property, e.g. ID, see examples. - :paramtype property: str - :keyword value: The application Condition's Value like IDs that contain some string, see - examples. - :paramtype value: str - :keyword operator: The application Condition's Operator, for example Contains for id or In for - list of possible IDs, see examples. Known values are: "Contains", "Equals", and "In". - :paramtype operator: str or ~azure.mgmt.security.models.ApplicationConditionOperator - """ - super().__init__(**kwargs) - self.property = property - self.value = value - self.operator = operator - - -class ApplicationsList(_serialization.Model): - """Page of a security applications list. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Collection of applications in this page. - :vartype value: list[~azure.mgmt.security.models.Application] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Application]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.Application"]] = None - self.next_link: Optional[str] = None - - -class ArcAutoProvisioning(_serialization.Model): - """The ARC autoprovisioning configuration. - - :ivar enabled: Is arc auto provisioning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. - :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "configuration": {"key": "configuration", "type": "ArcAutoProvisioningConfiguration"}, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - configuration: Optional["_models.ArcAutoProvisioningConfiguration"] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: Is arc auto provisioning enabled. - :paramtype enabled: bool - :keyword configuration: Configuration for servers Arc auto provisioning for a given - environment. - :paramtype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration - """ - super().__init__(**kwargs) - self.enabled = enabled - self.configuration = configuration - - -class ArcAutoProvisioningAws(ArcAutoProvisioning): - """The ARC autoprovisioning configuration for an AWS environment. - - :ivar enabled: Is arc auto provisioning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. - :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "configuration": {"key": "configuration", "type": "ArcAutoProvisioningConfiguration"}, - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - configuration: Optional["_models.ArcAutoProvisioningConfiguration"] = None, - cloud_role_arn: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: Is arc auto provisioning enabled. - :paramtype enabled: bool - :keyword configuration: Configuration for servers Arc auto provisioning for a given - environment. - :paramtype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature. - :paramtype cloud_role_arn: str - """ - super().__init__(enabled=enabled, configuration=configuration, **kwargs) - self.cloud_role_arn = cloud_role_arn - - -class ArcAutoProvisioningConfiguration(_serialization.Model): - """Configuration for servers Arc auto provisioning for a given environment. - - :ivar proxy: Optional HTTP proxy endpoint to use for the Arc agent. - :vartype proxy: str - :ivar private_link_scope: Optional Arc private link scope resource id to link the Arc agent. - :vartype private_link_scope: str - """ - - _attribute_map = { - "proxy": {"key": "proxy", "type": "str"}, - "private_link_scope": {"key": "privateLinkScope", "type": "str"}, - } - - def __init__(self, *, proxy: Optional[str] = None, private_link_scope: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword proxy: Optional HTTP proxy endpoint to use for the Arc agent. - :paramtype proxy: str - :keyword private_link_scope: Optional Arc private link scope resource id to link the Arc agent. - :paramtype private_link_scope: str - """ - super().__init__(**kwargs) - self.proxy = proxy - self.private_link_scope = private_link_scope - - -class ArcAutoProvisioningGcp(ArcAutoProvisioning): - """The ARC autoprovisioning configuration for an GCP environment. - - :ivar enabled: Is arc auto provisioning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. - :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration - """ - - -class AscLocation(Resource): - """The ASC location of the subscription is in the "name" field. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: An empty set of properties. - :vartype properties: JSON - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "object"}, - } - - def __init__(self, *, properties: Optional[JSON] = None, **kwargs: Any) -> None: - """ - :keyword properties: An empty set of properties. - :paramtype properties: JSON - """ - super().__init__(**kwargs) - self.properties = properties - - -class AscLocationList(_serialization.Model): - """List of locations where ASC saves your data. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.AscLocation] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[AscLocation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.AscLocation"]] = None - self.next_link: Optional[str] = None - - -class AssessmentLinks(_serialization.Model): - """Links relevant to the assessment. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar azure_portal_uri: Link to assessment in Azure Portal. - :vartype azure_portal_uri: str - """ - - _validation = { - "azure_portal_uri": {"readonly": True}, - } - - _attribute_map = { - "azure_portal_uri": {"key": "azurePortalUri", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.azure_portal_uri: Optional[str] = None - - -class AssessmentStatus(_serialization.Model): - """The result of the assessment. - - All required parameters must be populated in order to send to server. - - :ivar code: Programmatic code for the status of the assessment. Required. Known values are: - "Healthy", "Unhealthy", and "NotApplicable". - :vartype code: str or ~azure.mgmt.security.models.AssessmentStatusCode - :ivar cause: Programmatic code for the cause of the assessment status. - :vartype cause: str - :ivar description: Human readable description of the assessment status. - :vartype description: str - """ - - _validation = { - "code": {"required": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "cause": {"key": "cause", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__( - self, - *, - code: Union[str, "_models.AssessmentStatusCode"], - cause: Optional[str] = None, - description: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword code: Programmatic code for the status of the assessment. Required. Known values are: - "Healthy", "Unhealthy", and "NotApplicable". - :paramtype code: str or ~azure.mgmt.security.models.AssessmentStatusCode - :keyword cause: Programmatic code for the cause of the assessment status. - :paramtype cause: str - :keyword description: Human readable description of the assessment status. - :paramtype description: str - """ - super().__init__(**kwargs) - self.code = code - self.cause = cause - self.description = description - - -class AssessmentStatusResponse(AssessmentStatus): - """The result of the assessment. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar code: Programmatic code for the status of the assessment. Required. Known values are: - "Healthy", "Unhealthy", and "NotApplicable". - :vartype code: str or ~azure.mgmt.security.models.AssessmentStatusCode - :ivar cause: Programmatic code for the cause of the assessment status. - :vartype cause: str - :ivar description: Human readable description of the assessment status. - :vartype description: str - :ivar first_evaluation_date: The time that the assessment was created and first evaluated. - Returned as UTC time in ISO 8601 format. - :vartype first_evaluation_date: ~datetime.datetime - :ivar status_change_date: The time that the status of the assessment last changed. Returned as - UTC time in ISO 8601 format. - :vartype status_change_date: ~datetime.datetime - """ - - _validation = { - "code": {"required": True}, - "first_evaluation_date": {"readonly": True}, - "status_change_date": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "cause": {"key": "cause", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "first_evaluation_date": {"key": "firstEvaluationDate", "type": "iso-8601"}, - "status_change_date": {"key": "statusChangeDate", "type": "iso-8601"}, - } - - def __init__( - self, - *, - code: Union[str, "_models.AssessmentStatusCode"], - cause: Optional[str] = None, - description: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword code: Programmatic code for the status of the assessment. Required. Known values are: - "Healthy", "Unhealthy", and "NotApplicable". - :paramtype code: str or ~azure.mgmt.security.models.AssessmentStatusCode - :keyword cause: Programmatic code for the cause of the assessment status. - :paramtype cause: str - :keyword description: Human readable description of the assessment status. - :paramtype description: str - """ - super().__init__(code=code, cause=cause, description=description, **kwargs) - self.first_evaluation_date: Optional[datetime.datetime] = None - self.status_change_date: Optional[datetime.datetime] = None - - -class AssignedAssessmentItem(_serialization.Model): - """Describe the properties of a security assessment object reference (by key). - - :ivar assessment_key: Unique key to a security assessment object. - :vartype assessment_key: str - """ - - _attribute_map = { - "assessment_key": {"key": "assessmentKey", "type": "str"}, - } - - def __init__(self, *, assessment_key: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword assessment_key: Unique key to a security assessment object. - :paramtype assessment_key: str - """ - super().__init__(**kwargs) - self.assessment_key = assessment_key - - -class AssignedComponentItem(_serialization.Model): - """describe the properties of a security assessment object reference (by key). - - :ivar key: unique key to a security assessment object. - :vartype key: str - """ - - _attribute_map = { - "key": {"key": "key", "type": "str"}, - } - - def __init__(self, *, key: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword key: unique key to a security assessment object. - :paramtype key: str - """ - super().__init__(**kwargs) - self.key = key - - -class AssignedStandardItem(_serialization.Model): - """Describe the properties of a of a standard assignments object reference. - - :ivar id: Full resourceId of the Microsoft.Security/standard object. - :vartype id: str - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: Optional[str] = None, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: Full resourceId of the Microsoft.Security/standard object. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class AssignedStandardItemAutoGenerated(_serialization.Model): - """describe the properties of a of a security standard object reference. - - :ivar id: full resourceId of the Microsoft.Security/standard object. - :vartype id: str - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: Optional[str] = None, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: full resourceId of the Microsoft.Security/standard object. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class Tags(_serialization.Model): - """A list of key value pairs that describe the resource. - - :ivar tags: A list of key value pairs that describe the resource. - :vartype tags: dict[str, str] - """ - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, tags: Optional[dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword tags: A list of key value pairs that describe the resource. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.tags = tags - - -class ETag(_serialization.Model): - """Entity tag is used for comparing two or more entities from the same requested resource. - - :ivar etag: Entity tag is used for comparing two or more entities from the same requested - resource. - :vartype etag: str - """ - - _attribute_map = { - "etag": {"key": "etag", "type": "str"}, - } - - def __init__(self, *, etag: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword etag: Entity tag is used for comparing two or more entities from the same requested - resource. - :paramtype etag: str - """ - super().__init__(**kwargs) - self.etag = etag - - -class Kind(_serialization.Model): - """Describes an Azure resource with kind. - - :ivar kind: Kind of the resource. - :vartype kind: str - """ - - _attribute_map = { - "kind": {"key": "kind", "type": "str"}, - } - - def __init__(self, *, kind: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword kind: Kind of the resource. - :paramtype kind: str - """ - super().__init__(**kwargs) - self.kind = kind - - -class AzureTrackedResourceLocation(_serialization.Model): - """Describes an Azure resource with location. - - :ivar location: Location where the resource is stored. - :vartype location: str - """ - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - } - - def __init__(self, *, location: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword location: Location where the resource is stored. - :paramtype location: str - """ - super().__init__(**kwargs) - self.location = location - - -class TrackedResource(Resource, AzureTrackedResourceLocation, Kind, ETag, Tags): - """Describes an Azure tracked resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar tags: A list of key value pairs that describe the resource. - :vartype tags: dict[str, str] - :ivar etag: Entity tag is used for comparing two or more entities from the same requested - resource. - :vartype etag: str - :ivar kind: Kind of the resource. - :vartype kind: str - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - "etag": {"key": "etag", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__( - self, - *, - tags: Optional[dict[str, str]] = None, - etag: Optional[str] = None, - kind: Optional[str] = None, - location: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword tags: A list of key value pairs that describe the resource. - :paramtype tags: dict[str, str] - :keyword etag: Entity tag is used for comparing two or more entities from the same requested - resource. - :paramtype etag: str - :keyword kind: Kind of the resource. - :paramtype kind: str - :keyword location: Location where the resource is stored. - :paramtype location: str - """ - super().__init__(location=location, kind=kind, etag=etag, tags=tags, **kwargs) - self.tags = tags - self.etag = etag - self.kind = kind - self.location = location - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class Assignment(TrackedResource): - """Security Assignment on a resource group over a given scope. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar tags: A list of key value pairs that describe the resource. - :vartype tags: dict[str, str] - :ivar etag: Entity tag is used for comparing two or more entities from the same requested - resource. - :vartype etag: str - :ivar kind: Kind of the resource. - :vartype kind: str - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar display_name: display name of the standardAssignment. - :vartype display_name: str - :ivar description: description of the standardAssignment. - :vartype description: str - :ivar assigned_standard: Standard item with key as applied to this standard assignment over the - given scope. - :vartype assigned_standard: ~azure.mgmt.security.models.AssignedStandardItemAutoGenerated - :ivar assigned_component: Component item with key as applied to this standard assignment over - the given scope. - :vartype assigned_component: ~azure.mgmt.security.models.AssignedComponentItem - :ivar scope: Scope to which the standardAssignment applies - can be a subscription path or a - resource group under that subscription. - :vartype scope: str - :ivar effect: expected effect of this assignment (Disable/Exempt/etc). - :vartype effect: str - :ivar expires_on: Expiration date of this assignment as a full ISO date. - :vartype expires_on: ~datetime.datetime - :ivar additional_data: Additional data about the assignment. - :vartype additional_data: ~azure.mgmt.security.models.AssignmentPropertiesAdditionalData - :ivar metadata: The assignment metadata. Metadata is an open ended object and is typically a - collection of key value pairs. - :vartype metadata: JSON - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - "etag": {"key": "etag", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "assigned_standard": {"key": "properties.assignedStandard", "type": "AssignedStandardItemAutoGenerated"}, - "assigned_component": {"key": "properties.assignedComponent", "type": "AssignedComponentItem"}, - "scope": {"key": "properties.scope", "type": "str"}, - "effect": {"key": "properties.effect", "type": "str"}, - "expires_on": {"key": "properties.expiresOn", "type": "iso-8601"}, - "additional_data": {"key": "properties.additionalData", "type": "AssignmentPropertiesAdditionalData"}, - "metadata": {"key": "properties.metadata", "type": "object"}, - } - - def __init__( - self, - *, - tags: Optional[dict[str, str]] = None, - etag: Optional[str] = None, - kind: Optional[str] = None, - location: Optional[str] = None, - display_name: Optional[str] = None, - description: Optional[str] = None, - assigned_standard: Optional["_models.AssignedStandardItemAutoGenerated"] = None, - assigned_component: Optional["_models.AssignedComponentItem"] = None, - scope: Optional[str] = None, - effect: Optional[str] = None, - expires_on: Optional[datetime.datetime] = None, - additional_data: Optional["_models.AssignmentPropertiesAdditionalData"] = None, - metadata: Optional[JSON] = None, - **kwargs: Any - ) -> None: - """ - :keyword tags: A list of key value pairs that describe the resource. - :paramtype tags: dict[str, str] - :keyword etag: Entity tag is used for comparing two or more entities from the same requested - resource. - :paramtype etag: str - :keyword kind: Kind of the resource. - :paramtype kind: str - :keyword location: Location where the resource is stored. - :paramtype location: str - :keyword display_name: display name of the standardAssignment. - :paramtype display_name: str - :keyword description: description of the standardAssignment. - :paramtype description: str - :keyword assigned_standard: Standard item with key as applied to this standard assignment over - the given scope. - :paramtype assigned_standard: ~azure.mgmt.security.models.AssignedStandardItemAutoGenerated - :keyword assigned_component: Component item with key as applied to this standard assignment - over the given scope. - :paramtype assigned_component: ~azure.mgmt.security.models.AssignedComponentItem - :keyword scope: Scope to which the standardAssignment applies - can be a subscription path or a - resource group under that subscription. - :paramtype scope: str - :keyword effect: expected effect of this assignment (Disable/Exempt/etc). - :paramtype effect: str - :keyword expires_on: Expiration date of this assignment as a full ISO date. - :paramtype expires_on: ~datetime.datetime - :keyword additional_data: Additional data about the assignment. - :paramtype additional_data: ~azure.mgmt.security.models.AssignmentPropertiesAdditionalData - :keyword metadata: The assignment metadata. Metadata is an open ended object and is typically a - collection of key value pairs. - :paramtype metadata: JSON - """ - super().__init__(tags=tags, etag=etag, kind=kind, location=location, **kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.display_name = display_name - self.description = description - self.assigned_standard = assigned_standard - self.assigned_component = assigned_component - self.scope = scope - self.effect = effect - self.expires_on = expires_on - self.additional_data = additional_data - self.metadata = metadata - - -class AssignmentList(_serialization.Model): - """Page of a standard assignment list. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Collection of standardAssignments in this page. - :vartype value: list[~azure.mgmt.security.models.Assignment] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Assignment]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.Assignment"]] = None - self.next_link: Optional[str] = None - - -class AssignmentPropertiesAdditionalData(_serialization.Model): - """Additional data about the assignment. - - :ivar exemption_category: Exemption category of this assignment. - :vartype exemption_category: str - """ - - _attribute_map = { - "exemption_category": {"key": "exemptionCategory", "type": "str"}, - } - - def __init__(self, *, exemption_category: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword exemption_category: Exemption category of this assignment. - :paramtype exemption_category: str - """ - super().__init__(**kwargs) - self.exemption_category = exemption_category - - -class AtaExternalSecuritySolution(ExternalSecuritySolution): - """Represents an ATA security solution which sends logs to an OMS workspace. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :vartype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: The external security solution properties for ATA solutions. - :vartype properties: ~azure.mgmt.security.models.AtaSolutionProperties - """ - - _validation = { - "location": {"readonly": True}, - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "AtaSolutionProperties"}, - } - - def __init__( - self, - *, - kind: Optional[Union[str, "_models.ExternalSecuritySolutionKindEnum"]] = None, - properties: Optional["_models.AtaSolutionProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :paramtype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - :keyword properties: The external security solution properties for ATA solutions. - :paramtype properties: ~azure.mgmt.security.models.AtaSolutionProperties - """ - super().__init__(kind=kind, **kwargs) - self.properties = properties - - -class AtaSolutionProperties(ExternalSecuritySolutionProperties): - """The external security solution properties for ATA solutions. - - :ivar additional_properties: Unmatched properties from the message are deserialized to this - collection. - :vartype additional_properties: dict[str, any] - :ivar device_vendor: - :vartype device_vendor: str - :ivar device_type: - :vartype device_type: str - :ivar workspace: Represents an OMS workspace to which the solution is connected. - :vartype workspace: ~azure.mgmt.security.models.ConnectedWorkspace - :ivar last_event_received: - :vartype last_event_received: str - """ - - _attribute_map = { - "additional_properties": {"key": "", "type": "{object}"}, - "device_vendor": {"key": "deviceVendor", "type": "str"}, - "device_type": {"key": "deviceType", "type": "str"}, - "workspace": {"key": "workspace", "type": "ConnectedWorkspace"}, - "last_event_received": {"key": "lastEventReceived", "type": "str"}, - } - - def __init__( - self, - *, - additional_properties: Optional[dict[str, Any]] = None, - device_vendor: Optional[str] = None, - device_type: Optional[str] = None, - workspace: Optional["_models.ConnectedWorkspace"] = None, - last_event_received: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword additional_properties: Unmatched properties from the message are deserialized to this - collection. - :paramtype additional_properties: dict[str, any] - :keyword device_vendor: - :paramtype device_vendor: str - :keyword device_type: - :paramtype device_type: str - :keyword workspace: Represents an OMS workspace to which the solution is connected. - :paramtype workspace: ~azure.mgmt.security.models.ConnectedWorkspace - :keyword last_event_received: - :paramtype last_event_received: str - """ - super().__init__( - additional_properties=additional_properties, - device_vendor=device_vendor, - device_type=device_type, - workspace=workspace, - **kwargs - ) - self.last_event_received = last_event_received - - -class AttestationEvidence(_serialization.Model): - """Describe the properties of a assignment attestation. - - :ivar description: The description of the evidence. - :vartype description: str - :ivar source_url: The source url of the evidence. - :vartype source_url: str - """ - - _attribute_map = { - "description": {"key": "description", "type": "str"}, - "source_url": {"key": "sourceUrl", "type": "str"}, - } - - def __init__(self, *, description: Optional[str] = None, source_url: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword description: The description of the evidence. - :paramtype description: str - :keyword source_url: The source url of the evidence. - :paramtype source_url: str - """ - super().__init__(**kwargs) - self.description = description - self.source_url = source_url - - -class Authorization(_serialization.Model): - """Authorization payload. - - :ivar code: Gets or sets one-time OAuth code to exchange for refresh and access tokens. - - Only used during PUT/PATCH operations. The secret is cleared during GET. - :vartype code: str - """ - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - } - - def __init__(self, *, code: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword code: Gets or sets one-time OAuth code to exchange for refresh and access tokens. - - Only used during PUT/PATCH operations. The secret is cleared during GET. - :paramtype code: str - """ - super().__init__(**kwargs) - self.code = code - - -class Automation(TrackedResource): - """The security automation resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar tags: A list of key value pairs that describe the resource. - :vartype tags: dict[str, str] - :ivar etag: Entity tag is used for comparing two or more entities from the same requested - resource. - :vartype etag: str - :ivar kind: Kind of the resource. - :vartype kind: str - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar description: The security automation description. - :vartype description: str - :ivar is_enabled: Indicates whether the security automation is enabled. - :vartype is_enabled: bool - :ivar scopes: A collection of scopes on which the security automations logic is applied. - Supported scopes are the subscription itself or a resource group under that subscription. The - automation will only apply on defined scopes. - :vartype scopes: list[~azure.mgmt.security.models.AutomationScope] - :ivar sources: A collection of the source event types which evaluate the security automation - set of rules. - :vartype sources: list[~azure.mgmt.security.models.AutomationSource] - :ivar actions: A collection of the actions which are triggered if all the configured rules - evaluations, within at least one rule set, are true. - :vartype actions: list[~azure.mgmt.security.models.AutomationAction] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - "etag": {"key": "etag", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "is_enabled": {"key": "properties.isEnabled", "type": "bool"}, - "scopes": {"key": "properties.scopes", "type": "[AutomationScope]"}, - "sources": {"key": "properties.sources", "type": "[AutomationSource]"}, - "actions": {"key": "properties.actions", "type": "[AutomationAction]"}, - } - - def __init__( - self, - *, - tags: Optional[dict[str, str]] = None, - etag: Optional[str] = None, - kind: Optional[str] = None, - location: Optional[str] = None, - description: Optional[str] = None, - is_enabled: Optional[bool] = None, - scopes: Optional[list["_models.AutomationScope"]] = None, - sources: Optional[list["_models.AutomationSource"]] = None, - actions: Optional[list["_models.AutomationAction"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword tags: A list of key value pairs that describe the resource. - :paramtype tags: dict[str, str] - :keyword etag: Entity tag is used for comparing two or more entities from the same requested - resource. - :paramtype etag: str - :keyword kind: Kind of the resource. - :paramtype kind: str - :keyword location: Location where the resource is stored. - :paramtype location: str - :keyword description: The security automation description. - :paramtype description: str - :keyword is_enabled: Indicates whether the security automation is enabled. - :paramtype is_enabled: bool - :keyword scopes: A collection of scopes on which the security automations logic is applied. - Supported scopes are the subscription itself or a resource group under that subscription. The - automation will only apply on defined scopes. - :paramtype scopes: list[~azure.mgmt.security.models.AutomationScope] - :keyword sources: A collection of the source event types which evaluate the security automation - set of rules. - :paramtype sources: list[~azure.mgmt.security.models.AutomationSource] - :keyword actions: A collection of the actions which are triggered if all the configured rules - evaluations, within at least one rule set, are true. - :paramtype actions: list[~azure.mgmt.security.models.AutomationAction] - """ - super().__init__(tags=tags, etag=etag, kind=kind, location=location, **kwargs) - self.description = description - self.is_enabled = is_enabled - self.scopes = scopes - self.sources = sources - self.actions = actions - - -class AutomationAction(_serialization.Model): - """The action that should be triggered. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AutomationActionEventHub, AutomationActionLogicApp, AutomationActionWorkspace - - All required parameters must be populated in order to send to server. - - :ivar action_type: The type of the action that will be triggered by the Automation. Required. - Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". - :vartype action_type: str or ~azure.mgmt.security.models.ActionType - """ - - _validation = { - "action_type": {"required": True}, - } - - _attribute_map = { - "action_type": {"key": "actionType", "type": "str"}, - } - - _subtype_map = { - "action_type": { - "EventHub": "AutomationActionEventHub", - "LogicApp": "AutomationActionLogicApp", - "Workspace": "AutomationActionWorkspace", - } - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.action_type: Optional[str] = None - - -class AutomationActionEventHub(AutomationAction): - """The target Event Hub to which event data will be exported. To learn more about Microsoft - Defender for Cloud continuous export capabilities, visit https://aka.ms/ASCExportLearnMore. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar action_type: The type of the action that will be triggered by the Automation. Required. - Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". - :vartype action_type: str or ~azure.mgmt.security.models.ActionType - :ivar event_hub_resource_id: The target Event Hub Azure Resource ID. - :vartype event_hub_resource_id: str - :ivar sas_policy_name: The target Event Hub SAS policy name. - :vartype sas_policy_name: str - :ivar connection_string: The target Event Hub connection string (it will not be included in any - response). - :vartype connection_string: str - :ivar is_trusted_service_enabled: Indicates whether the trusted service is enabled or not. - :vartype is_trusted_service_enabled: bool - """ - - _validation = { - "action_type": {"required": True}, - "sas_policy_name": {"readonly": True}, - } - - _attribute_map = { - "action_type": {"key": "actionType", "type": "str"}, - "event_hub_resource_id": {"key": "eventHubResourceId", "type": "str"}, - "sas_policy_name": {"key": "sasPolicyName", "type": "str"}, - "connection_string": {"key": "connectionString", "type": "str"}, - "is_trusted_service_enabled": {"key": "isTrustedServiceEnabled", "type": "bool"}, - } - - def __init__( - self, - *, - event_hub_resource_id: Optional[str] = None, - connection_string: Optional[str] = None, - is_trusted_service_enabled: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword event_hub_resource_id: The target Event Hub Azure Resource ID. - :paramtype event_hub_resource_id: str - :keyword connection_string: The target Event Hub connection string (it will not be included in - any response). - :paramtype connection_string: str - :keyword is_trusted_service_enabled: Indicates whether the trusted service is enabled or not. - :paramtype is_trusted_service_enabled: bool - """ - super().__init__(**kwargs) - self.action_type: str = "EventHub" - self.event_hub_resource_id = event_hub_resource_id - self.sas_policy_name: Optional[str] = None - self.connection_string = connection_string - self.is_trusted_service_enabled = is_trusted_service_enabled - - -class AutomationActionLogicApp(AutomationAction): - """The logic app action that should be triggered. To learn more about Microsoft Defender for - Cloud's Workflow Automation capabilities, visit https://aka.ms/ASCWorkflowAutomationLearnMore. - - All required parameters must be populated in order to send to server. - - :ivar action_type: The type of the action that will be triggered by the Automation. Required. - Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". - :vartype action_type: str or ~azure.mgmt.security.models.ActionType - :ivar logic_app_resource_id: The triggered Logic App Azure Resource ID. This can also reside on - other subscriptions, given that you have permissions to trigger the Logic App. - :vartype logic_app_resource_id: str - :ivar uri: The Logic App trigger URI endpoint (it will not be included in any response). - :vartype uri: str - """ - - _validation = { - "action_type": {"required": True}, - } - - _attribute_map = { - "action_type": {"key": "actionType", "type": "str"}, - "logic_app_resource_id": {"key": "logicAppResourceId", "type": "str"}, - "uri": {"key": "uri", "type": "str"}, - } - - def __init__( - self, *, logic_app_resource_id: Optional[str] = None, uri: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword logic_app_resource_id: The triggered Logic App Azure Resource ID. This can also reside - on other subscriptions, given that you have permissions to trigger the Logic App. - :paramtype logic_app_resource_id: str - :keyword uri: The Logic App trigger URI endpoint (it will not be included in any response). - :paramtype uri: str - """ - super().__init__(**kwargs) - self.action_type: str = "LogicApp" - self.logic_app_resource_id = logic_app_resource_id - self.uri = uri - - -class AutomationActionWorkspace(AutomationAction): - """The Log Analytics Workspace to which event data will be exported. Security alerts data will - reside in the 'SecurityAlert' table and the assessments data will reside in the - 'SecurityRecommendation' table (under the 'Security'/'SecurityCenterFree' solutions). Note that - in order to view the data in the workspace, the Security Center Log Analytics free/standard - solution needs to be enabled on that workspace. To learn more about Microsoft Defender for - Cloud continuous export capabilities, visit https://aka.ms/ASCExportLearnMore. - - All required parameters must be populated in order to send to server. - - :ivar action_type: The type of the action that will be triggered by the Automation. Required. - Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". - :vartype action_type: str or ~azure.mgmt.security.models.ActionType - :ivar workspace_resource_id: The fully qualified Log Analytics Workspace Azure Resource ID. - :vartype workspace_resource_id: str - """ - - _validation = { - "action_type": {"required": True}, - } - - _attribute_map = { - "action_type": {"key": "actionType", "type": "str"}, - "workspace_resource_id": {"key": "workspaceResourceId", "type": "str"}, - } - - def __init__(self, *, workspace_resource_id: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword workspace_resource_id: The fully qualified Log Analytics Workspace Azure Resource ID. - :paramtype workspace_resource_id: str - """ - super().__init__(**kwargs) - self.action_type: str = "Workspace" - self.workspace_resource_id = workspace_resource_id - - -class AutomationList(_serialization.Model): - """List of security automations response. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: The list of security automations under the given scope. Required. - :vartype value: list[~azure.mgmt.security.models.Automation] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Automation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: list["_models.Automation"], **kwargs: Any) -> None: - """ - :keyword value: The list of security automations under the given scope. Required. - :paramtype value: list[~azure.mgmt.security.models.Automation] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class AutomationRuleSet(_serialization.Model): - """A rule set which evaluates all its rules upon an event interception. Only when all the included - rules in the rule set will be evaluated as 'true', will the event trigger the defined actions. - - :ivar rules: - :vartype rules: list[~azure.mgmt.security.models.AutomationTriggeringRule] - """ - - _attribute_map = { - "rules": {"key": "rules", "type": "[AutomationTriggeringRule]"}, - } - - def __init__(self, *, rules: Optional[list["_models.AutomationTriggeringRule"]] = None, **kwargs: Any) -> None: - """ - :keyword rules: - :paramtype rules: list[~azure.mgmt.security.models.AutomationTriggeringRule] - """ - super().__init__(**kwargs) - self.rules = rules - - -class AutomationScope(_serialization.Model): - """A single automation scope. - - :ivar description: The resources scope description. - :vartype description: str - :ivar scope_path: The resources scope path. Can be the subscription on which the automation is - defined on or a resource group under that subscription (fully qualified Azure resource IDs). - :vartype scope_path: str - """ - - _attribute_map = { - "description": {"key": "description", "type": "str"}, - "scope_path": {"key": "scopePath", "type": "str"}, - } - - def __init__(self, *, description: Optional[str] = None, scope_path: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword description: The resources scope description. - :paramtype description: str - :keyword scope_path: The resources scope path. Can be the subscription on which the automation - is defined on or a resource group under that subscription (fully qualified Azure resource IDs). - :paramtype scope_path: str - """ - super().__init__(**kwargs) - self.description = description - self.scope_path = scope_path - - -class AutomationSource(_serialization.Model): - """The source event types which evaluate the security automation set of rules. For example - - security alerts and security assessments. To learn more about the supported security events - data models schemas - please visit https://aka.ms/ASCAutomationSchemas. - - :ivar event_source: A valid event source type. Known values are: "Assessments", - "AssessmentsSnapshot", "SubAssessments", "SubAssessmentsSnapshot", "Alerts", "SecureScores", - "SecureScoresSnapshot", "SecureScoreControls", "SecureScoreControlsSnapshot", - "RegulatoryComplianceAssessment", "RegulatoryComplianceAssessmentSnapshot", "AttackPaths", and - "AttackPathsSnapshot". - :vartype event_source: str or ~azure.mgmt.security.models.EventSource - :ivar rule_sets: A set of rules which evaluate upon event interception. A logical disjunction - is applied between defined rule sets (logical 'or'). - :vartype rule_sets: list[~azure.mgmt.security.models.AutomationRuleSet] - """ - - _attribute_map = { - "event_source": {"key": "eventSource", "type": "str"}, - "rule_sets": {"key": "ruleSets", "type": "[AutomationRuleSet]"}, - } - - def __init__( - self, - *, - event_source: Optional[Union[str, "_models.EventSource"]] = None, - rule_sets: Optional[list["_models.AutomationRuleSet"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword event_source: A valid event source type. Known values are: "Assessments", - "AssessmentsSnapshot", "SubAssessments", "SubAssessmentsSnapshot", "Alerts", "SecureScores", - "SecureScoresSnapshot", "SecureScoreControls", "SecureScoreControlsSnapshot", - "RegulatoryComplianceAssessment", "RegulatoryComplianceAssessmentSnapshot", "AttackPaths", and - "AttackPathsSnapshot". - :paramtype event_source: str or ~azure.mgmt.security.models.EventSource - :keyword rule_sets: A set of rules which evaluate upon event interception. A logical - disjunction is applied between defined rule sets (logical 'or'). - :paramtype rule_sets: list[~azure.mgmt.security.models.AutomationRuleSet] - """ - super().__init__(**kwargs) - self.event_source = event_source - self.rule_sets = rule_sets - - -class AutomationTriggeringRule(_serialization.Model): - """A rule which is evaluated upon event interception. The rule is configured by comparing a - specific value from the event model to an expected value. This comparison is done by using one - of the supported operators set. - - :ivar property_j_path: The JPath of the entity model property that should be checked. - :vartype property_j_path: str - :ivar property_type: The data type of the compared operands (string, integer, floating point - number or a boolean [true/false]]. Known values are: "String", "Integer", "Number", and - "Boolean". - :vartype property_type: str or ~azure.mgmt.security.models.PropertyType - :ivar expected_value: The expected value. - :vartype expected_value: str - :ivar operator: A valid comparer operator to use. A case-insensitive comparison will be applied - for String PropertyType. Known values are: "Equals", "GreaterThan", "GreaterThanOrEqualTo", - "LesserThan", "LesserThanOrEqualTo", "NotEquals", "Contains", "StartsWith", and "EndsWith". - :vartype operator: str or ~azure.mgmt.security.models.Operator - """ - - _attribute_map = { - "property_j_path": {"key": "propertyJPath", "type": "str"}, - "property_type": {"key": "propertyType", "type": "str"}, - "expected_value": {"key": "expectedValue", "type": "str"}, - "operator": {"key": "operator", "type": "str"}, - } - - def __init__( - self, - *, - property_j_path: Optional[str] = None, - property_type: Optional[Union[str, "_models.PropertyType"]] = None, - expected_value: Optional[str] = None, - operator: Optional[Union[str, "_models.Operator"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword property_j_path: The JPath of the entity model property that should be checked. - :paramtype property_j_path: str - :keyword property_type: The data type of the compared operands (string, integer, floating point - number or a boolean [true/false]]. Known values are: "String", "Integer", "Number", and - "Boolean". - :paramtype property_type: str or ~azure.mgmt.security.models.PropertyType - :keyword expected_value: The expected value. - :paramtype expected_value: str - :keyword operator: A valid comparer operator to use. A case-insensitive comparison will be - applied for String PropertyType. Known values are: "Equals", "GreaterThan", - "GreaterThanOrEqualTo", "LesserThan", "LesserThanOrEqualTo", "NotEquals", "Contains", - "StartsWith", and "EndsWith". - :paramtype operator: str or ~azure.mgmt.security.models.Operator - """ - super().__init__(**kwargs) - self.property_j_path = property_j_path - self.property_type = property_type - self.expected_value = expected_value - self.operator = operator - - -class AutomationUpdateModel(Tags): - """The update model of security automation resource. - - :ivar tags: A list of key value pairs that describe the resource. - :vartype tags: dict[str, str] - :ivar description: The security automation description. - :vartype description: str - :ivar is_enabled: Indicates whether the security automation is enabled. - :vartype is_enabled: bool - :ivar scopes: A collection of scopes on which the security automations logic is applied. - Supported scopes are the subscription itself or a resource group under that subscription. The - automation will only apply on defined scopes. - :vartype scopes: list[~azure.mgmt.security.models.AutomationScope] - :ivar sources: A collection of the source event types which evaluate the security automation - set of rules. - :vartype sources: list[~azure.mgmt.security.models.AutomationSource] - :ivar actions: A collection of the actions which are triggered if all the configured rules - evaluations, within at least one rule set, are true. - :vartype actions: list[~azure.mgmt.security.models.AutomationAction] - """ - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - "description": {"key": "properties.description", "type": "str"}, - "is_enabled": {"key": "properties.isEnabled", "type": "bool"}, - "scopes": {"key": "properties.scopes", "type": "[AutomationScope]"}, - "sources": {"key": "properties.sources", "type": "[AutomationSource]"}, - "actions": {"key": "properties.actions", "type": "[AutomationAction]"}, - } - - def __init__( - self, - *, - tags: Optional[dict[str, str]] = None, - description: Optional[str] = None, - is_enabled: Optional[bool] = None, - scopes: Optional[list["_models.AutomationScope"]] = None, - sources: Optional[list["_models.AutomationSource"]] = None, - actions: Optional[list["_models.AutomationAction"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword tags: A list of key value pairs that describe the resource. - :paramtype tags: dict[str, str] - :keyword description: The security automation description. - :paramtype description: str - :keyword is_enabled: Indicates whether the security automation is enabled. - :paramtype is_enabled: bool - :keyword scopes: A collection of scopes on which the security automations logic is applied. - Supported scopes are the subscription itself or a resource group under that subscription. The - automation will only apply on defined scopes. - :paramtype scopes: list[~azure.mgmt.security.models.AutomationScope] - :keyword sources: A collection of the source event types which evaluate the security automation - set of rules. - :paramtype sources: list[~azure.mgmt.security.models.AutomationSource] - :keyword actions: A collection of the actions which are triggered if all the configured rules - evaluations, within at least one rule set, are true. - :paramtype actions: list[~azure.mgmt.security.models.AutomationAction] - """ - super().__init__(tags=tags, **kwargs) - self.description = description - self.is_enabled = is_enabled - self.scopes = scopes - self.sources = sources - self.actions = actions - - -class AutomationValidationStatus(_serialization.Model): - """The security automation model state property bag. - - :ivar is_valid: Indicates whether the model is valid or not. - :vartype is_valid: bool - :ivar message: The validation message. - :vartype message: str - """ - - _attribute_map = { - "is_valid": {"key": "isValid", "type": "bool"}, - "message": {"key": "message", "type": "str"}, - } - - def __init__(self, *, is_valid: Optional[bool] = None, message: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword is_valid: Indicates whether the model is valid or not. - :paramtype is_valid: bool - :keyword message: The validation message. - :paramtype message: str - """ - super().__init__(**kwargs) - self.is_valid = is_valid - self.message = message - - -class AutoProvisioningSetting(Resource): - """Auto provisioning setting. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar auto_provision: Describes what kind of security agent provisioning action to take. Known - values are: "On" and "Off". - :vartype auto_provision: str or ~azure.mgmt.security.models.AutoProvision - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "auto_provision": {"key": "properties.autoProvision", "type": "str"}, - } - - def __init__(self, *, auto_provision: Optional[Union[str, "_models.AutoProvision"]] = None, **kwargs: Any) -> None: - """ - :keyword auto_provision: Describes what kind of security agent provisioning action to take. - Known values are: "On" and "Off". - :paramtype auto_provision: str or ~azure.mgmt.security.models.AutoProvision - """ - super().__init__(**kwargs) - self.auto_provision = auto_provision - - -class AutoProvisioningSettingList(_serialization.Model): - """List of all the auto provisioning settings response. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of all the auto provisioning settings. - :vartype value: list[~azure.mgmt.security.models.AutoProvisioningSetting] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[AutoProvisioningSetting]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[list["_models.AutoProvisioningSetting"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of all the auto provisioning settings. - :paramtype value: list[~azure.mgmt.security.models.AutoProvisioningSetting] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class EnvironmentData(_serialization.Model): - """The security connector environment data. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AwsEnvironmentData, AzureDevOpsScopeEnvironmentData, DockerHubEnvironmentData, - GcpProjectEnvironmentData, GithubScopeEnvironmentData, GitlabScopeEnvironmentData, - JFrogEnvironmentData - - All required parameters must be populated in order to send to server. - - :ivar environment_type: The type of the environment data. Required. Known values are: - "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", - "DockerHubOrganization", and "JFrogArtifactory". - :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType - """ - - _validation = { - "environment_type": {"required": True}, - } - - _attribute_map = { - "environment_type": {"key": "environmentType", "type": "str"}, - } - - _subtype_map = { - "environment_type": { - "AwsAccount": "AwsEnvironmentData", - "AzureDevOpsScope": "AzureDevOpsScopeEnvironmentData", - "DockerHubOrganization": "DockerHubEnvironmentData", - "GcpProject": "GcpProjectEnvironmentData", - "GithubScope": "GithubScopeEnvironmentData", - "GitlabScope": "GitlabScopeEnvironmentData", - "JFrogArtifactory": "JFrogEnvironmentData", - } - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.environment_type: Optional[str] = None - - -class AwsEnvironmentData(EnvironmentData): - """The AWS connector environment data. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar environment_type: The type of the environment data. Required. Known values are: - "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", - "DockerHubOrganization", and "JFrogArtifactory". - :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType - :ivar organizational_data: The AWS account's organizational data. - :vartype organizational_data: ~azure.mgmt.security.models.AwsOrganizationalData - :ivar regions: list of regions to scan. - :vartype regions: list[str] - :ivar account_name: The AWS account name. - :vartype account_name: str - :ivar scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). - :vartype scan_interval: int - """ - - _validation = { - "environment_type": {"required": True}, - "account_name": {"readonly": True}, - } - - _attribute_map = { - "environment_type": {"key": "environmentType", "type": "str"}, - "organizational_data": {"key": "organizationalData", "type": "AwsOrganizationalData"}, - "regions": {"key": "regions", "type": "[str]"}, - "account_name": {"key": "accountName", "type": "str"}, - "scan_interval": {"key": "scanInterval", "type": "int"}, - } - - def __init__( - self, - *, - organizational_data: Optional["_models.AwsOrganizationalData"] = None, - regions: Optional[list[str]] = None, - scan_interval: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword organizational_data: The AWS account's organizational data. - :paramtype organizational_data: ~azure.mgmt.security.models.AwsOrganizationalData - :keyword regions: list of regions to scan. - :paramtype regions: list[str] - :keyword scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). - :paramtype scan_interval: int - """ - super().__init__(**kwargs) - self.environment_type: str = "AwsAccount" - self.organizational_data = organizational_data - self.regions = regions - self.account_name: Optional[str] = None - self.scan_interval = scan_interval - - -class AwsOrganizationalData(_serialization.Model): - """The AWS organization data. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AwsOrganizationalDataMember, AwsOrganizationalDataMaster - - All required parameters must be populated in order to send to server. - - :ivar organization_membership_type: The multi cloud account's membership type in the - organization. Required. Known values are: "Member" and "Organization". - :vartype organization_membership_type: str or - ~azure.mgmt.security.models.OrganizationMembershipType - """ - - _validation = { - "organization_membership_type": {"required": True}, - } - - _attribute_map = { - "organization_membership_type": {"key": "organizationMembershipType", "type": "str"}, - } - - _subtype_map = { - "organization_membership_type": { - "Member": "AwsOrganizationalDataMember", - "Organization": "AwsOrganizationalDataMaster", - } - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.organization_membership_type: Optional[str] = None - - -class AwsOrganizationalDataMaster(AwsOrganizationalData): - """The AWS organization data for the master account. - - All required parameters must be populated in order to send to server. - - :ivar organization_membership_type: The multi cloud account's membership type in the - organization. Required. Known values are: "Member" and "Organization". - :vartype organization_membership_type: str or - ~azure.mgmt.security.models.OrganizationMembershipType - :ivar stackset_name: If the multi cloud account is of membership type organization, this will - be the name of the onboarding stackset. - :vartype stackset_name: str - :ivar excluded_account_ids: If the multi cloud account is of membership type organization, list - of accounts excluded from offering. - :vartype excluded_account_ids: list[str] - """ - - _validation = { - "organization_membership_type": {"required": True}, - } - - _attribute_map = { - "organization_membership_type": {"key": "organizationMembershipType", "type": "str"}, - "stackset_name": {"key": "stacksetName", "type": "str"}, - "excluded_account_ids": {"key": "excludedAccountIds", "type": "[str]"}, - } - - def __init__( - self, *, stackset_name: Optional[str] = None, excluded_account_ids: Optional[list[str]] = None, **kwargs: Any - ) -> None: - """ - :keyword stackset_name: If the multi cloud account is of membership type organization, this - will be the name of the onboarding stackset. - :paramtype stackset_name: str - :keyword excluded_account_ids: If the multi cloud account is of membership type organization, - list of accounts excluded from offering. - :paramtype excluded_account_ids: list[str] - """ - super().__init__(**kwargs) - self.organization_membership_type: str = "Organization" - self.stackset_name = stackset_name - self.excluded_account_ids = excluded_account_ids - - -class AwsOrganizationalDataMember(AwsOrganizationalData): - """The AWS organization data for the member account. - - All required parameters must be populated in order to send to server. - - :ivar organization_membership_type: The multi cloud account's membership type in the - organization. Required. Known values are: "Member" and "Organization". - :vartype organization_membership_type: str or - ~azure.mgmt.security.models.OrganizationMembershipType - :ivar parent_hierarchy_id: If the multi cloud account is not of membership type organization, - this will be the ID of the account's parent. - :vartype parent_hierarchy_id: str - """ - - _validation = { - "organization_membership_type": {"required": True}, - } - - _attribute_map = { - "organization_membership_type": {"key": "organizationMembershipType", "type": "str"}, - "parent_hierarchy_id": {"key": "parentHierarchyId", "type": "str"}, - } - - def __init__(self, *, parent_hierarchy_id: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword parent_hierarchy_id: If the multi cloud account is not of membership type - organization, this will be the ID of the account's parent. - :paramtype parent_hierarchy_id: str - """ - super().__init__(**kwargs) - self.organization_membership_type: str = "Member" - self.parent_hierarchy_id = parent_hierarchy_id - - -class ResourceAutoGenerated(_serialization.Model): - """Common fields that are returned in the response for all Azure Resource Manager resources. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class ProxyResource(ResourceAutoGenerated): - """The resource model definition for a Azure Resource Manager proxy resource. It will not have - tags and a location. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - """ - - -class AzureDevOpsOrg(ProxyResource): - """Azure DevOps Organization resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Metadata pertaining to creation and last modification of the resource. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar properties: Azure DevOps Organization properties. - :vartype properties: ~azure.mgmt.security.models.AzureDevOpsOrgProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "properties": {"key": "properties", "type": "AzureDevOpsOrgProperties"}, - } - - def __init__(self, *, properties: Optional["_models.AzureDevOpsOrgProperties"] = None, **kwargs: Any) -> None: - """ - :keyword properties: Azure DevOps Organization properties. - :paramtype properties: ~azure.mgmt.security.models.AzureDevOpsOrgProperties - """ - super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.properties = properties - - -class AzureDevOpsOrganizationConfiguration(_serialization.Model): - """AzureDevOps Org Inventory Configuration. - - :ivar auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and - "NotApplicable". - :vartype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :ivar project_configs: AzureDevOps Project Inventory Configuration. Dictionary of AzureDevOps - project name to desired project configuration. If AutoDiscovery is Enabled, this field should - be empty or null. - :vartype project_configs: dict[str, - ~azure.mgmt.security.models.AzureDevOpsProjectConfiguration] - """ - - _attribute_map = { - "auto_discovery": {"key": "autoDiscovery", "type": "str"}, - "project_configs": {"key": "projectConfigs", "type": "{AzureDevOpsProjectConfiguration}"}, - } - - def __init__( - self, - *, - auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, - project_configs: Optional[dict[str, "_models.AzureDevOpsProjectConfiguration"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and - "NotApplicable". - :paramtype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :keyword project_configs: AzureDevOps Project Inventory Configuration. Dictionary of - AzureDevOps project name to desired project configuration. If AutoDiscovery is Enabled, this - field should be empty or null. - :paramtype project_configs: dict[str, - ~azure.mgmt.security.models.AzureDevOpsProjectConfiguration] - """ - super().__init__(**kwargs) - self.auto_discovery = auto_discovery - self.project_configs = project_configs - - -class AzureDevOpsOrgListResponse(_serialization.Model): - """List of RP resources which supports pagination. - - :ivar value: Gets or sets list of resources. - :vartype value: list[~azure.mgmt.security.models.AzureDevOpsOrg] - :ivar next_link: Gets or sets next link to scroll over the results. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[AzureDevOpsOrg]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[list["_models.AzureDevOpsOrg"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Gets or sets list of resources. - :paramtype value: list[~azure.mgmt.security.models.AzureDevOpsOrg] - :keyword next_link: Gets or sets next link to scroll over the results. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class AzureDevOpsOrgProperties(_serialization.Model): - """Azure DevOps Organization properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provisioning_status_message: Gets the resource status message. - :vartype provisioning_status_message: str - :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. - :vartype provisioning_status_update_time_utc: ~datetime.datetime - :ivar provisioning_state: The provisioning state of the resource. - - Pending - Provisioning pending. - Failed - Provisioning failed. - Succeeded - Successful provisioning. - Canceled - Provisioning canceled. - PendingDeletion - Deletion pending. - DeletionSuccess - Deletion successful. - DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", - "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". - :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState - :ivar onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - :ivar actionable_remediation: Configuration payload for PR Annotations. - :vartype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation - """ - - _validation = { - "provisioning_status_message": {"readonly": True}, - "provisioning_status_update_time_utc": {"readonly": True}, - "provisioning_state": {"readonly": True}, - } - - _attribute_map = { - "provisioning_status_message": {"key": "provisioningStatusMessage", "type": "str"}, - "provisioning_status_update_time_utc": {"key": "provisioningStatusUpdateTimeUtc", "type": "iso-8601"}, - "provisioning_state": {"key": "provisioningState", "type": "str"}, - "onboarding_state": {"key": "onboardingState", "type": "str"}, - "actionable_remediation": {"key": "actionableRemediation", "type": "ActionableRemediation"}, - } - - def __init__( - self, - *, - onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, - actionable_remediation: Optional["_models.ActionableRemediation"] = None, - **kwargs: Any - ) -> None: - """ - :keyword onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :paramtype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - :keyword actionable_remediation: Configuration payload for PR Annotations. - :paramtype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation - """ - super().__init__(**kwargs) - self.provisioning_status_message: Optional[str] = None - self.provisioning_status_update_time_utc: Optional[datetime.datetime] = None - self.provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = None - self.onboarding_state = onboarding_state - self.actionable_remediation = actionable_remediation - - -class AzureDevOpsProject(ProxyResource): - """Azure DevOps Project resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Metadata pertaining to creation and last modification of the resource. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar properties: Azure DevOps Project properties. - :vartype properties: ~azure.mgmt.security.models.AzureDevOpsProjectProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "properties": {"key": "properties", "type": "AzureDevOpsProjectProperties"}, - } - - def __init__(self, *, properties: Optional["_models.AzureDevOpsProjectProperties"] = None, **kwargs: Any) -> None: - """ - :keyword properties: Azure DevOps Project properties. - :paramtype properties: ~azure.mgmt.security.models.AzureDevOpsProjectProperties - """ - super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.properties = properties - - -class AzureDevOpsProjectConfiguration(_serialization.Model): - """AzureDevOps Project Inventory Configuration. - - :ivar auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and - "NotApplicable". - :vartype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :ivar repository_configs: AzureDevOps Repository Inventory Configuration. Dictionary of - AzureDevOps repository name to desired repository configuration. If AutoDiscovery is Enabled, - this field should be null or empty. - :vartype repository_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] - """ - - _attribute_map = { - "auto_discovery": {"key": "autoDiscovery", "type": "str"}, - "repository_configs": {"key": "repositoryConfigs", "type": "{BaseResourceConfiguration}"}, - } - - def __init__( - self, - *, - auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, - repository_configs: Optional[dict[str, "_models.BaseResourceConfiguration"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and - "NotApplicable". - :paramtype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :keyword repository_configs: AzureDevOps Repository Inventory Configuration. Dictionary of - AzureDevOps repository name to desired repository configuration. If AutoDiscovery is Enabled, - this field should be null or empty. - :paramtype repository_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] - """ - super().__init__(**kwargs) - self.auto_discovery = auto_discovery - self.repository_configs = repository_configs - - -class AzureDevOpsProjectListResponse(_serialization.Model): - """List of RP resources which supports pagination. - - :ivar value: Gets or sets list of resources. - :vartype value: list[~azure.mgmt.security.models.AzureDevOpsProject] - :ivar next_link: Gets or sets next link to scroll over the results. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[AzureDevOpsProject]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[list["_models.AzureDevOpsProject"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Gets or sets list of resources. - :paramtype value: list[~azure.mgmt.security.models.AzureDevOpsProject] - :keyword next_link: Gets or sets next link to scroll over the results. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class AzureDevOpsProjectProperties(_serialization.Model): - """Azure DevOps Project properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provisioning_status_message: Gets the resource status message. - :vartype provisioning_status_message: str - :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. - :vartype provisioning_status_update_time_utc: ~datetime.datetime - :ivar provisioning_state: The provisioning state of the resource. - - Pending - Provisioning pending. - Failed - Provisioning failed. - Succeeded - Successful provisioning. - Canceled - Provisioning canceled. - PendingDeletion - Deletion pending. - DeletionSuccess - Deletion successful. - DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", - "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". - :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState - :ivar parent_org_name: Gets or sets parent Azure DevOps Organization name. - :vartype parent_org_name: str - :ivar project_id: Gets or sets Azure DevOps Project id. - :vartype project_id: str - :ivar onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - :ivar actionable_remediation: Configuration payload for PR Annotations. - :vartype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation - """ - - _validation = { - "provisioning_status_message": {"readonly": True}, - "provisioning_status_update_time_utc": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "project_id": {"readonly": True}, - } - - _attribute_map = { - "provisioning_status_message": {"key": "provisioningStatusMessage", "type": "str"}, - "provisioning_status_update_time_utc": {"key": "provisioningStatusUpdateTimeUtc", "type": "iso-8601"}, - "provisioning_state": {"key": "provisioningState", "type": "str"}, - "parent_org_name": {"key": "parentOrgName", "type": "str"}, - "project_id": {"key": "projectId", "type": "str"}, - "onboarding_state": {"key": "onboardingState", "type": "str"}, - "actionable_remediation": {"key": "actionableRemediation", "type": "ActionableRemediation"}, - } - - def __init__( - self, - *, - parent_org_name: Optional[str] = None, - onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, - actionable_remediation: Optional["_models.ActionableRemediation"] = None, - **kwargs: Any - ) -> None: - """ - :keyword parent_org_name: Gets or sets parent Azure DevOps Organization name. - :paramtype parent_org_name: str - :keyword onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :paramtype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - :keyword actionable_remediation: Configuration payload for PR Annotations. - :paramtype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation - """ - super().__init__(**kwargs) - self.provisioning_status_message: Optional[str] = None - self.provisioning_status_update_time_utc: Optional[datetime.datetime] = None - self.provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = None - self.parent_org_name = parent_org_name - self.project_id: Optional[str] = None - self.onboarding_state = onboarding_state - self.actionable_remediation = actionable_remediation - - -class AzureDevOpsRepository(ProxyResource): - """Azure DevOps Repository resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Metadata pertaining to creation and last modification of the resource. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar properties: Azure DevOps Repository properties. - :vartype properties: ~azure.mgmt.security.models.AzureDevOpsRepositoryProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "properties": {"key": "properties", "type": "AzureDevOpsRepositoryProperties"}, - } - - def __init__( - self, *, properties: Optional["_models.AzureDevOpsRepositoryProperties"] = None, **kwargs: Any - ) -> None: - """ - :keyword properties: Azure DevOps Repository properties. - :paramtype properties: ~azure.mgmt.security.models.AzureDevOpsRepositoryProperties - """ - super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.properties = properties - - -class AzureDevOpsRepositoryListResponse(_serialization.Model): - """List of RP resources which supports pagination. - - :ivar value: Gets or sets list of resources. - :vartype value: list[~azure.mgmt.security.models.AzureDevOpsRepository] - :ivar next_link: Gets or sets next link to scroll over the results. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[AzureDevOpsRepository]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[list["_models.AzureDevOpsRepository"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Gets or sets list of resources. - :paramtype value: list[~azure.mgmt.security.models.AzureDevOpsRepository] - :keyword next_link: Gets or sets next link to scroll over the results. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class AzureDevOpsRepositoryProperties(_serialization.Model): - """Azure DevOps Repository properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provisioning_status_message: Gets the resource status message. - :vartype provisioning_status_message: str - :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. - :vartype provisioning_status_update_time_utc: ~datetime.datetime - :ivar provisioning_state: The provisioning state of the resource. - - Pending - Provisioning pending. - Failed - Provisioning failed. - Succeeded - Successful provisioning. - Canceled - Provisioning canceled. - PendingDeletion - Deletion pending. - DeletionSuccess - Deletion successful. - DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", - "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". - :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState - :ivar parent_org_name: Gets or sets parent Azure DevOps Organization name. - :vartype parent_org_name: str - :ivar parent_project_name: Gets or sets parent Azure DevOps Project name. - :vartype parent_project_name: str - :ivar repo_id: Gets or sets Azure DevOps Repository id. - :vartype repo_id: str - :ivar repo_url: Gets or sets Azure DevOps Repository url. - :vartype repo_url: str - :ivar visibility: Gets or sets Azure DevOps repository visibility, whether it is public or - private etc. - :vartype visibility: str - :ivar onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - :ivar actionable_remediation: Configuration payload for PR Annotations. - :vartype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation - """ - - _validation = { - "provisioning_status_message": {"readonly": True}, - "provisioning_status_update_time_utc": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "repo_id": {"readonly": True}, - "repo_url": {"readonly": True}, - "visibility": {"readonly": True}, - } - - _attribute_map = { - "provisioning_status_message": {"key": "provisioningStatusMessage", "type": "str"}, - "provisioning_status_update_time_utc": {"key": "provisioningStatusUpdateTimeUtc", "type": "iso-8601"}, - "provisioning_state": {"key": "provisioningState", "type": "str"}, - "parent_org_name": {"key": "parentOrgName", "type": "str"}, - "parent_project_name": {"key": "parentProjectName", "type": "str"}, - "repo_id": {"key": "repoId", "type": "str"}, - "repo_url": {"key": "repoUrl", "type": "str"}, - "visibility": {"key": "visibility", "type": "str"}, - "onboarding_state": {"key": "onboardingState", "type": "str"}, - "actionable_remediation": {"key": "actionableRemediation", "type": "ActionableRemediation"}, - } - - def __init__( - self, - *, - parent_org_name: Optional[str] = None, - parent_project_name: Optional[str] = None, - onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, - actionable_remediation: Optional["_models.ActionableRemediation"] = None, - **kwargs: Any - ) -> None: - """ - :keyword parent_org_name: Gets or sets parent Azure DevOps Organization name. - :paramtype parent_org_name: str - :keyword parent_project_name: Gets or sets parent Azure DevOps Project name. - :paramtype parent_project_name: str - :keyword onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :paramtype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - :keyword actionable_remediation: Configuration payload for PR Annotations. - :paramtype actionable_remediation: ~azure.mgmt.security.models.ActionableRemediation - """ - super().__init__(**kwargs) - self.provisioning_status_message: Optional[str] = None - self.provisioning_status_update_time_utc: Optional[datetime.datetime] = None - self.provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = None - self.parent_org_name = parent_org_name - self.parent_project_name = parent_project_name - self.repo_id: Optional[str] = None - self.repo_url: Optional[str] = None - self.visibility: Optional[str] = None - self.onboarding_state = onboarding_state - self.actionable_remediation = actionable_remediation - - -class AzureDevOpsScopeEnvironmentData(EnvironmentData): - """The AzureDevOps scope connector's environment data. - - All required parameters must be populated in order to send to server. - - :ivar environment_type: The type of the environment data. Required. Known values are: - "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", - "DockerHubOrganization", and "JFrogArtifactory". - :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType - """ - - _validation = { - "environment_type": {"required": True}, - } - - _attribute_map = { - "environment_type": {"key": "environmentType", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.environment_type: str = "AzureDevOpsScope" - - -class ResourceDetails(_serialization.Model): - """Details of the resource that was assessed. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AzureResourceDetails, OnPremiseResourceDetails - - All required parameters must be populated in order to send to server. - - :ivar source: The platform where the assessed resource resides. Required. Known values are: - "Azure", "OnPremise", and "OnPremiseSql". - :vartype source: str or ~azure.mgmt.security.models.Source - """ - - _validation = { - "source": {"required": True}, - } - - _attribute_map = { - "source": {"key": "source", "type": "str"}, - } - - _subtype_map = {"source": {"Azure": "AzureResourceDetails", "OnPremise": "OnPremiseResourceDetails"}} - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.source: Optional[str] = None - - -class AzureResourceDetails(ResourceDetails): - """Details of the Azure resource that was assessed. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar source: The platform where the assessed resource resides. Required. Known values are: - "Azure", "OnPremise", and "OnPremiseSql". - :vartype source: str or ~azure.mgmt.security.models.Source - :ivar id: Azure resource Id of the assessed resource. - :vartype id: str - """ - - _validation = { - "source": {"required": True}, - "id": {"readonly": True}, - } - - _attribute_map = { - "source": {"key": "source", "type": "str"}, - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.source: str = "Azure" - self.id: Optional[str] = None - - -class ResourceIdentifier(_serialization.Model): - """A resource identifier for an alert which can be used to direct the alert to the right product - exposure group (tenant, workspace, subscription etc.). - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AzureResourceIdentifier, LogAnalyticsIdentifier - - All required parameters must be populated in order to send to server. - - :ivar type: There can be multiple identifiers of different type per alert, this field specify - the identifier type. Required. Known values are: "AzureResource" and "LogAnalytics". - :vartype type: str or ~azure.mgmt.security.models.ResourceIdentifierType - """ - - _validation = { - "type": {"required": True}, - } - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - } - - _subtype_map = {"type": {"AzureResource": "AzureResourceIdentifier", "LogAnalytics": "LogAnalyticsIdentifier"}} - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.type: Optional[str] = None - - -class AzureResourceIdentifier(ResourceIdentifier): - """Azure resource identifier. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar type: There can be multiple identifiers of different type per alert, this field specify - the identifier type. Required. Known values are: "AzureResource" and "LogAnalytics". - :vartype type: str or ~azure.mgmt.security.models.ResourceIdentifierType - :ivar azure_resource_id: ARM resource identifier for the cloud resource being alerted on. - :vartype azure_resource_id: str - """ - - _validation = { - "type": {"required": True}, - "azure_resource_id": {"readonly": True}, - } - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - "azure_resource_id": {"key": "azureResourceId", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.type: str = "AzureResource" - self.azure_resource_id: Optional[str] = None - - -class AzureResourceLink(_serialization.Model): - """Describes an Azure resource with kind. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Azure resource Id. - :vartype id: str - """ - - _validation = { - "id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id: Optional[str] = None - - -class ResourceAutoGenerated2(_serialization.Model): - """Common fields that are returned in the response for all Azure Resource Manager resources. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. E.g. - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}". - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - self.system_data: Optional["_models.SystemData"] = None - - -class ServerVulnerabilityAssessmentsSetting(ResourceAutoGenerated2): - """A base vulnerability assessments setting on servers in the defined scope. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - AzureServersSetting - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Fully qualified resource ID for the resource. E.g. - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}". - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar kind: The kind of the server vulnerability assessments setting. Required. - "AzureServersSetting" - :vartype kind: str or ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKind - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "kind": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "kind": {"key": "kind", "type": "str"}, - } - - _subtype_map = {"kind": {"AzureServersSetting": "AzureServersSetting"}} - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.kind: Optional[str] = None - - -class AzureServersSetting(ServerVulnerabilityAssessmentsSetting): - """A vulnerability assessments setting on Azure servers in the defined scope. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Fully qualified resource ID for the resource. E.g. - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}". - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar kind: The kind of the server vulnerability assessments setting. Required. - "AzureServersSetting" - :vartype kind: str or ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKind - :ivar selected_provider: The selected vulnerability assessments provider on Azure servers in - the defined scope. "MdeTvm" - :vartype selected_provider: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "kind": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "kind": {"key": "kind", "type": "str"}, - "selected_provider": {"key": "properties.selectedProvider", "type": "str"}, - } - - def __init__( - self, - *, - selected_provider: Optional[ - Union[str, "_models.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider"] - ] = None, - **kwargs: Any - ) -> None: - """ - :keyword selected_provider: The selected vulnerability assessments provider on Azure servers in - the defined scope. "MdeTvm" - :paramtype selected_provider: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider - """ - super().__init__(**kwargs) - self.kind: str = "AzureServersSetting" - self.selected_provider = selected_provider - - -class Baseline(_serialization.Model): - """Baseline details. - - :ivar expected_results: Expected results. - :vartype expected_results: list[list[str]] - :ivar updated_time: Baseline update time (UTC). - :vartype updated_time: ~datetime.datetime - """ - - _attribute_map = { - "expected_results": {"key": "expectedResults", "type": "[[str]]"}, - "updated_time": {"key": "updatedTime", "type": "iso-8601"}, - } - - def __init__( - self, - *, - expected_results: Optional[list[list[str]]] = None, - updated_time: Optional[datetime.datetime] = None, - **kwargs: Any - ) -> None: - """ - :keyword expected_results: Expected results. - :paramtype expected_results: list[list[str]] - :keyword updated_time: Baseline update time (UTC). - :paramtype updated_time: ~datetime.datetime - """ - super().__init__(**kwargs) - self.expected_results = expected_results - self.updated_time = updated_time - - -class BaselineAdjustedResult(_serialization.Model): - """The rule result adjusted with baseline. - - :ivar baseline: Baseline details. - :vartype baseline: ~azure.mgmt.security.models.Baseline - :ivar status: The rule result status. Known values are: "NonFinding", "Finding", - "InternalError", and "NotApplicable". - :vartype status: str or ~azure.mgmt.security.models.RuleStatus - :ivar results_not_in_baseline: Results that are not in the baseline. - :vartype results_not_in_baseline: list[list[str]] - :ivar results_only_in_baseline: Results that are in the baseline. - :vartype results_only_in_baseline: list[list[str]] - """ - - _attribute_map = { - "baseline": {"key": "baseline", "type": "Baseline"}, - "status": {"key": "status", "type": "str"}, - "results_not_in_baseline": {"key": "resultsNotInBaseline", "type": "[[str]]"}, - "results_only_in_baseline": {"key": "resultsOnlyInBaseline", "type": "[[str]]"}, - } - - def __init__( - self, - *, - baseline: Optional["_models.Baseline"] = None, - status: Optional[Union[str, "_models.RuleStatus"]] = None, - results_not_in_baseline: Optional[list[list[str]]] = None, - results_only_in_baseline: Optional[list[list[str]]] = None, - **kwargs: Any - ) -> None: - """ - :keyword baseline: Baseline details. - :paramtype baseline: ~azure.mgmt.security.models.Baseline - :keyword status: The rule result status. Known values are: "NonFinding", "Finding", - "InternalError", and "NotApplicable". - :paramtype status: str or ~azure.mgmt.security.models.RuleStatus - :keyword results_not_in_baseline: Results that are not in the baseline. - :paramtype results_not_in_baseline: list[list[str]] - :keyword results_only_in_baseline: Results that are in the baseline. - :paramtype results_only_in_baseline: list[list[str]] - """ - super().__init__(**kwargs) - self.baseline = baseline - self.status = status - self.results_not_in_baseline = results_not_in_baseline - self.results_only_in_baseline = results_only_in_baseline - - -class BaseResourceConfiguration(_serialization.Model): - """Base Resource Inventory configuration changes. - - :ivar desired_onboarding_state: Onboarding states. Known values are: "Disabled" and "Enabled". - :vartype desired_onboarding_state: str or ~azure.mgmt.security.models.DesiredOnboardingState - """ - - _attribute_map = { - "desired_onboarding_state": {"key": "desiredOnboardingState", "type": "str"}, - } - - def __init__( - self, *, desired_onboarding_state: Optional[Union[str, "_models.DesiredOnboardingState"]] = None, **kwargs: Any - ) -> None: - """ - :keyword desired_onboarding_state: Onboarding states. Known values are: "Disabled" and - "Enabled". - :paramtype desired_onboarding_state: str or ~azure.mgmt.security.models.DesiredOnboardingState - """ - super().__init__(**kwargs) - self.desired_onboarding_state = desired_onboarding_state - - -class BenchmarkReference(_serialization.Model): - """The benchmark references. - - :ivar benchmark: The benchmark name. - :vartype benchmark: str - :ivar reference: The benchmark reference. - :vartype reference: str - """ - - _attribute_map = { - "benchmark": {"key": "benchmark", "type": "str"}, - "reference": {"key": "reference", "type": "str"}, - } - - def __init__(self, *, benchmark: Optional[str] = None, reference: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword benchmark: The benchmark name. - :paramtype benchmark: str - :keyword reference: The benchmark reference. - :paramtype reference: str - """ - super().__init__(**kwargs) - self.benchmark = benchmark - self.reference = reference - - -class BlobsScanSummary(_serialization.Model): - """A summary of the scan results of the blobs that were scanned. - - :ivar total_blobs_scanned: The total number of blobs that were scanned. - :vartype total_blobs_scanned: int - :ivar malicious_blobs_count: The number of malicious blobs that were detected during the scan. - :vartype malicious_blobs_count: int - :ivar skipped_blobs_count: The number of blobs that were skipped. - :vartype skipped_blobs_count: int - :ivar failed_blobs_count: The number of failed blob scans. - :vartype failed_blobs_count: int - :ivar scanned_blobs_in_gb: The number of gigabytes of data that were scanned. - :vartype scanned_blobs_in_gb: float - """ - - _attribute_map = { - "total_blobs_scanned": {"key": "totalBlobsScanned", "type": "int"}, - "malicious_blobs_count": {"key": "maliciousBlobsCount", "type": "int"}, - "skipped_blobs_count": {"key": "skippedBlobsCount", "type": "int"}, - "failed_blobs_count": {"key": "failedBlobsCount", "type": "int"}, - "scanned_blobs_in_gb": {"key": "scannedBlobsInGB", "type": "float"}, - } - - def __init__( - self, - *, - total_blobs_scanned: Optional[int] = None, - malicious_blobs_count: Optional[int] = None, - skipped_blobs_count: Optional[int] = None, - failed_blobs_count: Optional[int] = None, - scanned_blobs_in_gb: Optional[float] = None, - **kwargs: Any - ) -> None: - """ - :keyword total_blobs_scanned: The total number of blobs that were scanned. - :paramtype total_blobs_scanned: int - :keyword malicious_blobs_count: The number of malicious blobs that were detected during the - scan. - :paramtype malicious_blobs_count: int - :keyword skipped_blobs_count: The number of blobs that were skipped. - :paramtype skipped_blobs_count: int - :keyword failed_blobs_count: The number of failed blob scans. - :paramtype failed_blobs_count: int - :keyword scanned_blobs_in_gb: The number of gigabytes of data that were scanned. - :paramtype scanned_blobs_in_gb: float - """ - super().__init__(**kwargs) - self.total_blobs_scanned = total_blobs_scanned - self.malicious_blobs_count = malicious_blobs_count - self.skipped_blobs_count = skipped_blobs_count - self.failed_blobs_count = failed_blobs_count - self.scanned_blobs_in_gb = scanned_blobs_in_gb - - -class BuiltInInfoType(_serialization.Model): - """Pre-configured sensitive information type. - - :ivar name: Display name of the info type. - :vartype name: str - :ivar id: Id of the info type. - :vartype id: str - :ivar type: Category of the built-in info type. - :vartype type: str - """ - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__( - self, - *, - name: Optional[str] = None, - id: Optional[str] = None, # pylint: disable=redefined-builtin - type: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Display name of the info type. - :paramtype name: str - :keyword id: Id of the info type. - :paramtype id: str - :keyword type: Category of the built-in info type. - :paramtype type: str - """ - super().__init__(**kwargs) - self.name = name - self.id = id - self.type = type - - -class CategoryConfiguration(_serialization.Model): - """Severity level per category configuration for PR Annotations. - - :ivar minimum_severity_level: Gets or sets minimum severity level for a given category. - :vartype minimum_severity_level: str - :ivar category: Rule categories. Code - code scanning results. Artifact scanning results. - Dependencies scanning results. IaC results. Secrets scanning results. Container scanning - results. Known values are: "Code", "Artifacts", "Dependencies", "Secrets", "IaC", and - "Containers". - :vartype category: str or ~azure.mgmt.security.models.RuleCategory - """ - - _attribute_map = { - "minimum_severity_level": {"key": "minimumSeverityLevel", "type": "str"}, - "category": {"key": "category", "type": "str"}, - } - - def __init__( - self, - *, - minimum_severity_level: Optional[str] = None, - category: Optional[Union[str, "_models.RuleCategory"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword minimum_severity_level: Gets or sets minimum severity level for a given category. - :paramtype minimum_severity_level: str - :keyword category: Rule categories. Code - code scanning results. Artifact scanning results. - Dependencies scanning results. IaC results. Secrets scanning results. Container scanning - results. Known values are: "Code", "Artifacts", "Dependencies", "Secrets", "IaC", and - "Containers". - :paramtype category: str or ~azure.mgmt.security.models.RuleCategory - """ - super().__init__(**kwargs) - self.minimum_severity_level = minimum_severity_level - self.category = category - - -class CefExternalSecuritySolution(ExternalSecuritySolution): - """Represents a security solution which sends CEF logs to an OMS workspace. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :vartype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: The external security solution properties for CEF solutions. - :vartype properties: ~azure.mgmt.security.models.CefSolutionProperties - """ - - _validation = { - "location": {"readonly": True}, - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "CefSolutionProperties"}, - } - - def __init__( - self, - *, - kind: Optional[Union[str, "_models.ExternalSecuritySolutionKindEnum"]] = None, - properties: Optional["_models.CefSolutionProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword kind: The kind of the external solution. Known values are: "CEF", "ATA", and "AAD". - :paramtype kind: str or ~azure.mgmt.security.models.ExternalSecuritySolutionKindEnum - :keyword properties: The external security solution properties for CEF solutions. - :paramtype properties: ~azure.mgmt.security.models.CefSolutionProperties - """ - super().__init__(kind=kind, **kwargs) - self.properties = properties - - -class CefSolutionProperties(ExternalSecuritySolutionProperties): - """The external security solution properties for CEF solutions. - - :ivar additional_properties: Unmatched properties from the message are deserialized to this - collection. - :vartype additional_properties: dict[str, any] - :ivar device_vendor: - :vartype device_vendor: str - :ivar device_type: - :vartype device_type: str - :ivar workspace: Represents an OMS workspace to which the solution is connected. - :vartype workspace: ~azure.mgmt.security.models.ConnectedWorkspace - :ivar hostname: - :vartype hostname: str - :ivar agent: - :vartype agent: str - :ivar last_event_received: - :vartype last_event_received: str - """ - - _attribute_map = { - "additional_properties": {"key": "", "type": "{object}"}, - "device_vendor": {"key": "deviceVendor", "type": "str"}, - "device_type": {"key": "deviceType", "type": "str"}, - "workspace": {"key": "workspace", "type": "ConnectedWorkspace"}, - "hostname": {"key": "hostname", "type": "str"}, - "agent": {"key": "agent", "type": "str"}, - "last_event_received": {"key": "lastEventReceived", "type": "str"}, - } - - def __init__( - self, - *, - additional_properties: Optional[dict[str, Any]] = None, - device_vendor: Optional[str] = None, - device_type: Optional[str] = None, - workspace: Optional["_models.ConnectedWorkspace"] = None, - hostname: Optional[str] = None, - agent: Optional[str] = None, - last_event_received: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword additional_properties: Unmatched properties from the message are deserialized to this - collection. - :paramtype additional_properties: dict[str, any] - :keyword device_vendor: - :paramtype device_vendor: str - :keyword device_type: - :paramtype device_type: str - :keyword workspace: Represents an OMS workspace to which the solution is connected. - :paramtype workspace: ~azure.mgmt.security.models.ConnectedWorkspace - :keyword hostname: - :paramtype hostname: str - :keyword agent: - :paramtype agent: str - :keyword last_event_received: - :paramtype last_event_received: str - """ - super().__init__( - additional_properties=additional_properties, - device_vendor=device_vendor, - device_type=device_type, - workspace=workspace, - **kwargs - ) - self.hostname = hostname - self.agent = agent - self.last_event_received = last_event_received - - -class CloudErrorAutoGenerated(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated10(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated10] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated10]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated10"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated11(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated11] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated11]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated11"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated12(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated12] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated12]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated12"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated13(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated13] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated13]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated13"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated14(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated14] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated14]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated14"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated15(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated15] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated15]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated15"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated16(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated16] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated16]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated16"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated17(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated17] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated17]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated17"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated18(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated18] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated18]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated18"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated19(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated19] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated19]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated19"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated2(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated2] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated2]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated2"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated20(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated20] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated20]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated20"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated3(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated3] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated3]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated3"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated4(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated4] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated4]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated4"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated5(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated5] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated5]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated5"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated6(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated6] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated6]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated6"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated7(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated7] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated7]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated7"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated8(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated8] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated8]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated8"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorAutoGenerated9(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated9] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "error.code", "type": "str"}, - "message": {"key": "error.message", "type": "str"}, - "target": {"key": "error.target", "type": "str"}, - "details": {"key": "error.details", "type": "[CloudErrorBodyAutoGenerated9]"}, - "additional_info": {"key": "error.additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated9"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBody(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBody] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBody]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBody"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated10(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated10] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated10]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated10"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated11(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated11] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated11]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated11"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated12(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated12] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated12]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated12"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated13(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated13] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated13]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated13"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated14(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated14] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated14]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated14"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated15(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated15] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated15]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated15"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated16(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated16] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated16]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated16"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated17(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated17] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated17]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated17"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated18(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated18] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated18]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated18"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated19(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated19] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated19]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated19"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated2(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated2] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated2]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated2"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated20(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated20] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated20]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated20"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated3(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated3] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated3]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated3"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated4(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated4] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated4]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated4"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated5(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated5] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated5]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated5"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated6(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated6] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated6]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated6"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated7(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated7] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated7]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated7"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated8(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated8] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated8]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated8"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudErrorBodyAutoGenerated9(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.CloudErrorBodyAutoGenerated9] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[CloudErrorBodyAutoGenerated9]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.CloudErrorBodyAutoGenerated9"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class CloudOffering(_serialization.Model): - """The security offering details. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - CspmMonitorAwsOffering, CspmMonitorAzureDevOpsOffering, CspmMonitorDockerHubOffering, - CspmMonitorGcpOffering, CspmMonitorGitLabOffering, CspmMonitorGithubOffering, - CspmMonitorJFrogOffering, DefenderCspmAwsOffering, DefenderCspmDockerHubOffering, - DefenderCspmGcpOffering, DefenderCspmJFrogOffering, DefenderForContainersAwsOffering, - DefenderForContainersDockerHubOffering, DefenderForContainersGcpOffering, - DefenderForContainersJFrogOffering, DefenderFoDatabasesAwsOffering, - DefenderForDatabasesGcpOffering, DefenderForServersAwsOffering, DefenderForServersGcpOffering - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - _subtype_map = { - "offering_type": { - "CspmMonitorAws": "CspmMonitorAwsOffering", - "CspmMonitorAzureDevOps": "CspmMonitorAzureDevOpsOffering", - "CspmMonitorDockerHub": "CspmMonitorDockerHubOffering", - "CspmMonitorGcp": "CspmMonitorGcpOffering", - "CspmMonitorGitLab": "CspmMonitorGitLabOffering", - "CspmMonitorGithub": "CspmMonitorGithubOffering", - "CspmMonitorJFrog": "CspmMonitorJFrogOffering", - "DefenderCspmAws": "DefenderCspmAwsOffering", - "DefenderCspmDockerHub": "DefenderCspmDockerHubOffering", - "DefenderCspmGcp": "DefenderCspmGcpOffering", - "DefenderCspmJFrog": "DefenderCspmJFrogOffering", - "DefenderForContainersAws": "DefenderForContainersAwsOffering", - "DefenderForContainersDockerHub": "DefenderForContainersDockerHubOffering", - "DefenderForContainersGcp": "DefenderForContainersGcpOffering", - "DefenderForContainersJFrog": "DefenderForContainersJFrogOffering", - "DefenderForDatabasesAws": "DefenderFoDatabasesAwsOffering", - "DefenderForDatabasesGcp": "DefenderForDatabasesGcpOffering", - "DefenderForServersAws": "DefenderForServersAwsOffering", - "DefenderForServersGcp": "DefenderForServersGcpOffering", - } - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.offering_type: Optional[str] = None - self.description: Optional[str] = None - - -class Compliance(Resource): - """Compliance of a scope. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar assessment_timestamp_utc_date: The timestamp when the Compliance calculation was - conducted. - :vartype assessment_timestamp_utc_date: ~datetime.datetime - :ivar resource_count: The resource count of the given subscription for which the Compliance - calculation was conducted (needed for Management Group Compliance calculation). - :vartype resource_count: int - :ivar assessment_result: An array of segment, which is the actually the compliance assessment. - :vartype assessment_result: list[~azure.mgmt.security.models.ComplianceSegment] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "assessment_timestamp_utc_date": {"readonly": True}, - "resource_count": {"readonly": True}, - "assessment_result": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "assessment_timestamp_utc_date": {"key": "properties.assessmentTimestampUtcDate", "type": "iso-8601"}, - "resource_count": {"key": "properties.resourceCount", "type": "int"}, - "assessment_result": {"key": "properties.assessmentResult", "type": "[ComplianceSegment]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.assessment_timestamp_utc_date: Optional[datetime.datetime] = None - self.resource_count: Optional[int] = None - self.assessment_result: Optional[list["_models.ComplianceSegment"]] = None - - -class ComplianceList(_serialization.Model): - """List of Compliance objects response. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Compliance objects. - :vartype value: list[~azure.mgmt.security.models.Compliance] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Compliance]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[list["_models.Compliance"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Compliance objects. - :paramtype value: list[~azure.mgmt.security.models.Compliance] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class ComplianceResult(Resource): - """a compliance result. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar resource_status: The status of the resource regarding a single assessment. Known values - are: "Healthy", "NotApplicable", "OffByPolicy", and "NotHealthy". - :vartype resource_status: str or ~azure.mgmt.security.models.ResourceStatus - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "resource_status": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "resource_status": {"key": "properties.resourceStatus", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.resource_status: Optional[Union[str, "_models.ResourceStatus"]] = None - - -class ComplianceResultList(_serialization.Model): - """List of compliance results response. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: List of compliance results. Required. - :vartype value: list[~azure.mgmt.security.models.ComplianceResult] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[ComplianceResult]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: list["_models.ComplianceResult"], **kwargs: Any) -> None: - """ - :keyword value: List of compliance results. Required. - :paramtype value: list[~azure.mgmt.security.models.ComplianceResult] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class ComplianceSegment(_serialization.Model): - """A segment of a compliance assessment. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar segment_type: The segment type, e.g. compliant, non-compliance, insufficient coverage, - N/A, etc. - :vartype segment_type: str - :ivar percentage: The size (%) of the segment. - :vartype percentage: float - """ - - _validation = { - "segment_type": {"readonly": True}, - "percentage": {"readonly": True}, - } - - _attribute_map = { - "segment_type": {"key": "segmentType", "type": "str"}, - "percentage": {"key": "percentage", "type": "float"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.segment_type: Optional[str] = None - self.percentage: Optional[float] = None - - -class Components1Uu4J47SchemasSecurityassessmentpropertiesbasePropertiesRiskPropertiesPathsItemsPropertiesEdgesItems( - _serialization.Model -): # pylint: disable=name-too-long - """Components1Uu4J47SchemasSecurityassessmentpropertiesbasePropertiesRiskPropertiesPathsItemsPropertiesEdgesItems. - - All required parameters must be populated in order to send to server. - - :ivar id: Edge identifier. Required. - :vartype id: str - :ivar target_id: Target node identifier. Required. - :vartype target_id: str - :ivar source_id: Source node identifier. Required. - :vartype source_id: str - """ - - _validation = { - "id": {"required": True}, - "target_id": {"required": True}, - "source_id": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "target_id": {"key": "targetId", "type": "str"}, - "source_id": {"key": "sourceId", "type": "str"}, - } - - def __init__( - self, *, id: str, target_id: str, source_id: str, **kwargs: Any # pylint: disable=redefined-builtin - ) -> None: - """ - :keyword id: Edge identifier. Required. - :paramtype id: str - :keyword target_id: Target node identifier. Required. - :paramtype target_id: str - :keyword source_id: Source node identifier. Required. - :paramtype source_id: str - """ - super().__init__(**kwargs) - self.id = id - self.target_id = target_id - self.source_id = source_id - - -class Condition(_serialization.Model): - """Governance rule's condition. - - :ivar property: The governance rule Condition's Property, e.g. Severity or AssessmentKey, see - examples. - :vartype property: str - :ivar value: The governance rule Condition's Value like severity Low, High or assessments keys, - see examples. - :vartype value: str - :ivar operator: The governance rule Condition's Operator, for example Equals for severity or In - for list of assessments, see examples. Known values are: "Equals" and "In". - :vartype operator: str or ~azure.mgmt.security.models.GovernanceRuleConditionOperator - """ - - _attribute_map = { - "property": {"key": "property", "type": "str"}, - "value": {"key": "value", "type": "str"}, - "operator": {"key": "operator", "type": "str"}, - } - - def __init__( - self, - *, - property: Optional[str] = None, # pylint: disable=redefined-builtin - value: Optional[str] = None, - operator: Optional[Union[str, "_models.GovernanceRuleConditionOperator"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword property: The governance rule Condition's Property, e.g. Severity or AssessmentKey, - see examples. - :paramtype property: str - :keyword value: The governance rule Condition's Value like severity Low, High or assessments - keys, see examples. - :paramtype value: str - :keyword operator: The governance rule Condition's Operator, for example Equals for severity or - In for list of assessments, see examples. Known values are: "Equals" and "In". - :paramtype operator: str or ~azure.mgmt.security.models.GovernanceRuleConditionOperator - """ - super().__init__(**kwargs) - self.property = property - self.value = value - self.operator = operator - - -class ConnectableResource(_serialization.Model): - """Describes the allowed inbound and outbound traffic of an Azure resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: The Azure resource id. - :vartype id: str - :ivar inbound_connected_resources: The list of Azure resources that the resource has inbound - allowed connection from. - :vartype inbound_connected_resources: list[~azure.mgmt.security.models.ConnectedResource] - :ivar outbound_connected_resources: The list of Azure resources that the resource has outbound - allowed connection to. - :vartype outbound_connected_resources: list[~azure.mgmt.security.models.ConnectedResource] - """ - - _validation = { - "id": {"readonly": True}, - "inbound_connected_resources": {"readonly": True}, - "outbound_connected_resources": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "inbound_connected_resources": {"key": "inboundConnectedResources", "type": "[ConnectedResource]"}, - "outbound_connected_resources": {"key": "outboundConnectedResources", "type": "[ConnectedResource]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id: Optional[str] = None - self.inbound_connected_resources: Optional[list["_models.ConnectedResource"]] = None - self.outbound_connected_resources: Optional[list["_models.ConnectedResource"]] = None - - -class ConnectedResource(_serialization.Model): - """Describes properties of a connected resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar connected_resource_id: The Azure resource id of the connected resource. - :vartype connected_resource_id: str - :ivar tcp_ports: The allowed tcp ports. - :vartype tcp_ports: str - :ivar udp_ports: The allowed udp ports. - :vartype udp_ports: str - """ - - _validation = { - "connected_resource_id": {"readonly": True}, - "tcp_ports": {"readonly": True}, - "udp_ports": {"readonly": True}, - } - - _attribute_map = { - "connected_resource_id": {"key": "connectedResourceId", "type": "str"}, - "tcp_ports": {"key": "tcpPorts", "type": "str"}, - "udp_ports": {"key": "udpPorts", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.connected_resource_id: Optional[str] = None - self.tcp_ports: Optional[str] = None - self.udp_ports: Optional[str] = None - - -class ConnectedWorkspace(_serialization.Model): - """Represents an OMS workspace to which the solution is connected. - - :ivar id: Azure resource ID of the connected OMS workspace. - :vartype id: str - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: Optional[str] = None, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: Azure resource ID of the connected OMS workspace. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class ConnectionFromIpNotAllowed(AllowlistCustomAlertRule): - """Inbound connection from an ip that isn't allowed. Allow list consists of ipv4 or ipv6 range in - CIDR notation. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar value_type: The value type of the items in the list. Known values are: "IpCidr" and - "String". - :vartype value_type: str or ~azure.mgmt.security.models.ValueType - :ivar allowlist_values: The values to allow. The format of the values depends on the rule type. - Required. - :vartype allowlist_values: list[str] - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "value_type": {"readonly": True}, - "allowlist_values": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "value_type": {"key": "valueType", "type": "str"}, - "allowlist_values": {"key": "allowlistValues", "type": "[str]"}, - } - - def __init__(self, *, is_enabled: bool, allowlist_values: list[str], **kwargs: Any) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword allowlist_values: The values to allow. The format of the values depends on the rule - type. Required. - :paramtype allowlist_values: list[str] - """ - super().__init__(is_enabled=is_enabled, allowlist_values=allowlist_values, **kwargs) - self.rule_type: str = "ConnectionFromIpNotAllowed" - - -class ConnectionToIpNotAllowed(AllowlistCustomAlertRule): - """Outbound connection to an ip that isn't allowed. Allow list consists of ipv4 or ipv6 range in - CIDR notation. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar value_type: The value type of the items in the list. Known values are: "IpCidr" and - "String". - :vartype value_type: str or ~azure.mgmt.security.models.ValueType - :ivar allowlist_values: The values to allow. The format of the values depends on the rule type. - Required. - :vartype allowlist_values: list[str] - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "value_type": {"readonly": True}, - "allowlist_values": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "value_type": {"key": "valueType", "type": "str"}, - "allowlist_values": {"key": "allowlistValues", "type": "[str]"}, - } - - def __init__(self, *, is_enabled: bool, allowlist_values: list[str], **kwargs: Any) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword allowlist_values: The values to allow. The format of the values depends on the rule - type. Required. - :paramtype allowlist_values: list[str] - """ - super().__init__(is_enabled=is_enabled, allowlist_values=allowlist_values, **kwargs) - self.rule_type: str = "ConnectionToIpNotAllowed" - - -class ContainerRegistryVulnerabilityProperties(AdditionalData): - """Additional context fields for container registry Vulnerability assessment. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar assessed_resource_type: Sub-assessment resource type. Required. Known values are: - "SqlServerVulnerability", "ContainerRegistryVulnerability", and "ServerVulnerability". - :vartype assessed_resource_type: str or ~azure.mgmt.security.models.AssessedResourceType - :ivar type: Vulnerability Type. e.g: Vulnerability, Potential Vulnerability, Information - Gathered, Vulnerability. - :vartype type: str - :ivar cvss: Dictionary from cvss version to cvss details object. - :vartype cvss: dict[str, ~azure.mgmt.security.models.CVSS] - :ivar patchable: Indicates whether a patch is available or not. - :vartype patchable: bool - :ivar cve: List of CVEs. - :vartype cve: list[~azure.mgmt.security.models.CVE] - :ivar published_time: Published time. - :vartype published_time: ~datetime.datetime - :ivar vendor_references: - :vartype vendor_references: list[~azure.mgmt.security.models.VendorReference] - :ivar repository_name: Name of the repository which the vulnerable image belongs to. - :vartype repository_name: str - :ivar image_digest: Digest of the vulnerable image. - :vartype image_digest: str - """ - - _validation = { - "assessed_resource_type": {"required": True}, - "type": {"readonly": True}, - "cvss": {"readonly": True}, - "patchable": {"readonly": True}, - "cve": {"readonly": True}, - "published_time": {"readonly": True}, - "vendor_references": {"readonly": True}, - "repository_name": {"readonly": True}, - "image_digest": {"readonly": True}, - } - - _attribute_map = { - "assessed_resource_type": {"key": "assessedResourceType", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "cvss": {"key": "cvss", "type": "{CVSS}"}, - "patchable": {"key": "patchable", "type": "bool"}, - "cve": {"key": "cve", "type": "[CVE]"}, - "published_time": {"key": "publishedTime", "type": "iso-8601"}, - "vendor_references": {"key": "vendorReferences", "type": "[VendorReference]"}, - "repository_name": {"key": "repositoryName", "type": "str"}, - "image_digest": {"key": "imageDigest", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.assessed_resource_type: str = "ContainerRegistryVulnerability" - self.type: Optional[str] = None - self.cvss: Optional[dict[str, "_models.CVSS"]] = None - self.patchable: Optional[bool] = None - self.cve: Optional[list["_models.CVE"]] = None - self.published_time: Optional[datetime.datetime] = None - self.vendor_references: Optional[list["_models.VendorReference"]] = None - self.repository_name: Optional[str] = None - self.image_digest: Optional[str] = None - - -class CspmMonitorAwsOffering(CloudOffering): - """The CSPM monitoring for AWS offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - :ivar native_cloud_connection: The native cloud connection configuration. - :vartype native_cloud_connection: - ~azure.mgmt.security.models.CspmMonitorAwsOfferingNativeCloudConnection - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "native_cloud_connection": { - "key": "nativeCloudConnection", - "type": "CspmMonitorAwsOfferingNativeCloudConnection", - }, - } - - def __init__( - self, - *, - native_cloud_connection: Optional["_models.CspmMonitorAwsOfferingNativeCloudConnection"] = None, - **kwargs: Any - ) -> None: - """ - :keyword native_cloud_connection: The native cloud connection configuration. - :paramtype native_cloud_connection: - ~azure.mgmt.security.models.CspmMonitorAwsOfferingNativeCloudConnection - """ - super().__init__(**kwargs) - self.offering_type: str = "CspmMonitorAws" - self.native_cloud_connection = native_cloud_connection - - -class CspmMonitorAwsOfferingNativeCloudConnection(_serialization.Model): # pylint: disable=name-too-long - """The native cloud connection configuration. - - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.cloud_role_arn = cloud_role_arn - - -class CspmMonitorAzureDevOpsOffering(CloudOffering): - """The CSPM monitoring for AzureDevOps offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.offering_type: str = "CspmMonitorAzureDevOps" - - -class CspmMonitorDockerHubOffering(CloudOffering): - """The CSPM (Cloud security posture management) monitoring for Docker Hub offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.offering_type: str = "CspmMonitorDockerHub" - - -class CspmMonitorGcpOffering(CloudOffering): - """The CSPM monitoring for GCP offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - :ivar native_cloud_connection: The native cloud connection configuration. - :vartype native_cloud_connection: - ~azure.mgmt.security.models.CspmMonitorGcpOfferingNativeCloudConnection - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "native_cloud_connection": { - "key": "nativeCloudConnection", - "type": "CspmMonitorGcpOfferingNativeCloudConnection", - }, - } - - def __init__( - self, - *, - native_cloud_connection: Optional["_models.CspmMonitorGcpOfferingNativeCloudConnection"] = None, - **kwargs: Any - ) -> None: - """ - :keyword native_cloud_connection: The native cloud connection configuration. - :paramtype native_cloud_connection: - ~azure.mgmt.security.models.CspmMonitorGcpOfferingNativeCloudConnection - """ - super().__init__(**kwargs) - self.offering_type: str = "CspmMonitorGcp" - self.native_cloud_connection = native_cloud_connection - - -class CspmMonitorGcpOfferingNativeCloudConnection(_serialization.Model): # pylint: disable=name-too-long - """The native cloud connection configuration. - - :ivar workload_identity_provider_id: The GCP workload identity provider id for the offering. - :vartype workload_identity_provider_id: str - :ivar service_account_email_address: The service account email address in GCP for this - offering. - :vartype service_account_email_address: str - """ - - _attribute_map = { - "workload_identity_provider_id": {"key": "workloadIdentityProviderId", "type": "str"}, - "service_account_email_address": {"key": "serviceAccountEmailAddress", "type": "str"}, - } - - def __init__( - self, - *, - workload_identity_provider_id: Optional[str] = None, - service_account_email_address: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword workload_identity_provider_id: The GCP workload identity provider id for the offering. - :paramtype workload_identity_provider_id: str - :keyword service_account_email_address: The service account email address in GCP for this - offering. - :paramtype service_account_email_address: str - """ - super().__init__(**kwargs) - self.workload_identity_provider_id = workload_identity_provider_id - self.service_account_email_address = service_account_email_address - - -class CspmMonitorGithubOffering(CloudOffering): - """The CSPM monitoring for github offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.offering_type: str = "CspmMonitorGithub" - - -class CspmMonitorGitLabOffering(CloudOffering): - """The CSPM (Cloud security posture management) monitoring for gitlab offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.offering_type: str = "CspmMonitorGitLab" - - -class CspmMonitorJFrogOffering(CloudOffering): - """The CSPM (Cloud security posture management) monitoring for JFrog Artifactory offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.offering_type: str = "CspmMonitorJFrog" - - -class CustomRecommendation(Resource): - """Custom Recommendation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar query: KQL query representing the Recommendation results required. - :vartype query: str - :ivar cloud_providers: List of all standard supported clouds. - :vartype cloud_providers: list[str or - ~azure.mgmt.security.models.RecommendationSupportedClouds] - :ivar severity: The severity to relate to the assessments generated by this Recommendation. - Known values are: "High", "Medium", and "Low". - :vartype severity: str or ~azure.mgmt.security.models.SeverityEnum - :ivar security_issue: The severity to relate to the assessments generated by this - Recommendation. Known values are: "Vulnerability", "ExcessivePermissions", "AnonymousAccess", - "NetworkExposure", "TrafficEncryption", and "BestPractices". - :vartype security_issue: str or ~azure.mgmt.security.models.SecurityIssue - :ivar display_name: The display name of the assessments generated by this Recommendation. - :vartype display_name: str - :ivar description: The description to relate to the assessments generated by this - Recommendation. - :vartype description: str - :ivar remediation_description: The remediation description to relate to the assessments - generated by this Recommendation. - :vartype remediation_description: str - :ivar assessment_key: The assessment metadata key used when an assessment is generated for this - Recommendation. - :vartype assessment_key: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "assessment_key": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "query": {"key": "properties.query", "type": "str"}, - "cloud_providers": {"key": "properties.cloudProviders", "type": "[str]"}, - "severity": {"key": "properties.severity", "type": "str"}, - "security_issue": {"key": "properties.securityIssue", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "remediation_description": {"key": "properties.remediationDescription", "type": "str"}, - "assessment_key": {"key": "properties.assessmentKey", "type": "str"}, - } - - def __init__( - self, - *, - query: Optional[str] = None, - cloud_providers: Optional[list[Union[str, "_models.RecommendationSupportedClouds"]]] = None, - severity: Union[str, "_models.SeverityEnum"] = "Low", - security_issue: Union[str, "_models.SecurityIssue"] = "BestPractices", - display_name: Optional[str] = None, - description: Optional[str] = None, - remediation_description: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword query: KQL query representing the Recommendation results required. - :paramtype query: str - :keyword cloud_providers: List of all standard supported clouds. - :paramtype cloud_providers: list[str or - ~azure.mgmt.security.models.RecommendationSupportedClouds] - :keyword severity: The severity to relate to the assessments generated by this Recommendation. - Known values are: "High", "Medium", and "Low". - :paramtype severity: str or ~azure.mgmt.security.models.SeverityEnum - :keyword security_issue: The severity to relate to the assessments generated by this - Recommendation. Known values are: "Vulnerability", "ExcessivePermissions", "AnonymousAccess", - "NetworkExposure", "TrafficEncryption", and "BestPractices". - :paramtype security_issue: str or ~azure.mgmt.security.models.SecurityIssue - :keyword display_name: The display name of the assessments generated by this Recommendation. - :paramtype display_name: str - :keyword description: The description to relate to the assessments generated by this - Recommendation. - :paramtype description: str - :keyword remediation_description: The remediation description to relate to the assessments - generated by this Recommendation. - :paramtype remediation_description: str - """ - super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.query = query - self.cloud_providers = cloud_providers - self.severity = severity - self.security_issue = security_issue - self.display_name = display_name - self.description = description - self.remediation_description = remediation_description - self.assessment_key: Optional[str] = None - - -class CustomRecommendationsList(_serialization.Model): - """A list of Custom Recommendations. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: Collection of Custom Recommendations. Required. - :vartype value: list[~azure.mgmt.security.models.CustomRecommendation] - :ivar next_link: The link used to get the next page of operations. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True, "readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[CustomRecommendation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, next_link: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword next_link: The link used to get the next page of operations. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value: Optional[list["_models.CustomRecommendation"]] = None - self.next_link = next_link - - -class CVE(_serialization.Model): - """CVE details. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar title: CVE title. - :vartype title: str - :ivar link: Link url. - :vartype link: str - """ - - _validation = { - "title": {"readonly": True}, - "link": {"readonly": True}, - } - - _attribute_map = { - "title": {"key": "title", "type": "str"}, - "link": {"key": "link", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.title: Optional[str] = None - self.link: Optional[str] = None - - -class CVSS(_serialization.Model): - """CVSS details. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar base: CVSS base. - :vartype base: float - """ - - _validation = { - "base": {"readonly": True}, - } - - _attribute_map = { - "base": {"key": "base", "type": "float"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.base: Optional[float] = None - - -class DataExportSettings(Setting): - """Represents a data export setting. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar kind: the kind of the settings string. Required. Known values are: "DataExportSettings", - "AlertSuppressionSetting", and "AlertSyncSettings". - :vartype kind: str or ~azure.mgmt.security.models.SettingKind - :ivar enabled: Is the data export setting enabled. - :vartype enabled: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "kind": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "enabled": {"key": "properties.enabled", "type": "bool"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is the data export setting enabled. - :paramtype enabled: bool - """ - super().__init__(**kwargs) - self.kind: str = "DataExportSettings" - self.enabled = enabled - - -class DefenderCspmAwsOffering(CloudOffering): - """The CSPM P1 for AWS offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - :ivar vm_scanners: The Microsoft Defender for CSPM offering VM scanning configuration. - :vartype vm_scanners: ~azure.mgmt.security.models.DefenderCspmAwsOfferingVmScanners - :ivar data_sensitivity_discovery: The Microsoft Defender Data Sensitivity discovery - configuration. - :vartype data_sensitivity_discovery: - ~azure.mgmt.security.models.DefenderCspmAwsOfferingDataSensitivityDiscovery - :ivar databases_dspm: The databases DSPM configuration. - :vartype databases_dspm: ~azure.mgmt.security.models.DefenderCspmAwsOfferingDatabasesDspm - :ivar ciem: Defenders CSPM Permissions Management offering configurations. - :vartype ciem: ~azure.mgmt.security.models.DefenderCspmAwsOfferingCiem - :ivar mdc_containers_image_assessment: The Microsoft Defender container image assessment - configuration. - :vartype mdc_containers_image_assessment: - ~azure.mgmt.security.models.DefenderCspmAwsOfferingMdcContainersImageAssessment - :ivar mdc_containers_agentless_discovery_k8_s: The Microsoft Defender container agentless - discovery K8s configuration. - :vartype mdc_containers_agentless_discovery_k8_s: - ~azure.mgmt.security.models.DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "vm_scanners": {"key": "vmScanners", "type": "DefenderCspmAwsOfferingVmScanners"}, - "data_sensitivity_discovery": { - "key": "dataSensitivityDiscovery", - "type": "DefenderCspmAwsOfferingDataSensitivityDiscovery", - }, - "databases_dspm": {"key": "databasesDspm", "type": "DefenderCspmAwsOfferingDatabasesDspm"}, - "ciem": {"key": "ciem", "type": "DefenderCspmAwsOfferingCiem"}, - "mdc_containers_image_assessment": { - "key": "mdcContainersImageAssessment", - "type": "DefenderCspmAwsOfferingMdcContainersImageAssessment", - }, - "mdc_containers_agentless_discovery_k8_s": { - "key": "mdcContainersAgentlessDiscoveryK8s", - "type": "DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S", - }, - } - - def __init__( - self, - *, - vm_scanners: Optional["_models.DefenderCspmAwsOfferingVmScanners"] = None, - data_sensitivity_discovery: Optional["_models.DefenderCspmAwsOfferingDataSensitivityDiscovery"] = None, - databases_dspm: Optional["_models.DefenderCspmAwsOfferingDatabasesDspm"] = None, - ciem: Optional["_models.DefenderCspmAwsOfferingCiem"] = None, - mdc_containers_image_assessment: Optional["_models.DefenderCspmAwsOfferingMdcContainersImageAssessment"] = None, - mdc_containers_agentless_discovery_k8_s: Optional[ - "_models.DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S" - ] = None, - **kwargs: Any - ) -> None: - """ - :keyword vm_scanners: The Microsoft Defender for CSPM offering VM scanning configuration. - :paramtype vm_scanners: ~azure.mgmt.security.models.DefenderCspmAwsOfferingVmScanners - :keyword data_sensitivity_discovery: The Microsoft Defender Data Sensitivity discovery - configuration. - :paramtype data_sensitivity_discovery: - ~azure.mgmt.security.models.DefenderCspmAwsOfferingDataSensitivityDiscovery - :keyword databases_dspm: The databases DSPM configuration. - :paramtype databases_dspm: ~azure.mgmt.security.models.DefenderCspmAwsOfferingDatabasesDspm - :keyword ciem: Defenders CSPM Permissions Management offering configurations. - :paramtype ciem: ~azure.mgmt.security.models.DefenderCspmAwsOfferingCiem - :keyword mdc_containers_image_assessment: The Microsoft Defender container image assessment - configuration. - :paramtype mdc_containers_image_assessment: - ~azure.mgmt.security.models.DefenderCspmAwsOfferingMdcContainersImageAssessment - :keyword mdc_containers_agentless_discovery_k8_s: The Microsoft Defender container agentless - discovery K8s configuration. - :paramtype mdc_containers_agentless_discovery_k8_s: - ~azure.mgmt.security.models.DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S - """ - super().__init__(**kwargs) - self.offering_type: str = "DefenderCspmAws" - self.vm_scanners = vm_scanners - self.data_sensitivity_discovery = data_sensitivity_discovery - self.databases_dspm = databases_dspm - self.ciem = ciem - self.mdc_containers_image_assessment = mdc_containers_image_assessment - self.mdc_containers_agentless_discovery_k8_s = mdc_containers_agentless_discovery_k8_s - - -class DefenderCspmAwsOfferingCiem(_serialization.Model): - """Defenders CSPM Permissions Management offering configurations. - - :ivar ciem_discovery: Defender CSPM Permissions Management discovery configuration. - :vartype ciem_discovery: ~azure.mgmt.security.models.DefenderCspmAwsOfferingCiemDiscovery - :ivar ciem_oidc: AWS Defender CSPM Permissions Management OIDC (open id connect) connection - configurations. - :vartype ciem_oidc: ~azure.mgmt.security.models.DefenderCspmAwsOfferingCiemOidc - """ - - _attribute_map = { - "ciem_discovery": {"key": "ciemDiscovery", "type": "DefenderCspmAwsOfferingCiemDiscovery"}, - "ciem_oidc": {"key": "ciemOidc", "type": "DefenderCspmAwsOfferingCiemOidc"}, - } - - def __init__( - self, - *, - ciem_discovery: Optional["_models.DefenderCspmAwsOfferingCiemDiscovery"] = None, - ciem_oidc: Optional["_models.DefenderCspmAwsOfferingCiemOidc"] = None, - **kwargs: Any - ) -> None: - """ - :keyword ciem_discovery: Defender CSPM Permissions Management discovery configuration. - :paramtype ciem_discovery: ~azure.mgmt.security.models.DefenderCspmAwsOfferingCiemDiscovery - :keyword ciem_oidc: AWS Defender CSPM Permissions Management OIDC (open id connect) connection - configurations. - :paramtype ciem_oidc: ~azure.mgmt.security.models.DefenderCspmAwsOfferingCiemOidc - """ - super().__init__(**kwargs) - self.ciem_discovery = ciem_discovery - self.ciem_oidc = ciem_oidc - - -class DefenderCspmAwsOfferingCiemDiscovery(_serialization.Model): - """Defender CSPM Permissions Management discovery configuration. - - :ivar cloud_role_arn: The cloud role ARN in AWS for Permissions Management discovery. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword cloud_role_arn: The cloud role ARN in AWS for Permissions Management discovery. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.cloud_role_arn = cloud_role_arn - - -class DefenderCspmAwsOfferingCiemOidc(_serialization.Model): - """AWS Defender CSPM Permissions Management OIDC (open id connect) connection configurations. - - :ivar cloud_role_arn: The cloud role ARN in AWS for Permissions Management used for oidc - connection. - :vartype cloud_role_arn: str - :ivar azure_active_directory_app_name: the azure active directory app name used of - authenticating against AWS. - :vartype azure_active_directory_app_name: str - """ - - _attribute_map = { - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - "azure_active_directory_app_name": {"key": "azureActiveDirectoryAppName", "type": "str"}, - } - - def __init__( - self, - *, - cloud_role_arn: Optional[str] = None, - azure_active_directory_app_name: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword cloud_role_arn: The cloud role ARN in AWS for Permissions Management used for oidc - connection. - :paramtype cloud_role_arn: str - :keyword azure_active_directory_app_name: the azure active directory app name used of - authenticating against AWS. - :paramtype azure_active_directory_app_name: str - """ - super().__init__(**kwargs) - self.cloud_role_arn = cloud_role_arn - self.azure_active_directory_app_name = azure_active_directory_app_name - - -class DefenderCspmAwsOfferingDatabasesDspm(_serialization.Model): - """The databases DSPM configuration. - - :ivar enabled: Is databases DSPM protection enabled. - :vartype enabled: bool - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is databases DSPM protection enabled. - :paramtype enabled: bool - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.cloud_role_arn = cloud_role_arn - - -class DefenderCspmAwsOfferingDataSensitivityDiscovery(_serialization.Model): # pylint: disable=name-too-long - """The Microsoft Defender Data Sensitivity discovery configuration. - - :ivar enabled: Is Microsoft Defender Data Sensitivity discovery enabled. - :vartype enabled: bool - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is Microsoft Defender Data Sensitivity discovery enabled. - :paramtype enabled: bool - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.cloud_role_arn = cloud_role_arn - - -class DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S(_serialization.Model): # pylint: disable=name-too-long - """The Microsoft Defender container agentless discovery K8s configuration. - - :ivar enabled: Is Microsoft Defender container agentless discovery K8s enabled. - :vartype enabled: bool - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is Microsoft Defender container agentless discovery K8s enabled. - :paramtype enabled: bool - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.cloud_role_arn = cloud_role_arn - - -class DefenderCspmAwsOfferingMdcContainersImageAssessment(_serialization.Model): # pylint: disable=name-too-long - """The Microsoft Defender container image assessment configuration. - - :ivar enabled: Is Microsoft Defender container image assessment enabled. - :vartype enabled: bool - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is Microsoft Defender container image assessment enabled. - :paramtype enabled: bool - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.cloud_role_arn = cloud_role_arn - - -class VmScannersBase(_serialization.Model): - """A VM scanning configuration for a security offering of a given environment. - - :ivar enabled: Is VM scanning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for VM scanning. - :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "configuration": {"key": "configuration", "type": "VmScannersBaseConfiguration"}, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - configuration: Optional["_models.VmScannersBaseConfiguration"] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: Is VM scanning enabled. - :paramtype enabled: bool - :keyword configuration: Configuration for VM scanning. - :paramtype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration - """ - super().__init__(**kwargs) - self.enabled = enabled - self.configuration = configuration - - -class VmScannersAws(VmScannersBase): - """A VM scanning configuration for a security offering of a Aws environment. - - :ivar enabled: Is VM scanning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for VM scanning. - :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "configuration": {"key": "configuration", "type": "VmScannersBaseConfiguration"}, - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - configuration: Optional["_models.VmScannersBaseConfiguration"] = None, - cloud_role_arn: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: Is VM scanning enabled. - :paramtype enabled: bool - :keyword configuration: Configuration for VM scanning. - :paramtype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature. - :paramtype cloud_role_arn: str - """ - super().__init__(enabled=enabled, configuration=configuration, **kwargs) - self.cloud_role_arn = cloud_role_arn - - -class DefenderCspmAwsOfferingVmScanners(VmScannersAws): - """The Microsoft Defender for CSPM offering VM scanning configuration. - - :ivar enabled: Is VM scanning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for VM scanning. - :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - -class DefenderCspmDockerHubOffering(CloudOffering): - """The Defender for CSPM Docker Hub offering configurations. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.offering_type: str = "DefenderCspmDockerHub" - - -class DefenderCspmGcpOffering(CloudOffering): - """The CSPM P1 for GCP offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - :ivar ciem_discovery: GCP Defenders CSPM Permissions Management OIDC (Open ID connect) - connection configurations. - :vartype ciem_discovery: ~azure.mgmt.security.models.DefenderCspmGcpOfferingCiemDiscovery - :ivar vm_scanners: The Microsoft Defender for CSPM VM scanning configuration. - :vartype vm_scanners: ~azure.mgmt.security.models.DefenderCspmGcpOfferingVmScanners - :ivar data_sensitivity_discovery: The Microsoft Defender Data Sensitivity discovery - configuration. - :vartype data_sensitivity_discovery: - ~azure.mgmt.security.models.DefenderCspmGcpOfferingDataSensitivityDiscovery - :ivar mdc_containers_image_assessment: The Microsoft Defender Container image assessment - configuration. - :vartype mdc_containers_image_assessment: - ~azure.mgmt.security.models.DefenderCspmGcpOfferingMdcContainersImageAssessment - :ivar mdc_containers_agentless_discovery_k8_s: The Microsoft Defender Container agentless - discovery configuration. - :vartype mdc_containers_agentless_discovery_k8_s: - ~azure.mgmt.security.models.DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "ciem_discovery": {"key": "ciemDiscovery", "type": "DefenderCspmGcpOfferingCiemDiscovery"}, - "vm_scanners": {"key": "vmScanners", "type": "DefenderCspmGcpOfferingVmScanners"}, - "data_sensitivity_discovery": { - "key": "dataSensitivityDiscovery", - "type": "DefenderCspmGcpOfferingDataSensitivityDiscovery", - }, - "mdc_containers_image_assessment": { - "key": "mdcContainersImageAssessment", - "type": "DefenderCspmGcpOfferingMdcContainersImageAssessment", - }, - "mdc_containers_agentless_discovery_k8_s": { - "key": "mdcContainersAgentlessDiscoveryK8s", - "type": "DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S", - }, - } - - def __init__( - self, - *, - ciem_discovery: Optional["_models.DefenderCspmGcpOfferingCiemDiscovery"] = None, - vm_scanners: Optional["_models.DefenderCspmGcpOfferingVmScanners"] = None, - data_sensitivity_discovery: Optional["_models.DefenderCspmGcpOfferingDataSensitivityDiscovery"] = None, - mdc_containers_image_assessment: Optional["_models.DefenderCspmGcpOfferingMdcContainersImageAssessment"] = None, - mdc_containers_agentless_discovery_k8_s: Optional[ - "_models.DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S" - ] = None, - **kwargs: Any - ) -> None: - """ - :keyword ciem_discovery: GCP Defenders CSPM Permissions Management OIDC (Open ID connect) - connection configurations. - :paramtype ciem_discovery: ~azure.mgmt.security.models.DefenderCspmGcpOfferingCiemDiscovery - :keyword vm_scanners: The Microsoft Defender for CSPM VM scanning configuration. - :paramtype vm_scanners: ~azure.mgmt.security.models.DefenderCspmGcpOfferingVmScanners - :keyword data_sensitivity_discovery: The Microsoft Defender Data Sensitivity discovery - configuration. - :paramtype data_sensitivity_discovery: - ~azure.mgmt.security.models.DefenderCspmGcpOfferingDataSensitivityDiscovery - :keyword mdc_containers_image_assessment: The Microsoft Defender Container image assessment - configuration. - :paramtype mdc_containers_image_assessment: - ~azure.mgmt.security.models.DefenderCspmGcpOfferingMdcContainersImageAssessment - :keyword mdc_containers_agentless_discovery_k8_s: The Microsoft Defender Container agentless - discovery configuration. - :paramtype mdc_containers_agentless_discovery_k8_s: - ~azure.mgmt.security.models.DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S - """ - super().__init__(**kwargs) - self.offering_type: str = "DefenderCspmGcp" - self.ciem_discovery = ciem_discovery - self.vm_scanners = vm_scanners - self.data_sensitivity_discovery = data_sensitivity_discovery - self.mdc_containers_image_assessment = mdc_containers_image_assessment - self.mdc_containers_agentless_discovery_k8_s = mdc_containers_agentless_discovery_k8_s - - -class DefenderCspmGcpOfferingCiemDiscovery(_serialization.Model): - """GCP Defenders CSPM Permissions Management OIDC (Open ID connect) connection configurations. - - :ivar workload_identity_provider_id: The GCP workload identity provider id for Permissions - Management offering. - :vartype workload_identity_provider_id: str - :ivar service_account_email_address: The service account email address in GCP for Permissions - Management offering. - :vartype service_account_email_address: str - :ivar azure_active_directory_app_name: the azure active directory app name used of - authenticating against GCP workload identity federation. - :vartype azure_active_directory_app_name: str - """ - - _attribute_map = { - "workload_identity_provider_id": {"key": "workloadIdentityProviderId", "type": "str"}, - "service_account_email_address": {"key": "serviceAccountEmailAddress", "type": "str"}, - "azure_active_directory_app_name": {"key": "azureActiveDirectoryAppName", "type": "str"}, - } - - def __init__( - self, - *, - workload_identity_provider_id: Optional[str] = None, - service_account_email_address: Optional[str] = None, - azure_active_directory_app_name: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword workload_identity_provider_id: The GCP workload identity provider id for Permissions - Management offering. - :paramtype workload_identity_provider_id: str - :keyword service_account_email_address: The service account email address in GCP for - Permissions Management offering. - :paramtype service_account_email_address: str - :keyword azure_active_directory_app_name: the azure active directory app name used of - authenticating against GCP workload identity federation. - :paramtype azure_active_directory_app_name: str - """ - super().__init__(**kwargs) - self.workload_identity_provider_id = workload_identity_provider_id - self.service_account_email_address = service_account_email_address - self.azure_active_directory_app_name = azure_active_directory_app_name - - -class DefenderCspmGcpOfferingDataSensitivityDiscovery(_serialization.Model): # pylint: disable=name-too-long - """The Microsoft Defender Data Sensitivity discovery configuration. - - :ivar enabled: Is Microsoft Defender Data Sensitivity discovery enabled. - :vartype enabled: bool - :ivar workload_identity_provider_id: The workload identity provider id in GCP for this feature. - :vartype workload_identity_provider_id: str - :ivar service_account_email_address: The service account email address in GCP for this feature. - :vartype service_account_email_address: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "workload_identity_provider_id": {"key": "workloadIdentityProviderId", "type": "str"}, - "service_account_email_address": {"key": "serviceAccountEmailAddress", "type": "str"}, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - workload_identity_provider_id: Optional[str] = None, - service_account_email_address: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: Is Microsoft Defender Data Sensitivity discovery enabled. - :paramtype enabled: bool - :keyword workload_identity_provider_id: The workload identity provider id in GCP for this - feature. - :paramtype workload_identity_provider_id: str - :keyword service_account_email_address: The service account email address in GCP for this - feature. - :paramtype service_account_email_address: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.workload_identity_provider_id = workload_identity_provider_id - self.service_account_email_address = service_account_email_address - - -class DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S(_serialization.Model): # pylint: disable=name-too-long - """The Microsoft Defender Container agentless discovery configuration. - - :ivar enabled: Is Microsoft Defender container agentless discovery enabled. - :vartype enabled: bool - :ivar workload_identity_provider_id: The workload identity provider id in GCP for this feature. - :vartype workload_identity_provider_id: str - :ivar service_account_email_address: The service account email address in GCP for this feature. - :vartype service_account_email_address: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "workload_identity_provider_id": {"key": "workloadIdentityProviderId", "type": "str"}, - "service_account_email_address": {"key": "serviceAccountEmailAddress", "type": "str"}, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - workload_identity_provider_id: Optional[str] = None, - service_account_email_address: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: Is Microsoft Defender container agentless discovery enabled. - :paramtype enabled: bool - :keyword workload_identity_provider_id: The workload identity provider id in GCP for this - feature. - :paramtype workload_identity_provider_id: str - :keyword service_account_email_address: The service account email address in GCP for this - feature. - :paramtype service_account_email_address: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.workload_identity_provider_id = workload_identity_provider_id - self.service_account_email_address = service_account_email_address - - -class DefenderCspmGcpOfferingMdcContainersImageAssessment(_serialization.Model): # pylint: disable=name-too-long - """The Microsoft Defender Container image assessment configuration. - - :ivar enabled: Is Microsoft Defender container image assessment enabled. - :vartype enabled: bool - :ivar workload_identity_provider_id: The workload identity provider id in GCP for this feature. - :vartype workload_identity_provider_id: str - :ivar service_account_email_address: The service account email address in GCP for this feature. - :vartype service_account_email_address: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "workload_identity_provider_id": {"key": "workloadIdentityProviderId", "type": "str"}, - "service_account_email_address": {"key": "serviceAccountEmailAddress", "type": "str"}, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - workload_identity_provider_id: Optional[str] = None, - service_account_email_address: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: Is Microsoft Defender container image assessment enabled. - :paramtype enabled: bool - :keyword workload_identity_provider_id: The workload identity provider id in GCP for this - feature. - :paramtype workload_identity_provider_id: str - :keyword service_account_email_address: The service account email address in GCP for this - feature. - :paramtype service_account_email_address: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.workload_identity_provider_id = workload_identity_provider_id - self.service_account_email_address = service_account_email_address - - -class VmScannersGcp(VmScannersBase): - """A VM scanning configuration for a security offering of a GCP environment. - - :ivar enabled: Is VM scanning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for VM scanning. - :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration - """ - - -class DefenderCspmGcpOfferingVmScanners(VmScannersGcp): - """The Microsoft Defender for CSPM VM scanning configuration. - - :ivar enabled: Is VM scanning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for VM scanning. - :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration - """ - - -class DefenderCspmJFrogOffering(CloudOffering): - """The CSPM P1 for JFrog Artifactory offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - :ivar mdc_containers_image_assessment: The Microsoft Defender Container image assessment - configuration. - :vartype mdc_containers_image_assessment: - ~azure.mgmt.security.models.DefenderCspmJFrogOfferingMdcContainersImageAssessment - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "mdc_containers_image_assessment": { - "key": "mdcContainersImageAssessment", - "type": "DefenderCspmJFrogOfferingMdcContainersImageAssessment", - }, - } - - def __init__( - self, - *, - mdc_containers_image_assessment: Optional[ - "_models.DefenderCspmJFrogOfferingMdcContainersImageAssessment" - ] = None, - **kwargs: Any - ) -> None: - """ - :keyword mdc_containers_image_assessment: The Microsoft Defender Container image assessment - configuration. - :paramtype mdc_containers_image_assessment: - ~azure.mgmt.security.models.DefenderCspmJFrogOfferingMdcContainersImageAssessment - """ - super().__init__(**kwargs) - self.offering_type: str = "DefenderCspmJFrog" - self.mdc_containers_image_assessment = mdc_containers_image_assessment - - -class DefenderCspmJFrogOfferingMdcContainersImageAssessment(_serialization.Model): # pylint: disable=name-too-long - """The Microsoft Defender Container image assessment configuration. - - :ivar enabled: Is Microsoft Defender container image assessment enabled. - :vartype enabled: bool - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is Microsoft Defender container image assessment enabled. - :paramtype enabled: bool - """ - super().__init__(**kwargs) - self.enabled = enabled - - -class DefenderFoDatabasesAwsOffering(CloudOffering): - """The Defender for Databases AWS offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - :ivar arc_auto_provisioning: The ARC autoprovisioning configuration. - :vartype arc_auto_provisioning: - ~azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingArcAutoProvisioning - :ivar rds: The RDS configuration. - :vartype rds: ~azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingRds - :ivar databases_dspm: The databases data security posture management (DSPM) configuration. - :vartype databases_dspm: - ~azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingDatabasesDspm - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "arc_auto_provisioning": { - "key": "arcAutoProvisioning", - "type": "DefenderFoDatabasesAwsOfferingArcAutoProvisioning", - }, - "rds": {"key": "rds", "type": "DefenderFoDatabasesAwsOfferingRds"}, - "databases_dspm": {"key": "databasesDspm", "type": "DefenderFoDatabasesAwsOfferingDatabasesDspm"}, - } - - def __init__( - self, - *, - arc_auto_provisioning: Optional["_models.DefenderFoDatabasesAwsOfferingArcAutoProvisioning"] = None, - rds: Optional["_models.DefenderFoDatabasesAwsOfferingRds"] = None, - databases_dspm: Optional["_models.DefenderFoDatabasesAwsOfferingDatabasesDspm"] = None, - **kwargs: Any - ) -> None: - """ - :keyword arc_auto_provisioning: The ARC autoprovisioning configuration. - :paramtype arc_auto_provisioning: - ~azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingArcAutoProvisioning - :keyword rds: The RDS configuration. - :paramtype rds: ~azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingRds - :keyword databases_dspm: The databases data security posture management (DSPM) configuration. - :paramtype databases_dspm: - ~azure.mgmt.security.models.DefenderFoDatabasesAwsOfferingDatabasesDspm - """ - super().__init__(**kwargs) - self.offering_type: str = "DefenderForDatabasesAws" - self.arc_auto_provisioning = arc_auto_provisioning - self.rds = rds - self.databases_dspm = databases_dspm - - -class DefenderFoDatabasesAwsOfferingArcAutoProvisioning(ArcAutoProvisioningAws): # pylint: disable=name-too-long - """The ARC autoprovisioning configuration. - - :ivar enabled: Is arc auto provisioning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. - :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - -class DefenderFoDatabasesAwsOfferingDatabasesDspm(_serialization.Model): # pylint: disable=name-too-long - """The databases data security posture management (DSPM) configuration. - - :ivar enabled: Is databases data security posture management (DSPM) protection enabled. - :vartype enabled: bool - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is databases data security posture management (DSPM) protection enabled. - :paramtype enabled: bool - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.cloud_role_arn = cloud_role_arn - - -class DefenderFoDatabasesAwsOfferingRds(_serialization.Model): - """The RDS configuration. - - :ivar enabled: Is RDS protection enabled. - :vartype enabled: bool - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is RDS protection enabled. - :paramtype enabled: bool - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.cloud_role_arn = cloud_role_arn - - -class DefenderForContainersAwsOffering(CloudOffering): - """The Defender for Containers AWS offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - :ivar kubernetes_service: The kubernetes service connection configuration. - :vartype kubernetes_service: - ~azure.mgmt.security.models.DefenderForContainersAwsOfferingKubernetesService - :ivar kubernetes_data_collection: The kubernetes data collection connection configuration. - :vartype kubernetes_data_collection: - ~azure.mgmt.security.models.DefenderForContainersAwsOfferingKubernetesDataCollection - :ivar cloud_watch_to_kinesis: The cloudwatch to kinesis connection configuration. - :vartype cloud_watch_to_kinesis: - ~azure.mgmt.security.models.DefenderForContainersAwsOfferingCloudWatchToKinesis - :ivar kinesis_to_s3: The kinesis to s3 connection configuration. - :vartype kinesis_to_s3: ~azure.mgmt.security.models.DefenderForContainersAwsOfferingKinesisToS3 - :ivar enable_audit_logs_auto_provisioning: Is audit logs data collection enabled. - :vartype enable_audit_logs_auto_provisioning: bool - :ivar enable_defender_agent_auto_provisioning: Is Microsoft Defender for Cloud Kubernetes agent - auto provisioning enabled. - :vartype enable_defender_agent_auto_provisioning: bool - :ivar enable_policy_agent_auto_provisioning: Is Policy Kubernetes agent auto provisioning - enabled. - :vartype enable_policy_agent_auto_provisioning: bool - :ivar kube_audit_retention_time: The retention time in days of kube audit logs set on the - CloudWatch log group. - :vartype kube_audit_retention_time: int - :ivar data_collection_external_id: The externalId used by the data reader to prevent the - confused deputy attack. - :vartype data_collection_external_id: str - :ivar mdc_containers_image_assessment: The Microsoft Defender container image assessment - configuration. - :vartype mdc_containers_image_assessment: - ~azure.mgmt.security.models.DefenderForContainersAwsOfferingMdcContainersImageAssessment - :ivar mdc_containers_agentless_discovery_k8_s: The Microsoft Defender container agentless - discovery K8s configuration. - :vartype mdc_containers_agentless_discovery_k8_s: - ~azure.mgmt.security.models.DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S - :ivar vm_scanners: The Microsoft Defender for Container K8s VM host scanning configuration. - :vartype vm_scanners: ~azure.mgmt.security.models.DefenderForContainersAwsOfferingVmScanners - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "kubernetes_service": {"key": "kubernetesService", "type": "DefenderForContainersAwsOfferingKubernetesService"}, - "kubernetes_data_collection": { - "key": "kubernetesDataCollection", - "type": "DefenderForContainersAwsOfferingKubernetesDataCollection", - }, - "cloud_watch_to_kinesis": { - "key": "cloudWatchToKinesis", - "type": "DefenderForContainersAwsOfferingCloudWatchToKinesis", - }, - "kinesis_to_s3": {"key": "kinesisToS3", "type": "DefenderForContainersAwsOfferingKinesisToS3"}, - "enable_audit_logs_auto_provisioning": {"key": "enableAuditLogsAutoProvisioning", "type": "bool"}, - "enable_defender_agent_auto_provisioning": {"key": "enableDefenderAgentAutoProvisioning", "type": "bool"}, - "enable_policy_agent_auto_provisioning": {"key": "enablePolicyAgentAutoProvisioning", "type": "bool"}, - "kube_audit_retention_time": {"key": "kubeAuditRetentionTime", "type": "int"}, - "data_collection_external_id": {"key": "dataCollectionExternalId", "type": "str"}, - "mdc_containers_image_assessment": { - "key": "mdcContainersImageAssessment", - "type": "DefenderForContainersAwsOfferingMdcContainersImageAssessment", - }, - "mdc_containers_agentless_discovery_k8_s": { - "key": "mdcContainersAgentlessDiscoveryK8s", - "type": "DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S", - }, - "vm_scanners": {"key": "vmScanners", "type": "DefenderForContainersAwsOfferingVmScanners"}, - } - - def __init__( - self, - *, - kubernetes_service: Optional["_models.DefenderForContainersAwsOfferingKubernetesService"] = None, - kubernetes_data_collection: Optional["_models.DefenderForContainersAwsOfferingKubernetesDataCollection"] = None, - cloud_watch_to_kinesis: Optional["_models.DefenderForContainersAwsOfferingCloudWatchToKinesis"] = None, - kinesis_to_s3: Optional["_models.DefenderForContainersAwsOfferingKinesisToS3"] = None, - enable_audit_logs_auto_provisioning: Optional[bool] = None, - enable_defender_agent_auto_provisioning: Optional[bool] = None, - enable_policy_agent_auto_provisioning: Optional[bool] = None, - kube_audit_retention_time: Optional[int] = None, - data_collection_external_id: Optional[str] = None, - mdc_containers_image_assessment: Optional[ - "_models.DefenderForContainersAwsOfferingMdcContainersImageAssessment" - ] = None, - mdc_containers_agentless_discovery_k8_s: Optional[ - "_models.DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S" - ] = None, - vm_scanners: Optional["_models.DefenderForContainersAwsOfferingVmScanners"] = None, - **kwargs: Any - ) -> None: - """ - :keyword kubernetes_service: The kubernetes service connection configuration. - :paramtype kubernetes_service: - ~azure.mgmt.security.models.DefenderForContainersAwsOfferingKubernetesService - :keyword kubernetes_data_collection: The kubernetes data collection connection configuration. - :paramtype kubernetes_data_collection: - ~azure.mgmt.security.models.DefenderForContainersAwsOfferingKubernetesDataCollection - :keyword cloud_watch_to_kinesis: The cloudwatch to kinesis connection configuration. - :paramtype cloud_watch_to_kinesis: - ~azure.mgmt.security.models.DefenderForContainersAwsOfferingCloudWatchToKinesis - :keyword kinesis_to_s3: The kinesis to s3 connection configuration. - :paramtype kinesis_to_s3: - ~azure.mgmt.security.models.DefenderForContainersAwsOfferingKinesisToS3 - :keyword enable_audit_logs_auto_provisioning: Is audit logs data collection enabled. - :paramtype enable_audit_logs_auto_provisioning: bool - :keyword enable_defender_agent_auto_provisioning: Is Microsoft Defender for Cloud Kubernetes - agent auto provisioning enabled. - :paramtype enable_defender_agent_auto_provisioning: bool - :keyword enable_policy_agent_auto_provisioning: Is Policy Kubernetes agent auto provisioning - enabled. - :paramtype enable_policy_agent_auto_provisioning: bool - :keyword kube_audit_retention_time: The retention time in days of kube audit logs set on the - CloudWatch log group. - :paramtype kube_audit_retention_time: int - :keyword data_collection_external_id: The externalId used by the data reader to prevent the - confused deputy attack. - :paramtype data_collection_external_id: str - :keyword mdc_containers_image_assessment: The Microsoft Defender container image assessment - configuration. - :paramtype mdc_containers_image_assessment: - ~azure.mgmt.security.models.DefenderForContainersAwsOfferingMdcContainersImageAssessment - :keyword mdc_containers_agentless_discovery_k8_s: The Microsoft Defender container agentless - discovery K8s configuration. - :paramtype mdc_containers_agentless_discovery_k8_s: - ~azure.mgmt.security.models.DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S - :keyword vm_scanners: The Microsoft Defender for Container K8s VM host scanning configuration. - :paramtype vm_scanners: ~azure.mgmt.security.models.DefenderForContainersAwsOfferingVmScanners - """ - super().__init__(**kwargs) - self.offering_type: str = "DefenderForContainersAws" - self.kubernetes_service = kubernetes_service - self.kubernetes_data_collection = kubernetes_data_collection - self.cloud_watch_to_kinesis = cloud_watch_to_kinesis - self.kinesis_to_s3 = kinesis_to_s3 - self.enable_audit_logs_auto_provisioning = enable_audit_logs_auto_provisioning - self.enable_defender_agent_auto_provisioning = enable_defender_agent_auto_provisioning - self.enable_policy_agent_auto_provisioning = enable_policy_agent_auto_provisioning - self.kube_audit_retention_time = kube_audit_retention_time - self.data_collection_external_id = data_collection_external_id - self.mdc_containers_image_assessment = mdc_containers_image_assessment - self.mdc_containers_agentless_discovery_k8_s = mdc_containers_agentless_discovery_k8_s - self.vm_scanners = vm_scanners - - -class DefenderForContainersAwsOfferingCloudWatchToKinesis(_serialization.Model): # pylint: disable=name-too-long - """The cloudwatch to kinesis connection configuration. - - :ivar cloud_role_arn: The cloud role ARN in AWS used by CloudWatch to transfer data into - Kinesis. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword cloud_role_arn: The cloud role ARN in AWS used by CloudWatch to transfer data into - Kinesis. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.cloud_role_arn = cloud_role_arn - - -class DefenderForContainersAwsOfferingKinesisToS3(_serialization.Model): # pylint: disable=name-too-long - """The kinesis to s3 connection configuration. - - :ivar cloud_role_arn: The cloud role ARN in AWS used by Kinesis to transfer data into S3. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword cloud_role_arn: The cloud role ARN in AWS used by Kinesis to transfer data into S3. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.cloud_role_arn = cloud_role_arn - - -class DefenderForContainersAwsOfferingKubernetesDataCollection(_serialization.Model): # pylint: disable=name-too-long - """The kubernetes data collection connection configuration. - - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature used for reading data. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature used for reading data. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.cloud_role_arn = cloud_role_arn - - -class DefenderForContainersAwsOfferingKubernetesService(_serialization.Model): # pylint: disable=name-too-long - """The kubernetes service connection configuration. - - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature used for provisioning - resources. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature used for provisioning - resources. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.cloud_role_arn = cloud_role_arn - - -class DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S( - _serialization.Model -): # pylint: disable=name-too-long - """The Microsoft Defender container agentless discovery K8s configuration. - - :ivar enabled: Is Microsoft Defender container agentless discovery K8s enabled. - :vartype enabled: bool - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is Microsoft Defender container agentless discovery K8s enabled. - :paramtype enabled: bool - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.cloud_role_arn = cloud_role_arn - - -class DefenderForContainersAwsOfferingMdcContainersImageAssessment( - _serialization.Model -): # pylint: disable=name-too-long - """The Microsoft Defender container image assessment configuration. - - :ivar enabled: Is Microsoft Defender container image assessment enabled. - :vartype enabled: bool - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is Microsoft Defender container image assessment enabled. - :paramtype enabled: bool - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.cloud_role_arn = cloud_role_arn - - -class DefenderForContainersAwsOfferingVmScanners(VmScannersAws): # pylint: disable=name-too-long - """The Microsoft Defender for Container K8s VM host scanning configuration. - - :ivar enabled: Is VM scanning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for VM scanning. - :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - -class DefenderForContainersDockerHubOffering(CloudOffering): - """The Defender for containers Docker Hub offering configurations. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.offering_type: str = "DefenderForContainersDockerHub" - - -class DefenderForContainersGcpOffering(CloudOffering): - """The containers GCP offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - :ivar native_cloud_connection: The native cloud connection configuration. - :vartype native_cloud_connection: - ~azure.mgmt.security.models.DefenderForContainersGcpOfferingNativeCloudConnection - :ivar data_pipeline_native_cloud_connection: The native cloud connection configuration. - :vartype data_pipeline_native_cloud_connection: - ~azure.mgmt.security.models.DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection - :ivar enable_audit_logs_auto_provisioning: Is audit logs data collection enabled. - :vartype enable_audit_logs_auto_provisioning: bool - :ivar enable_defender_agent_auto_provisioning: Is Microsoft Defender for Cloud Kubernetes agent - auto provisioning enabled. - :vartype enable_defender_agent_auto_provisioning: bool - :ivar enable_policy_agent_auto_provisioning: Is Policy Kubernetes agent auto provisioning - enabled. - :vartype enable_policy_agent_auto_provisioning: bool - :ivar mdc_containers_image_assessment: The Microsoft Defender Container image assessment - configuration. - :vartype mdc_containers_image_assessment: - ~azure.mgmt.security.models.DefenderForContainersGcpOfferingMdcContainersImageAssessment - :ivar mdc_containers_agentless_discovery_k8_s: The Microsoft Defender Container agentless - discovery configuration. - :vartype mdc_containers_agentless_discovery_k8_s: - ~azure.mgmt.security.models.DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S - :ivar vm_scanners: The Microsoft Defender for Container K8s VM host scanning configuration. - :vartype vm_scanners: ~azure.mgmt.security.models.DefenderForContainersGcpOfferingVmScanners - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "native_cloud_connection": { - "key": "nativeCloudConnection", - "type": "DefenderForContainersGcpOfferingNativeCloudConnection", - }, - "data_pipeline_native_cloud_connection": { - "key": "dataPipelineNativeCloudConnection", - "type": "DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection", - }, - "enable_audit_logs_auto_provisioning": {"key": "enableAuditLogsAutoProvisioning", "type": "bool"}, - "enable_defender_agent_auto_provisioning": {"key": "enableDefenderAgentAutoProvisioning", "type": "bool"}, - "enable_policy_agent_auto_provisioning": {"key": "enablePolicyAgentAutoProvisioning", "type": "bool"}, - "mdc_containers_image_assessment": { - "key": "mdcContainersImageAssessment", - "type": "DefenderForContainersGcpOfferingMdcContainersImageAssessment", - }, - "mdc_containers_agentless_discovery_k8_s": { - "key": "mdcContainersAgentlessDiscoveryK8s", - "type": "DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S", - }, - "vm_scanners": {"key": "vmScanners", "type": "DefenderForContainersGcpOfferingVmScanners"}, - } - - def __init__( - self, - *, - native_cloud_connection: Optional["_models.DefenderForContainersGcpOfferingNativeCloudConnection"] = None, - data_pipeline_native_cloud_connection: Optional[ - "_models.DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection" - ] = None, - enable_audit_logs_auto_provisioning: Optional[bool] = None, - enable_defender_agent_auto_provisioning: Optional[bool] = None, - enable_policy_agent_auto_provisioning: Optional[bool] = None, - mdc_containers_image_assessment: Optional[ - "_models.DefenderForContainersGcpOfferingMdcContainersImageAssessment" - ] = None, - mdc_containers_agentless_discovery_k8_s: Optional[ - "_models.DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S" - ] = None, - vm_scanners: Optional["_models.DefenderForContainersGcpOfferingVmScanners"] = None, - **kwargs: Any - ) -> None: - """ - :keyword native_cloud_connection: The native cloud connection configuration. - :paramtype native_cloud_connection: - ~azure.mgmt.security.models.DefenderForContainersGcpOfferingNativeCloudConnection - :keyword data_pipeline_native_cloud_connection: The native cloud connection configuration. - :paramtype data_pipeline_native_cloud_connection: - ~azure.mgmt.security.models.DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection - :keyword enable_audit_logs_auto_provisioning: Is audit logs data collection enabled. - :paramtype enable_audit_logs_auto_provisioning: bool - :keyword enable_defender_agent_auto_provisioning: Is Microsoft Defender for Cloud Kubernetes - agent auto provisioning enabled. - :paramtype enable_defender_agent_auto_provisioning: bool - :keyword enable_policy_agent_auto_provisioning: Is Policy Kubernetes agent auto provisioning - enabled. - :paramtype enable_policy_agent_auto_provisioning: bool - :keyword mdc_containers_image_assessment: The Microsoft Defender Container image assessment - configuration. - :paramtype mdc_containers_image_assessment: - ~azure.mgmt.security.models.DefenderForContainersGcpOfferingMdcContainersImageAssessment - :keyword mdc_containers_agentless_discovery_k8_s: The Microsoft Defender Container agentless - discovery configuration. - :paramtype mdc_containers_agentless_discovery_k8_s: - ~azure.mgmt.security.models.DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S - :keyword vm_scanners: The Microsoft Defender for Container K8s VM host scanning configuration. - :paramtype vm_scanners: ~azure.mgmt.security.models.DefenderForContainersGcpOfferingVmScanners - """ - super().__init__(**kwargs) - self.offering_type: str = "DefenderForContainersGcp" - self.native_cloud_connection = native_cloud_connection - self.data_pipeline_native_cloud_connection = data_pipeline_native_cloud_connection - self.enable_audit_logs_auto_provisioning = enable_audit_logs_auto_provisioning - self.enable_defender_agent_auto_provisioning = enable_defender_agent_auto_provisioning - self.enable_policy_agent_auto_provisioning = enable_policy_agent_auto_provisioning - self.mdc_containers_image_assessment = mdc_containers_image_assessment - self.mdc_containers_agentless_discovery_k8_s = mdc_containers_agentless_discovery_k8_s - self.vm_scanners = vm_scanners - - -class DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection( - _serialization.Model -): # pylint: disable=name-too-long - """The native cloud connection configuration. - - :ivar service_account_email_address: The data collection service account email address in GCP - for this offering. - :vartype service_account_email_address: str - :ivar workload_identity_provider_id: The data collection GCP workload identity provider id for - this offering. - :vartype workload_identity_provider_id: str - """ - - _attribute_map = { - "service_account_email_address": {"key": "serviceAccountEmailAddress", "type": "str"}, - "workload_identity_provider_id": {"key": "workloadIdentityProviderId", "type": "str"}, - } - - def __init__( - self, - *, - service_account_email_address: Optional[str] = None, - workload_identity_provider_id: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword service_account_email_address: The data collection service account email address in - GCP for this offering. - :paramtype service_account_email_address: str - :keyword workload_identity_provider_id: The data collection GCP workload identity provider id - for this offering. - :paramtype workload_identity_provider_id: str - """ - super().__init__(**kwargs) - self.service_account_email_address = service_account_email_address - self.workload_identity_provider_id = workload_identity_provider_id - - -class DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S( - _serialization.Model -): # pylint: disable=name-too-long - """The Microsoft Defender Container agentless discovery configuration. - - :ivar enabled: Is Microsoft Defender container agentless discovery enabled. - :vartype enabled: bool - :ivar workload_identity_provider_id: The workload identity provider id in GCP for this feature. - :vartype workload_identity_provider_id: str - :ivar service_account_email_address: The service account email address in GCP for this feature. - :vartype service_account_email_address: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "workload_identity_provider_id": {"key": "workloadIdentityProviderId", "type": "str"}, - "service_account_email_address": {"key": "serviceAccountEmailAddress", "type": "str"}, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - workload_identity_provider_id: Optional[str] = None, - service_account_email_address: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: Is Microsoft Defender container agentless discovery enabled. - :paramtype enabled: bool - :keyword workload_identity_provider_id: The workload identity provider id in GCP for this - feature. - :paramtype workload_identity_provider_id: str - :keyword service_account_email_address: The service account email address in GCP for this - feature. - :paramtype service_account_email_address: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.workload_identity_provider_id = workload_identity_provider_id - self.service_account_email_address = service_account_email_address - - -class DefenderForContainersGcpOfferingMdcContainersImageAssessment( - _serialization.Model -): # pylint: disable=name-too-long - """The Microsoft Defender Container image assessment configuration. - - :ivar enabled: Is Microsoft Defender container image assessment enabled. - :vartype enabled: bool - :ivar workload_identity_provider_id: The workload identity provider id in GCP for this feature. - :vartype workload_identity_provider_id: str - :ivar service_account_email_address: The service account email address in GCP for this feature. - :vartype service_account_email_address: str - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "workload_identity_provider_id": {"key": "workloadIdentityProviderId", "type": "str"}, - "service_account_email_address": {"key": "serviceAccountEmailAddress", "type": "str"}, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - workload_identity_provider_id: Optional[str] = None, - service_account_email_address: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: Is Microsoft Defender container image assessment enabled. - :paramtype enabled: bool - :keyword workload_identity_provider_id: The workload identity provider id in GCP for this - feature. - :paramtype workload_identity_provider_id: str - :keyword service_account_email_address: The service account email address in GCP for this - feature. - :paramtype service_account_email_address: str - """ - super().__init__(**kwargs) - self.enabled = enabled - self.workload_identity_provider_id = workload_identity_provider_id - self.service_account_email_address = service_account_email_address - - -class DefenderForContainersGcpOfferingNativeCloudConnection(_serialization.Model): # pylint: disable=name-too-long - """The native cloud connection configuration. - - :ivar service_account_email_address: The service account email address in GCP for this - offering. - :vartype service_account_email_address: str - :ivar workload_identity_provider_id: The GCP workload identity provider id for this offering. - :vartype workload_identity_provider_id: str - """ - - _attribute_map = { - "service_account_email_address": {"key": "serviceAccountEmailAddress", "type": "str"}, - "workload_identity_provider_id": {"key": "workloadIdentityProviderId", "type": "str"}, - } - - def __init__( - self, - *, - service_account_email_address: Optional[str] = None, - workload_identity_provider_id: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword service_account_email_address: The service account email address in GCP for this - offering. - :paramtype service_account_email_address: str - :keyword workload_identity_provider_id: The GCP workload identity provider id for this - offering. - :paramtype workload_identity_provider_id: str - """ - super().__init__(**kwargs) - self.service_account_email_address = service_account_email_address - self.workload_identity_provider_id = workload_identity_provider_id - - -class DefenderForContainersGcpOfferingVmScanners(VmScannersGcp): # pylint: disable=name-too-long - """The Microsoft Defender for Container K8s VM host scanning configuration. - - :ivar enabled: Is VM scanning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for VM scanning. - :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration - """ - - -class DefenderForContainersJFrogOffering(CloudOffering): - """The Defender for Containers for JFrog Artifactory offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.offering_type: str = "DefenderForContainersJFrog" - - -class DefenderForDatabasesGcpOffering(CloudOffering): - """The Defender for Databases GCP offering configurations. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - :ivar arc_auto_provisioning: The ARC autoprovisioning configuration. - :vartype arc_auto_provisioning: - ~azure.mgmt.security.models.DefenderForDatabasesGcpOfferingArcAutoProvisioning - :ivar defender_for_databases_arc_auto_provisioning: The native cloud connection configuration. - :vartype defender_for_databases_arc_auto_provisioning: - ~azure.mgmt.security.models.DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "arc_auto_provisioning": { - "key": "arcAutoProvisioning", - "type": "DefenderForDatabasesGcpOfferingArcAutoProvisioning", - }, - "defender_for_databases_arc_auto_provisioning": { - "key": "defenderForDatabasesArcAutoProvisioning", - "type": "DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning", - }, - } - - def __init__( - self, - *, - arc_auto_provisioning: Optional["_models.DefenderForDatabasesGcpOfferingArcAutoProvisioning"] = None, - defender_for_databases_arc_auto_provisioning: Optional[ - "_models.DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning" - ] = None, - **kwargs: Any - ) -> None: - """ - :keyword arc_auto_provisioning: The ARC autoprovisioning configuration. - :paramtype arc_auto_provisioning: - ~azure.mgmt.security.models.DefenderForDatabasesGcpOfferingArcAutoProvisioning - :keyword defender_for_databases_arc_auto_provisioning: The native cloud connection - configuration. - :paramtype defender_for_databases_arc_auto_provisioning: - ~azure.mgmt.security.models.DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning - """ - super().__init__(**kwargs) - self.offering_type: str = "DefenderForDatabasesGcp" - self.arc_auto_provisioning = arc_auto_provisioning - self.defender_for_databases_arc_auto_provisioning = defender_for_databases_arc_auto_provisioning - - -class DefenderForDatabasesGcpOfferingArcAutoProvisioning(ArcAutoProvisioningGcp): # pylint: disable=name-too-long - """The ARC autoprovisioning configuration. - - :ivar enabled: Is arc auto provisioning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. - :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration - """ - - -class DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning( - _serialization.Model -): # pylint: disable=name-too-long - """The native cloud connection configuration. - - :ivar service_account_email_address: The service account email address in GCP for this - offering. - :vartype service_account_email_address: str - :ivar workload_identity_provider_id: The GCP workload identity provider id for this offering. - :vartype workload_identity_provider_id: str - """ - - _attribute_map = { - "service_account_email_address": {"key": "serviceAccountEmailAddress", "type": "str"}, - "workload_identity_provider_id": {"key": "workloadIdentityProviderId", "type": "str"}, - } - - def __init__( - self, - *, - service_account_email_address: Optional[str] = None, - workload_identity_provider_id: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword service_account_email_address: The service account email address in GCP for this - offering. - :paramtype service_account_email_address: str - :keyword workload_identity_provider_id: The GCP workload identity provider id for this - offering. - :paramtype workload_identity_provider_id: str - """ - super().__init__(**kwargs) - self.service_account_email_address = service_account_email_address - self.workload_identity_provider_id = workload_identity_provider_id - - -class DefenderForServersAwsOffering(CloudOffering): - """The Defender for Servers AWS offering. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - :ivar defender_for_servers: The Defender for servers connection configuration. - :vartype defender_for_servers: - ~azure.mgmt.security.models.DefenderForServersAwsOfferingDefenderForServers - :ivar arc_auto_provisioning: The ARC autoprovisioning configuration. - :vartype arc_auto_provisioning: - ~azure.mgmt.security.models.DefenderForServersAwsOfferingArcAutoProvisioning - :ivar va_auto_provisioning: The Vulnerability Assessment autoprovisioning configuration. - :vartype va_auto_provisioning: - ~azure.mgmt.security.models.DefenderForServersAwsOfferingVaAutoProvisioning - :ivar mde_auto_provisioning: The Microsoft Defender for Endpoint autoprovisioning - configuration. - :vartype mde_auto_provisioning: - ~azure.mgmt.security.models.DefenderForServersAwsOfferingMdeAutoProvisioning - :ivar sub_plan: configuration for the servers offering subPlan. - :vartype sub_plan: ~azure.mgmt.security.models.DefenderForServersAwsOfferingSubPlan - :ivar vm_scanners: The Microsoft Defender for Server VM scanning configuration. - :vartype vm_scanners: ~azure.mgmt.security.models.DefenderForServersAwsOfferingVmScanners - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "defender_for_servers": { - "key": "defenderForServers", - "type": "DefenderForServersAwsOfferingDefenderForServers", - }, - "arc_auto_provisioning": { - "key": "arcAutoProvisioning", - "type": "DefenderForServersAwsOfferingArcAutoProvisioning", - }, - "va_auto_provisioning": { - "key": "vaAutoProvisioning", - "type": "DefenderForServersAwsOfferingVaAutoProvisioning", - }, - "mde_auto_provisioning": { - "key": "mdeAutoProvisioning", - "type": "DefenderForServersAwsOfferingMdeAutoProvisioning", - }, - "sub_plan": {"key": "subPlan", "type": "DefenderForServersAwsOfferingSubPlan"}, - "vm_scanners": {"key": "vmScanners", "type": "DefenderForServersAwsOfferingVmScanners"}, - } - - def __init__( - self, - *, - defender_for_servers: Optional["_models.DefenderForServersAwsOfferingDefenderForServers"] = None, - arc_auto_provisioning: Optional["_models.DefenderForServersAwsOfferingArcAutoProvisioning"] = None, - va_auto_provisioning: Optional["_models.DefenderForServersAwsOfferingVaAutoProvisioning"] = None, - mde_auto_provisioning: Optional["_models.DefenderForServersAwsOfferingMdeAutoProvisioning"] = None, - sub_plan: Optional["_models.DefenderForServersAwsOfferingSubPlan"] = None, - vm_scanners: Optional["_models.DefenderForServersAwsOfferingVmScanners"] = None, - **kwargs: Any - ) -> None: - """ - :keyword defender_for_servers: The Defender for servers connection configuration. - :paramtype defender_for_servers: - ~azure.mgmt.security.models.DefenderForServersAwsOfferingDefenderForServers - :keyword arc_auto_provisioning: The ARC autoprovisioning configuration. - :paramtype arc_auto_provisioning: - ~azure.mgmt.security.models.DefenderForServersAwsOfferingArcAutoProvisioning - :keyword va_auto_provisioning: The Vulnerability Assessment autoprovisioning configuration. - :paramtype va_auto_provisioning: - ~azure.mgmt.security.models.DefenderForServersAwsOfferingVaAutoProvisioning - :keyword mde_auto_provisioning: The Microsoft Defender for Endpoint autoprovisioning - configuration. - :paramtype mde_auto_provisioning: - ~azure.mgmt.security.models.DefenderForServersAwsOfferingMdeAutoProvisioning - :keyword sub_plan: configuration for the servers offering subPlan. - :paramtype sub_plan: ~azure.mgmt.security.models.DefenderForServersAwsOfferingSubPlan - :keyword vm_scanners: The Microsoft Defender for Server VM scanning configuration. - :paramtype vm_scanners: ~azure.mgmt.security.models.DefenderForServersAwsOfferingVmScanners - """ - super().__init__(**kwargs) - self.offering_type: str = "DefenderForServersAws" - self.defender_for_servers = defender_for_servers - self.arc_auto_provisioning = arc_auto_provisioning - self.va_auto_provisioning = va_auto_provisioning - self.mde_auto_provisioning = mde_auto_provisioning - self.sub_plan = sub_plan - self.vm_scanners = vm_scanners - - -class DefenderForServersAwsOfferingArcAutoProvisioning(ArcAutoProvisioningAws): # pylint: disable=name-too-long - """The ARC autoprovisioning configuration. - - :ivar enabled: Is arc auto provisioning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. - :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - -class DefenderForServersAwsOfferingDefenderForServers(_serialization.Model): # pylint: disable=name-too-long - """The Defender for servers connection configuration. - - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - _attribute_map = { - "cloud_role_arn": {"key": "cloudRoleArn", "type": "str"}, - } - - def __init__(self, *, cloud_role_arn: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword cloud_role_arn: The cloud role ARN in AWS for this feature. - :paramtype cloud_role_arn: str - """ - super().__init__(**kwargs) - self.cloud_role_arn = cloud_role_arn - - -class DefenderForServersAwsOfferingMdeAutoProvisioning(_serialization.Model): # pylint: disable=name-too-long - """The Microsoft Defender for Endpoint autoprovisioning configuration. - - :ivar enabled: Is Microsoft Defender for Endpoint auto provisioning enabled. - :vartype enabled: bool - :ivar configuration: configuration for Microsoft Defender for Endpoint autoprovisioning. - :vartype configuration: JSON - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "configuration": {"key": "configuration", "type": "object"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, configuration: Optional[JSON] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is Microsoft Defender for Endpoint auto provisioning enabled. - :paramtype enabled: bool - :keyword configuration: configuration for Microsoft Defender for Endpoint autoprovisioning. - :paramtype configuration: JSON - """ - super().__init__(**kwargs) - self.enabled = enabled - self.configuration = configuration - - -class DefenderForServersAwsOfferingSubPlan(_serialization.Model): - """configuration for the servers offering subPlan. - - :ivar type: The available sub plans. Known values are: "P1" and "P2". - :vartype type: str or ~azure.mgmt.security.models.SubPlan - """ - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, *, type: Optional[Union[str, "_models.SubPlan"]] = None, **kwargs: Any) -> None: - """ - :keyword type: The available sub plans. Known values are: "P1" and "P2". - :paramtype type: str or ~azure.mgmt.security.models.SubPlan - """ - super().__init__(**kwargs) - self.type = type - - -class DefenderForServersAwsOfferingVaAutoProvisioning(_serialization.Model): # pylint: disable=name-too-long - """The Vulnerability Assessment autoprovisioning configuration. - - :ivar enabled: Is Vulnerability Assessment auto provisioning enabled. - :vartype enabled: bool - :ivar configuration: configuration for Vulnerability Assessment autoprovisioning. - :vartype configuration: - ~azure.mgmt.security.models.DefenderForServersAwsOfferingVaAutoProvisioningConfiguration - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "configuration": { - "key": "configuration", - "type": "DefenderForServersAwsOfferingVaAutoProvisioningConfiguration", - }, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - configuration: Optional["_models.DefenderForServersAwsOfferingVaAutoProvisioningConfiguration"] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: Is Vulnerability Assessment auto provisioning enabled. - :paramtype enabled: bool - :keyword configuration: configuration for Vulnerability Assessment autoprovisioning. - :paramtype configuration: - ~azure.mgmt.security.models.DefenderForServersAwsOfferingVaAutoProvisioningConfiguration - """ - super().__init__(**kwargs) - self.enabled = enabled - self.configuration = configuration - - -class DefenderForServersAwsOfferingVaAutoProvisioningConfiguration( - _serialization.Model -): # pylint: disable=name-too-long - """configuration for Vulnerability Assessment autoprovisioning. - - :ivar type: The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or - 'Qualys'. Known values are: "Qualys" and "TVM". - :vartype type: str or ~azure.mgmt.security.models.Type - """ - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, *, type: Optional[Union[str, "_models.Type"]] = None, **kwargs: Any) -> None: - """ - :keyword type: The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or - 'Qualys'. Known values are: "Qualys" and "TVM". - :paramtype type: str or ~azure.mgmt.security.models.Type - """ - super().__init__(**kwargs) - self.type = type - - -class DefenderForServersAwsOfferingVmScanners(VmScannersAws): - """The Microsoft Defender for Server VM scanning configuration. - - :ivar enabled: Is VM scanning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for VM scanning. - :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration - :ivar cloud_role_arn: The cloud role ARN in AWS for this feature. - :vartype cloud_role_arn: str - """ - - -class DefenderForServersGcpOffering(CloudOffering): - """The Defender for Servers GCP offering configurations. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar offering_type: The type of the security offering. Required. Known values are: - "CspmMonitorAws", "DefenderForContainersAws", "DefenderForServersAws", - "DefenderForDatabasesAws", "CspmMonitorGcp", "CspmMonitorGithub", "CspmMonitorAzureDevOps", - "DefenderForServersGcp", "DefenderForContainersGcp", "DefenderForDatabasesGcp", - "DefenderCspmAws", "DefenderCspmGcp", "CspmMonitorGitLab", "CspmMonitorDockerHub", - "DefenderForContainersDockerHub", "DefenderCspmDockerHub", "CspmMonitorJFrog", - "DefenderForContainersJFrog", and "DefenderCspmJFrog". - :vartype offering_type: str or ~azure.mgmt.security.models.OfferingType - :ivar description: The offering description. - :vartype description: str - :ivar defender_for_servers: The Defender for servers connection configuration. - :vartype defender_for_servers: - ~azure.mgmt.security.models.DefenderForServersGcpOfferingDefenderForServers - :ivar arc_auto_provisioning: The ARC autoprovisioning configuration. - :vartype arc_auto_provisioning: - ~azure.mgmt.security.models.DefenderForServersGcpOfferingArcAutoProvisioning - :ivar va_auto_provisioning: The Vulnerability Assessment autoprovisioning configuration. - :vartype va_auto_provisioning: - ~azure.mgmt.security.models.DefenderForServersGcpOfferingVaAutoProvisioning - :ivar mde_auto_provisioning: The Microsoft Defender for Endpoint autoprovisioning - configuration. - :vartype mde_auto_provisioning: - ~azure.mgmt.security.models.DefenderForServersGcpOfferingMdeAutoProvisioning - :ivar sub_plan: configuration for the servers offering subPlan. - :vartype sub_plan: ~azure.mgmt.security.models.DefenderForServersGcpOfferingSubPlan - :ivar vm_scanners: The Microsoft Defender for Server VM scanning configuration. - :vartype vm_scanners: ~azure.mgmt.security.models.DefenderForServersGcpOfferingVmScanners - """ - - _validation = { - "offering_type": {"required": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "offering_type": {"key": "offeringType", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "defender_for_servers": { - "key": "defenderForServers", - "type": "DefenderForServersGcpOfferingDefenderForServers", - }, - "arc_auto_provisioning": { - "key": "arcAutoProvisioning", - "type": "DefenderForServersGcpOfferingArcAutoProvisioning", - }, - "va_auto_provisioning": { - "key": "vaAutoProvisioning", - "type": "DefenderForServersGcpOfferingVaAutoProvisioning", - }, - "mde_auto_provisioning": { - "key": "mdeAutoProvisioning", - "type": "DefenderForServersGcpOfferingMdeAutoProvisioning", - }, - "sub_plan": {"key": "subPlan", "type": "DefenderForServersGcpOfferingSubPlan"}, - "vm_scanners": {"key": "vmScanners", "type": "DefenderForServersGcpOfferingVmScanners"}, - } - - def __init__( - self, - *, - defender_for_servers: Optional["_models.DefenderForServersGcpOfferingDefenderForServers"] = None, - arc_auto_provisioning: Optional["_models.DefenderForServersGcpOfferingArcAutoProvisioning"] = None, - va_auto_provisioning: Optional["_models.DefenderForServersGcpOfferingVaAutoProvisioning"] = None, - mde_auto_provisioning: Optional["_models.DefenderForServersGcpOfferingMdeAutoProvisioning"] = None, - sub_plan: Optional["_models.DefenderForServersGcpOfferingSubPlan"] = None, - vm_scanners: Optional["_models.DefenderForServersGcpOfferingVmScanners"] = None, - **kwargs: Any - ) -> None: - """ - :keyword defender_for_servers: The Defender for servers connection configuration. - :paramtype defender_for_servers: - ~azure.mgmt.security.models.DefenderForServersGcpOfferingDefenderForServers - :keyword arc_auto_provisioning: The ARC autoprovisioning configuration. - :paramtype arc_auto_provisioning: - ~azure.mgmt.security.models.DefenderForServersGcpOfferingArcAutoProvisioning - :keyword va_auto_provisioning: The Vulnerability Assessment autoprovisioning configuration. - :paramtype va_auto_provisioning: - ~azure.mgmt.security.models.DefenderForServersGcpOfferingVaAutoProvisioning - :keyword mde_auto_provisioning: The Microsoft Defender for Endpoint autoprovisioning - configuration. - :paramtype mde_auto_provisioning: - ~azure.mgmt.security.models.DefenderForServersGcpOfferingMdeAutoProvisioning - :keyword sub_plan: configuration for the servers offering subPlan. - :paramtype sub_plan: ~azure.mgmt.security.models.DefenderForServersGcpOfferingSubPlan - :keyword vm_scanners: The Microsoft Defender for Server VM scanning configuration. - :paramtype vm_scanners: ~azure.mgmt.security.models.DefenderForServersGcpOfferingVmScanners - """ - super().__init__(**kwargs) - self.offering_type: str = "DefenderForServersGcp" - self.defender_for_servers = defender_for_servers - self.arc_auto_provisioning = arc_auto_provisioning - self.va_auto_provisioning = va_auto_provisioning - self.mde_auto_provisioning = mde_auto_provisioning - self.sub_plan = sub_plan - self.vm_scanners = vm_scanners - - -class DefenderForServersGcpOfferingArcAutoProvisioning(ArcAutoProvisioningGcp): # pylint: disable=name-too-long - """The ARC autoprovisioning configuration. - - :ivar enabled: Is arc auto provisioning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for servers Arc auto provisioning for a given environment. - :vartype configuration: ~azure.mgmt.security.models.ArcAutoProvisioningConfiguration - """ - - -class DefenderForServersGcpOfferingDefenderForServers(_serialization.Model): # pylint: disable=name-too-long - """The Defender for servers connection configuration. - - :ivar workload_identity_provider_id: The workload identity provider id in GCP for this feature. - :vartype workload_identity_provider_id: str - :ivar service_account_email_address: The service account email address in GCP for this feature. - :vartype service_account_email_address: str - """ - - _attribute_map = { - "workload_identity_provider_id": {"key": "workloadIdentityProviderId", "type": "str"}, - "service_account_email_address": {"key": "serviceAccountEmailAddress", "type": "str"}, - } - - def __init__( - self, - *, - workload_identity_provider_id: Optional[str] = None, - service_account_email_address: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword workload_identity_provider_id: The workload identity provider id in GCP for this - feature. - :paramtype workload_identity_provider_id: str - :keyword service_account_email_address: The service account email address in GCP for this - feature. - :paramtype service_account_email_address: str - """ - super().__init__(**kwargs) - self.workload_identity_provider_id = workload_identity_provider_id - self.service_account_email_address = service_account_email_address - - -class DefenderForServersGcpOfferingMdeAutoProvisioning(_serialization.Model): # pylint: disable=name-too-long - """The Microsoft Defender for Endpoint autoprovisioning configuration. - - :ivar enabled: Is Microsoft Defender for Endpoint auto provisioning enabled. - :vartype enabled: bool - :ivar configuration: configuration for Microsoft Defender for Endpoint autoprovisioning. - :vartype configuration: JSON - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "configuration": {"key": "configuration", "type": "object"}, - } - - def __init__(self, *, enabled: Optional[bool] = None, configuration: Optional[JSON] = None, **kwargs: Any) -> None: - """ - :keyword enabled: Is Microsoft Defender for Endpoint auto provisioning enabled. - :paramtype enabled: bool - :keyword configuration: configuration for Microsoft Defender for Endpoint autoprovisioning. - :paramtype configuration: JSON - """ - super().__init__(**kwargs) - self.enabled = enabled - self.configuration = configuration - - -class DefenderForServersGcpOfferingSubPlan(_serialization.Model): - """configuration for the servers offering subPlan. - - :ivar type: The available sub plans. Known values are: "P1" and "P2". - :vartype type: str or ~azure.mgmt.security.models.SubPlan - """ - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, *, type: Optional[Union[str, "_models.SubPlan"]] = None, **kwargs: Any) -> None: - """ - :keyword type: The available sub plans. Known values are: "P1" and "P2". - :paramtype type: str or ~azure.mgmt.security.models.SubPlan - """ - super().__init__(**kwargs) - self.type = type - - -class DefenderForServersGcpOfferingVaAutoProvisioning(_serialization.Model): # pylint: disable=name-too-long - """The Vulnerability Assessment autoprovisioning configuration. - - :ivar enabled: Is Vulnerability Assessment auto provisioning enabled. - :vartype enabled: bool - :ivar configuration: configuration for Vulnerability Assessment autoprovisioning. - :vartype configuration: - ~azure.mgmt.security.models.DefenderForServersGcpOfferingVaAutoProvisioningConfiguration - """ - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "configuration": { - "key": "configuration", - "type": "DefenderForServersGcpOfferingVaAutoProvisioningConfiguration", - }, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - configuration: Optional["_models.DefenderForServersGcpOfferingVaAutoProvisioningConfiguration"] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: Is Vulnerability Assessment auto provisioning enabled. - :paramtype enabled: bool - :keyword configuration: configuration for Vulnerability Assessment autoprovisioning. - :paramtype configuration: - ~azure.mgmt.security.models.DefenderForServersGcpOfferingVaAutoProvisioningConfiguration - """ - super().__init__(**kwargs) - self.enabled = enabled - self.configuration = configuration - - -class DefenderForServersGcpOfferingVaAutoProvisioningConfiguration( - _serialization.Model -): # pylint: disable=name-too-long - """configuration for Vulnerability Assessment autoprovisioning. - - :ivar type: The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or - 'Qualys'. Known values are: "Qualys" and "TVM". - :vartype type: str or ~azure.mgmt.security.models.Type - """ - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, *, type: Optional[Union[str, "_models.Type"]] = None, **kwargs: Any) -> None: - """ - :keyword type: The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or - 'Qualys'. Known values are: "Qualys" and "TVM". - :paramtype type: str or ~azure.mgmt.security.models.Type - """ - super().__init__(**kwargs) - self.type = type - - -class DefenderForServersGcpOfferingVmScanners(VmScannersGcp): - """The Microsoft Defender for Server VM scanning configuration. - - :ivar enabled: Is VM scanning enabled. - :vartype enabled: bool - :ivar configuration: Configuration for VM scanning. - :vartype configuration: ~azure.mgmt.security.models.VmScannersBaseConfiguration - """ - - -class DefenderForStorageSetting(Resource): - """The Defender for Storage resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: Defender for Storage resource properties. - :vartype properties: ~azure.mgmt.security.models.DefenderForStorageSettingProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "DefenderForStorageSettingProperties"}, - } - - def __init__( - self, *, properties: Optional["_models.DefenderForStorageSettingProperties"] = None, **kwargs: Any - ) -> None: - """ - :keyword properties: Defender for Storage resource properties. - :paramtype properties: ~azure.mgmt.security.models.DefenderForStorageSettingProperties - """ - super().__init__(**kwargs) - self.properties = properties - - -class DefenderForStorageSettingList(_serialization.Model): - """List of Defender for Storage settings. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Defender for Storage settings. - :vartype value: list[~azure.mgmt.security.models.DefenderForStorageSetting] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[DefenderForStorageSetting]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.DefenderForStorageSetting"]] = None - self.next_link: Optional[str] = None - - -class DefenderForStorageSettingProperties(_serialization.Model): - """Defender for Storage resource properties. - - :ivar is_enabled: Indicates whether Defender for Storage is enabled on this storage account. - :vartype is_enabled: bool - :ivar malware_scanning: Properties of Malware Scanning. - :vartype malware_scanning: ~azure.mgmt.security.models.MalwareScanningProperties - :ivar sensitive_data_discovery: Properties of Sensitive Data Discovery. - :vartype sensitive_data_discovery: ~azure.mgmt.security.models.SensitiveDataDiscoveryProperties - :ivar override_subscription_level_settings: Indicates whether the settings defined for this - storage account should override the settings defined for the subscription. - :vartype override_subscription_level_settings: bool - """ - - _attribute_map = { - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "malware_scanning": {"key": "malwareScanning", "type": "MalwareScanningProperties"}, - "sensitive_data_discovery": {"key": "sensitiveDataDiscovery", "type": "SensitiveDataDiscoveryProperties"}, - "override_subscription_level_settings": {"key": "overrideSubscriptionLevelSettings", "type": "bool"}, - } - - def __init__( - self, - *, - is_enabled: Optional[bool] = None, - malware_scanning: Optional["_models.MalwareScanningProperties"] = None, - sensitive_data_discovery: Optional["_models.SensitiveDataDiscoveryProperties"] = None, - override_subscription_level_settings: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Indicates whether Defender for Storage is enabled on this storage account. - :paramtype is_enabled: bool - :keyword malware_scanning: Properties of Malware Scanning. - :paramtype malware_scanning: ~azure.mgmt.security.models.MalwareScanningProperties - :keyword sensitive_data_discovery: Properties of Sensitive Data Discovery. - :paramtype sensitive_data_discovery: - ~azure.mgmt.security.models.SensitiveDataDiscoveryProperties - :keyword override_subscription_level_settings: Indicates whether the settings defined for this - storage account should override the settings defined for the subscription. - :paramtype override_subscription_level_settings: bool - """ - super().__init__(**kwargs) - self.is_enabled = is_enabled - self.malware_scanning = malware_scanning - self.sensitive_data_discovery = sensitive_data_discovery - self.override_subscription_level_settings = override_subscription_level_settings - - -class DenylistCustomAlertRule(ListCustomAlertRule): - """A custom alert rule that checks if a value (depends on the custom alert type) is denied. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar value_type: The value type of the items in the list. Known values are: "IpCidr" and - "String". - :vartype value_type: str or ~azure.mgmt.security.models.ValueType - :ivar denylist_values: The values to deny. The format of the values depends on the rule type. - Required. - :vartype denylist_values: list[str] - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "value_type": {"readonly": True}, - "denylist_values": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "value_type": {"key": "valueType", "type": "str"}, - "denylist_values": {"key": "denylistValues", "type": "[str]"}, - } - - def __init__(self, *, is_enabled: bool, denylist_values: list[str], **kwargs: Any) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword denylist_values: The values to deny. The format of the values depends on the rule - type. Required. - :paramtype denylist_values: list[str] - """ - super().__init__(is_enabled=is_enabled, **kwargs) - self.rule_type: str = "DenylistCustomAlertRule" - self.denylist_values = denylist_values - - -class DeviceSecurityGroup(Resource): - """The device security group resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar threshold_rules: The list of custom alert threshold rules. - :vartype threshold_rules: list[~azure.mgmt.security.models.ThresholdCustomAlertRule] - :ivar time_window_rules: The list of custom alert time-window rules. - :vartype time_window_rules: list[~azure.mgmt.security.models.TimeWindowCustomAlertRule] - :ivar allowlist_rules: The allow-list custom alert rules. - :vartype allowlist_rules: list[~azure.mgmt.security.models.AllowlistCustomAlertRule] - :ivar denylist_rules: The deny-list custom alert rules. - :vartype denylist_rules: list[~azure.mgmt.security.models.DenylistCustomAlertRule] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "threshold_rules": {"key": "properties.thresholdRules", "type": "[ThresholdCustomAlertRule]"}, - "time_window_rules": {"key": "properties.timeWindowRules", "type": "[TimeWindowCustomAlertRule]"}, - "allowlist_rules": {"key": "properties.allowlistRules", "type": "[AllowlistCustomAlertRule]"}, - "denylist_rules": {"key": "properties.denylistRules", "type": "[DenylistCustomAlertRule]"}, - } - - def __init__( - self, - *, - threshold_rules: Optional[list["_models.ThresholdCustomAlertRule"]] = None, - time_window_rules: Optional[list["_models.TimeWindowCustomAlertRule"]] = None, - allowlist_rules: Optional[list["_models.AllowlistCustomAlertRule"]] = None, - denylist_rules: Optional[list["_models.DenylistCustomAlertRule"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword threshold_rules: The list of custom alert threshold rules. - :paramtype threshold_rules: list[~azure.mgmt.security.models.ThresholdCustomAlertRule] - :keyword time_window_rules: The list of custom alert time-window rules. - :paramtype time_window_rules: list[~azure.mgmt.security.models.TimeWindowCustomAlertRule] - :keyword allowlist_rules: The allow-list custom alert rules. - :paramtype allowlist_rules: list[~azure.mgmt.security.models.AllowlistCustomAlertRule] - :keyword denylist_rules: The deny-list custom alert rules. - :paramtype denylist_rules: list[~azure.mgmt.security.models.DenylistCustomAlertRule] - """ - super().__init__(**kwargs) - self.threshold_rules = threshold_rules - self.time_window_rules = time_window_rules - self.allowlist_rules = allowlist_rules - self.denylist_rules = denylist_rules - - -class DeviceSecurityGroupList(_serialization.Model): - """List of device security groups. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of device security group objects. - :vartype value: list[~azure.mgmt.security.models.DeviceSecurityGroup] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[DeviceSecurityGroup]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[list["_models.DeviceSecurityGroup"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of device security group objects. - :paramtype value: list[~azure.mgmt.security.models.DeviceSecurityGroup] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class DevOpsCapability(_serialization.Model): - """Details about DevOps capability. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar name: Gets the name of the DevOps capability. - :vartype name: str - :ivar value: Gets the value of the DevOps capability. - :vartype value: str - """ - - _validation = { - "name": {"readonly": True}, - "value": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "value": {"key": "value", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.name: Optional[str] = None - self.value: Optional[str] = None - - -class DevOpsConfiguration(ProxyResource): - """DevOps Configuration resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Metadata pertaining to creation and last modification of the resource. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar properties: DevOps Configuration properties. - :vartype properties: ~azure.mgmt.security.models.DevOpsConfigurationProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "properties": {"key": "properties", "type": "DevOpsConfigurationProperties"}, - } - - def __init__(self, *, properties: Optional["_models.DevOpsConfigurationProperties"] = None, **kwargs: Any) -> None: - """ - :keyword properties: DevOps Configuration properties. - :paramtype properties: ~azure.mgmt.security.models.DevOpsConfigurationProperties - """ - super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.properties = properties - - -class DevOpsConfigurationListResponse(_serialization.Model): - """List of RP resources which supports pagination. - - :ivar value: Gets or sets list of resources. - :vartype value: list[~azure.mgmt.security.models.DevOpsConfiguration] - :ivar next_link: Gets or sets next link to scroll over the results. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[DevOpsConfiguration]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[list["_models.DevOpsConfiguration"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Gets or sets list of resources. - :paramtype value: list[~azure.mgmt.security.models.DevOpsConfiguration] - :keyword next_link: Gets or sets next link to scroll over the results. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class DevOpsConfigurationProperties(_serialization.Model): - """DevOps Configuration properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provisioning_status_message: Gets the resource status message. - :vartype provisioning_status_message: str - :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. - :vartype provisioning_status_update_time_utc: ~datetime.datetime - :ivar provisioning_state: The provisioning state of the resource. - - Pending - Provisioning pending. - Failed - Provisioning failed. - Succeeded - Successful provisioning. - Canceled - Provisioning canceled. - PendingDeletion - Deletion pending. - DeletionSuccess - Deletion successful. - DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", - "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". - :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState - :ivar authorization: Authorization payload. - :vartype authorization: ~azure.mgmt.security.models.Authorization - :ivar auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and - "NotApplicable". - :vartype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :ivar top_level_inventory_list: List of top-level inventory to select when AutoDiscovery is - disabled. This field is ignored when AutoDiscovery is enabled. - :vartype top_level_inventory_list: list[str] - :ivar capabilities: List of capabilities assigned to the DevOps configuration during the - discovery process. - :vartype capabilities: list[~azure.mgmt.security.models.DevOpsCapability] - :ivar agentless_configuration: Details about Agentless configuration. - :vartype agentless_configuration: ~azure.mgmt.security.models.AgentlessConfiguration - """ - - _validation = { - "provisioning_status_message": {"readonly": True}, - "provisioning_status_update_time_utc": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "capabilities": {"readonly": True}, - } - - _attribute_map = { - "provisioning_status_message": {"key": "provisioningStatusMessage", "type": "str"}, - "provisioning_status_update_time_utc": {"key": "provisioningStatusUpdateTimeUtc", "type": "iso-8601"}, - "provisioning_state": {"key": "provisioningState", "type": "str"}, - "authorization": {"key": "authorization", "type": "Authorization"}, - "auto_discovery": {"key": "autoDiscovery", "type": "str"}, - "top_level_inventory_list": {"key": "topLevelInventoryList", "type": "[str]"}, - "capabilities": {"key": "capabilities", "type": "[DevOpsCapability]"}, - "agentless_configuration": {"key": "agentlessConfiguration", "type": "AgentlessConfiguration"}, - } - - def __init__( - self, - *, - authorization: Optional["_models.Authorization"] = None, - auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, - top_level_inventory_list: Optional[list[str]] = None, - agentless_configuration: Optional["_models.AgentlessConfiguration"] = None, - **kwargs: Any - ) -> None: - """ - :keyword authorization: Authorization payload. - :paramtype authorization: ~azure.mgmt.security.models.Authorization - :keyword auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and - "NotApplicable". - :paramtype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :keyword top_level_inventory_list: List of top-level inventory to select when AutoDiscovery is - disabled. This field is ignored when AutoDiscovery is enabled. - :paramtype top_level_inventory_list: list[str] - :keyword agentless_configuration: Details about Agentless configuration. - :paramtype agentless_configuration: ~azure.mgmt.security.models.AgentlessConfiguration - """ - super().__init__(**kwargs) - self.provisioning_status_message: Optional[str] = None - self.provisioning_status_update_time_utc: Optional[datetime.datetime] = None - self.provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = None - self.authorization = authorization - self.auto_discovery = auto_discovery - self.top_level_inventory_list = top_level_inventory_list - self.capabilities: Optional[list["_models.DevOpsCapability"]] = None - self.agentless_configuration = agentless_configuration - - -class DirectMethodInvokesNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of direct method invokes is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "DirectMethodInvokesNotInAllowedRange" - - -class DiscoveredSecuritySolution(Resource, Location): - """DiscoveredSecuritySolution. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar security_family: The security family of the discovered solution. Required. Known values - are: "Waf", "Ngfw", "SaasWaf", and "Va". - :vartype security_family: str or ~azure.mgmt.security.models.SecurityFamily - :ivar offer: The security solutions' image offer. Required. - :vartype offer: str - :ivar publisher: The security solutions' image publisher. Required. - :vartype publisher: str - :ivar sku: The security solutions' image sku. Required. - :vartype sku: str - """ - - _validation = { - "location": {"readonly": True}, - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "security_family": {"required": True}, - "offer": {"required": True}, - "publisher": {"required": True}, - "sku": {"required": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "security_family": {"key": "properties.securityFamily", "type": "str"}, - "offer": {"key": "properties.offer", "type": "str"}, - "publisher": {"key": "properties.publisher", "type": "str"}, - "sku": {"key": "properties.sku", "type": "str"}, - } - - def __init__( - self, - *, - security_family: Union[str, "_models.SecurityFamily"], - offer: str, - publisher: str, - sku: str, - **kwargs: Any - ) -> None: - """ - :keyword security_family: The security family of the discovered solution. Required. Known - values are: "Waf", "Ngfw", "SaasWaf", and "Va". - :paramtype security_family: str or ~azure.mgmt.security.models.SecurityFamily - :keyword offer: The security solutions' image offer. Required. - :paramtype offer: str - :keyword publisher: The security solutions' image publisher. Required. - :paramtype publisher: str - :keyword sku: The security solutions' image sku. Required. - :paramtype sku: str - """ - super().__init__(**kwargs) - self.location: Optional[str] = None - self.security_family = security_family - self.offer = offer - self.publisher = publisher - self.sku = sku - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class DiscoveredSecuritySolutionList(_serialization.Model): - """DiscoveredSecuritySolutionList. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.DiscoveredSecuritySolution] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[DiscoveredSecuritySolution]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[list["_models.DiscoveredSecuritySolution"]] = None, **kwargs: Any) -> None: - """ - :keyword value: - :paramtype value: list[~azure.mgmt.security.models.DiscoveredSecuritySolution] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class DockerHubEnvironmentData(EnvironmentData): - """The Docker Hub connector environment data. - - All required parameters must be populated in order to send to server. - - :ivar environment_type: The type of the environment data. Required. Known values are: - "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", - "DockerHubOrganization", and "JFrogArtifactory". - :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType - :ivar authentication: The Docker Hub organization authentication details. - :vartype authentication: ~azure.mgmt.security.models.Authentication - :ivar scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). - :vartype scan_interval: int - """ - - _validation = { - "environment_type": {"required": True}, - } - - _attribute_map = { - "environment_type": {"key": "environmentType", "type": "str"}, - "authentication": {"key": "authentication", "type": "Authentication"}, - "scan_interval": {"key": "scanInterval", "type": "int"}, - } - - def __init__( - self, - *, - authentication: Optional["_models.Authentication"] = None, - scan_interval: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword authentication: The Docker Hub organization authentication details. - :paramtype authentication: ~azure.mgmt.security.models.Authentication - :keyword scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). - :paramtype scan_interval: int - """ - super().__init__(**kwargs) - self.environment_type: str = "DockerHubOrganization" - self.authentication = authentication - self.scan_interval = scan_interval - - -class EdgeIdentifiers(_serialization.Model): - """Represents an edge in the path. - - All required parameters must be populated in order to send to server. - - :ivar source: The source node of the edge. Required. - :vartype source: str - :ivar target: The target node of the edge. Required. - :vartype target: str - :ivar type: The type of the edge. Required. - :vartype type: str - """ - - _validation = { - "source": {"required": True}, - "target": {"required": True}, - "type": {"required": True}, - } - - _attribute_map = { - "source": {"key": "source", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, *, source: str, target: str, type: str, **kwargs: Any) -> None: - """ - :keyword source: The source node of the edge. Required. - :paramtype source: str - :keyword target: The target node of the edge. Required. - :paramtype target: str - :keyword type: The type of the edge. Required. - :paramtype type: str - """ - super().__init__(**kwargs) - self.source = source - self.target = target - self.type = type - - -class EnvironmentDetails(_serialization.Model): - """The environment details of the resource. - - :ivar native_resource_id: The native resource id of the resource (in case of Azure - the - resource Id, in case of MC - the native resource id). - :vartype native_resource_id: str - :ivar environment_hierarchy_id: The hierarchy id of the connector (in case of Azure - the - subscription Id, in case of MC - the hierarchyId id). - :vartype environment_hierarchy_id: str - :ivar organizational_hierarchy_id: The organizational hierarchy id of the connector (in case of - Azure - the subscription Id, in case of MC - the organizational hierarchyId id). - :vartype organizational_hierarchy_id: str - :ivar subscription_id: The subscription Id. - :vartype subscription_id: str - :ivar tenant_id: The tenant Id. - :vartype tenant_id: str - """ - - _attribute_map = { - "native_resource_id": {"key": "nativeResourceId", "type": "str"}, - "environment_hierarchy_id": {"key": "environmentHierarchyId", "type": "str"}, - "organizational_hierarchy_id": {"key": "organizationalHierarchyId", "type": "str"}, - "subscription_id": {"key": "subscriptionId", "type": "str"}, - "tenant_id": {"key": "tenantId", "type": "str"}, - } - - def __init__( - self, - *, - native_resource_id: Optional[str] = None, - environment_hierarchy_id: Optional[str] = None, - organizational_hierarchy_id: Optional[str] = None, - subscription_id: Optional[str] = None, - tenant_id: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword native_resource_id: The native resource id of the resource (in case of Azure - the - resource Id, in case of MC - the native resource id). - :paramtype native_resource_id: str - :keyword environment_hierarchy_id: The hierarchy id of the connector (in case of Azure - the - subscription Id, in case of MC - the hierarchyId id). - :paramtype environment_hierarchy_id: str - :keyword organizational_hierarchy_id: The organizational hierarchy id of the connector (in case - of Azure - the subscription Id, in case of MC - the organizational hierarchyId id). - :paramtype organizational_hierarchy_id: str - :keyword subscription_id: The subscription Id. - :paramtype subscription_id: str - :keyword tenant_id: The tenant Id. - :paramtype tenant_id: str - """ - super().__init__(**kwargs) - self.native_resource_id = native_resource_id - self.environment_hierarchy_id = environment_hierarchy_id - self.organizational_hierarchy_id = organizational_hierarchy_id - self.subscription_id = subscription_id - self.tenant_id = tenant_id - - -class ErrorAdditionalInfo(_serialization.Model): - """The resource management error additional info. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar type: The additional info type. - :vartype type: str - :ivar info: The additional info. - :vartype info: JSON - """ - - _validation = { - "type": {"readonly": True}, - "info": {"readonly": True}, - } - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - "info": {"key": "info", "type": "object"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.type: Optional[str] = None - self.info: Optional[JSON] = None - - -class ErrorDetail(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.ErrorDetail] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[ErrorDetail]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.ErrorDetail"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class ErrorDetailAutoGenerated(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.ErrorDetailAutoGenerated] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[ErrorDetailAutoGenerated]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.ErrorDetailAutoGenerated"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class ErrorDetailAutoGenerated2(_serialization.Model): - """The error detail. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.security.models.ErrorDetailAutoGenerated2] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.security.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[ErrorDetailAutoGenerated2]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[str] = None - self.message: Optional[str] = None - self.target: Optional[str] = None - self.details: Optional[list["_models.ErrorDetailAutoGenerated2"]] = None - self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None - - -class ErrorResponse(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - :ivar error: The error object. - :vartype error: ~azure.mgmt.security.models.ErrorDetail - """ - - _attribute_map = { - "error": {"key": "error", "type": "ErrorDetail"}, - } - - def __init__(self, *, error: Optional["_models.ErrorDetail"] = None, **kwargs: Any) -> None: - """ - :keyword error: The error object. - :paramtype error: ~azure.mgmt.security.models.ErrorDetail - """ - super().__init__(**kwargs) - self.error = error - - -class ErrorResponseAutoGenerated(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - :ivar error: The error object. - :vartype error: ~azure.mgmt.security.models.ErrorDetailAutoGenerated - """ - - _attribute_map = { - "error": {"key": "error", "type": "ErrorDetailAutoGenerated"}, - } - - def __init__(self, *, error: Optional["_models.ErrorDetailAutoGenerated"] = None, **kwargs: Any) -> None: - """ - :keyword error: The error object. - :paramtype error: ~azure.mgmt.security.models.ErrorDetailAutoGenerated - """ - super().__init__(**kwargs) - self.error = error - - -class ErrorResponseAutoGenerated2(_serialization.Model): - """Common error response for all Azure Resource Manager APIs to return error details for failed - operations. (This also follows the OData error response format.). - - :ivar error: The error object. - :vartype error: ~azure.mgmt.security.models.ErrorDetailAutoGenerated2 - """ - - _attribute_map = { - "error": {"key": "error", "type": "ErrorDetailAutoGenerated2"}, - } - - def __init__(self, *, error: Optional["_models.ErrorDetailAutoGenerated2"] = None, **kwargs: Any) -> None: - """ - :keyword error: The error object. - :paramtype error: ~azure.mgmt.security.models.ErrorDetailAutoGenerated2 - """ - super().__init__(**kwargs) - self.error = error - - -class ExecuteGovernanceRuleParams(_serialization.Model): - """Governance rule execution parameters. - - :ivar override: Describe if governance rule should be override. - :vartype override: bool - """ - - _attribute_map = { - "override": {"key": "override", "type": "bool"}, - } - - def __init__(self, *, override: Optional[bool] = None, **kwargs: Any) -> None: - """ - :keyword override: Describe if governance rule should be override. - :paramtype override: bool - """ - super().__init__(**kwargs) - self.override = override - - -class Extension(_serialization.Model): - """A plan's extension properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar name: The extension name. Supported values are: :code:`
`\\ :code:`
`\\ - **AgentlessDiscoveryForKubernetes** - Provides zero footprint, API-based discovery of - Kubernetes clusters, their configurations and deployments. The collected data is used to create - a contextualized security graph for Kubernetes clusters, provide risk hunting capabilities, and - visualize risks and threats to Kubernetes environments and workloads.\\ :code:`
`Available - for CloudPosture plan and Containers plan.\\ :code:`
`\\ :code:`
`\\ - **OnUploadMalwareScanning** - Limits the GB to be scanned per month for each storage account - within the subscription. Once this limit reached on a given storage account, Blobs won't be - scanned during current calendar month.\\ :code:`
`Available for StorageAccounts plan - (DefenderForStorageV2 sub plans).\\ :code:`
`\\ :code:`
`\\ **SensitiveDataDiscovery** - - Sensitive data discovery identifies Blob storage container with sensitive data such as - credentials, credit cards, and more, to help prioritize and investigate security events.\\ - :code:`
`Available for StorageAccounts plan (DefenderForStorageV2 sub plan) and CloudPosture - plan.\\ :code:`
`\\ :code:`
`\\ **ContainerRegistriesVulnerabilityAssessments** - - Provides vulnerability management for images stored in your container registries.\\ - :code:`
`Available for CloudPosture plan and Containers plan.\\ :code:`
`\\ - :code:`
`\\ **MdeDesignatedSubscription** - Direct onboarding is a seamless integration - between Defender for Endpoint and Defender for Cloud that doesn’t require extra software - deployment on your servers. The onboarded resources will be presented under a designated Azure - Subscription you configure\\ :code:`
`Available for VirtualMachines plan (P1 and P2 sub - plans).\\ :code:`
`\\ :code:`
`\\ **AgentlessVmScanning** - Scans your machines for - installed software, vulnerabilities, malware and secret scanning without relying on agents or - impacting machine performance. Learn more here - https://learn.microsoft.com/en-us/azure/defender-for-cloud/concept-agentless-data-collection.\\ - :code:`
`Available for CloudPosture plan, VirtualMachines plan (P2 sub plan) and Containers - plan.\\ :code:`
`\\ :code:`
`\\ **EntraPermissionsManagement** - Permissions Management - provides Cloud Infrastructure Entitlement Management (CIEM) capabilities that helps - organizations to manage and control user access and entitlements in their cloud infrastructure - - important attack vector for cloud environments.\\ :code:`
`Permissions Management analyzes - all permissions and active usage, and suggests recommendations to reduce permissions to enforce - the principle of least privilege. Learn more here - https://learn.microsoft.com/en-us/azure/defender-for-cloud/permissions-management.\\ - :code:`
`Available for CloudPosture plan. :code:`
`\\ :code:`
`\\ - **FileIntegrityMonitoring** - File integrity monitoring (FIM), examines operating system - files.\\ :code:`
`Windows registries, Linux system files, in real time, for changes that - might indicate an attack.\\ :code:`
`Available for VirtualMachines plan (P2 sub plan). - :code:`
`\\ :code:`
`\\ **ContainerSensor** - The sensor is based on IG and provides a - rich threat detection suite for Kubernetes clusters, nodes, and workloads, powered by Microsoft - leading threat intelligence, provides mapping to MITRE ATT&CK framework.\\ - :code:`
`Available for Containers plan. :code:`
`\\ :code:`
`\\ **AIPromptEvidence** - - Exposes the prompts passed between the user and the AI model as alert evidence. This helps - classify and triage the alerts with relevant user context. The prompt snippets will include - only segments of the user prompt or model response that were deemed suspicious and relevant for - security classifications. The prompt evidence will be available through Defender portal as part - of each alert.\\ :code:`
`Available for AI plan. :code:`
`\\ :code:`
`. Required. - :vartype name: str - :ivar is_enabled: Indicates whether the extension is enabled. Required. Known values are: - "True" and "False". - :vartype is_enabled: str or ~azure.mgmt.security.models.IsEnabled - :ivar additional_extension_properties: Property values associated with the extension. - :vartype additional_extension_properties: dict[str, any] - :ivar operation_status: Optional. A status describing the success/failure of the extension's - enablement/disablement operation. - :vartype operation_status: ~azure.mgmt.security.models.OperationStatus - """ - - _validation = { - "name": {"required": True}, - "is_enabled": {"required": True}, - "operation_status": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "str"}, - "additional_extension_properties": {"key": "additionalExtensionProperties", "type": "{object}"}, - "operation_status": {"key": "operationStatus", "type": "OperationStatus"}, - } - - def __init__( - self, - *, - name: str, - is_enabled: Union[str, "_models.IsEnabled"], - additional_extension_properties: Optional[dict[str, Any]] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: The extension name. Supported values are: :code:`
`\\ :code:`
`\\ - **AgentlessDiscoveryForKubernetes** - Provides zero footprint, API-based discovery of - Kubernetes clusters, their configurations and deployments. The collected data is used to create - a contextualized security graph for Kubernetes clusters, provide risk hunting capabilities, and - visualize risks and threats to Kubernetes environments and workloads.\\ :code:`
`Available - for CloudPosture plan and Containers plan.\\ :code:`
`\\ :code:`
`\\ - **OnUploadMalwareScanning** - Limits the GB to be scanned per month for each storage account - within the subscription. Once this limit reached on a given storage account, Blobs won't be - scanned during current calendar month.\\ :code:`
`Available for StorageAccounts plan - (DefenderForStorageV2 sub plans).\\ :code:`
`\\ :code:`
`\\ **SensitiveDataDiscovery** - - Sensitive data discovery identifies Blob storage container with sensitive data such as - credentials, credit cards, and more, to help prioritize and investigate security events.\\ - :code:`
`Available for StorageAccounts plan (DefenderForStorageV2 sub plan) and CloudPosture - plan.\\ :code:`
`\\ :code:`
`\\ **ContainerRegistriesVulnerabilityAssessments** - - Provides vulnerability management for images stored in your container registries.\\ - :code:`
`Available for CloudPosture plan and Containers plan.\\ :code:`
`\\ - :code:`
`\\ **MdeDesignatedSubscription** - Direct onboarding is a seamless integration - between Defender for Endpoint and Defender for Cloud that doesn’t require extra software - deployment on your servers. The onboarded resources will be presented under a designated Azure - Subscription you configure\\ :code:`
`Available for VirtualMachines plan (P1 and P2 sub - plans).\\ :code:`
`\\ :code:`
`\\ **AgentlessVmScanning** - Scans your machines for - installed software, vulnerabilities, malware and secret scanning without relying on agents or - impacting machine performance. Learn more here - https://learn.microsoft.com/en-us/azure/defender-for-cloud/concept-agentless-data-collection.\\ - :code:`
`Available for CloudPosture plan, VirtualMachines plan (P2 sub plan) and Containers - plan.\\ :code:`
`\\ :code:`
`\\ **EntraPermissionsManagement** - Permissions Management - provides Cloud Infrastructure Entitlement Management (CIEM) capabilities that helps - organizations to manage and control user access and entitlements in their cloud infrastructure - - important attack vector for cloud environments.\\ :code:`
`Permissions Management analyzes - all permissions and active usage, and suggests recommendations to reduce permissions to enforce - the principle of least privilege. Learn more here - https://learn.microsoft.com/en-us/azure/defender-for-cloud/permissions-management.\\ - :code:`
`Available for CloudPosture plan. :code:`
`\\ :code:`
`\\ - **FileIntegrityMonitoring** - File integrity monitoring (FIM), examines operating system - files.\\ :code:`
`Windows registries, Linux system files, in real time, for changes that - might indicate an attack.\\ :code:`
`Available for VirtualMachines plan (P2 sub plan). - :code:`
`\\ :code:`
`\\ **ContainerSensor** - The sensor is based on IG and provides a - rich threat detection suite for Kubernetes clusters, nodes, and workloads, powered by Microsoft - leading threat intelligence, provides mapping to MITRE ATT&CK framework.\\ - :code:`
`Available for Containers plan. :code:`
`\\ :code:`
`\\ **AIPromptEvidence** - - Exposes the prompts passed between the user and the AI model as alert evidence. This helps - classify and triage the alerts with relevant user context. The prompt snippets will include - only segments of the user prompt or model response that were deemed suspicious and relevant for - security classifications. The prompt evidence will be available through Defender portal as part - of each alert.\\ :code:`
`Available for AI plan. :code:`
`\\ :code:`
`. Required. - :paramtype name: str - :keyword is_enabled: Indicates whether the extension is enabled. Required. Known values are: - "True" and "False". - :paramtype is_enabled: str or ~azure.mgmt.security.models.IsEnabled - :keyword additional_extension_properties: Property values associated with the extension. - :paramtype additional_extension_properties: dict[str, any] - """ - super().__init__(**kwargs) - self.name = name - self.is_enabled = is_enabled - self.additional_extension_properties = additional_extension_properties - self.operation_status: Optional["_models.OperationStatus"] = None - - -class ExternalSecuritySolutionList(_serialization.Model): - """ExternalSecuritySolutionList. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.ExternalSecuritySolution] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[ExternalSecuritySolution]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[list["_models.ExternalSecuritySolution"]] = None, **kwargs: Any) -> None: - """ - :keyword value: - :paramtype value: list[~azure.mgmt.security.models.ExternalSecuritySolution] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class FailedLocalLoginsNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of failed local logins is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "FailedLocalLoginsNotInAllowedRange" - - -class FilesScanSummary(_serialization.Model): - """A summary of the scan results of the files that were scanned. - - :ivar total_files_scanned: The total number of files that were scanned. - :vartype total_files_scanned: int - :ivar malicious_files_count: The number of malicious files that were detected during the scan. - :vartype malicious_files_count: int - :ivar skipped_files_count: The number of files that were skipped. - :vartype skipped_files_count: int - :ivar failed_files_count: The number of failed file scans. - :vartype failed_files_count: int - :ivar scanned_files_in_gb: The number of gigabytes of data that were scanned. - :vartype scanned_files_in_gb: float - """ - - _attribute_map = { - "total_files_scanned": {"key": "totalFilesScanned", "type": "int"}, - "malicious_files_count": {"key": "maliciousFilesCount", "type": "int"}, - "skipped_files_count": {"key": "skippedFilesCount", "type": "int"}, - "failed_files_count": {"key": "failedFilesCount", "type": "int"}, - "scanned_files_in_gb": {"key": "scannedFilesInGB", "type": "float"}, - } - - def __init__( - self, - *, - total_files_scanned: Optional[int] = None, - malicious_files_count: Optional[int] = None, - skipped_files_count: Optional[int] = None, - failed_files_count: Optional[int] = None, - scanned_files_in_gb: Optional[float] = None, - **kwargs: Any - ) -> None: - """ - :keyword total_files_scanned: The total number of files that were scanned. - :paramtype total_files_scanned: int - :keyword malicious_files_count: The number of malicious files that were detected during the - scan. - :paramtype malicious_files_count: int - :keyword skipped_files_count: The number of files that were skipped. - :paramtype skipped_files_count: int - :keyword failed_files_count: The number of failed file scans. - :paramtype failed_files_count: int - :keyword scanned_files_in_gb: The number of gigabytes of data that were scanned. - :paramtype scanned_files_in_gb: float - """ - super().__init__(**kwargs) - self.total_files_scanned = total_files_scanned - self.malicious_files_count = malicious_files_count - self.skipped_files_count = skipped_files_count - self.failed_files_count = failed_files_count - self.scanned_files_in_gb = scanned_files_in_gb - - -class FileUploadsNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of file uploads is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "FileUploadsNotInAllowedRange" - - -class GcpOrganizationalData(_serialization.Model): - """The gcpOrganization data. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - GcpOrganizationalDataMember, GcpOrganizationalDataOrganization - - All required parameters must be populated in order to send to server. - - :ivar organization_membership_type: The multi cloud account's membership type in the - organization. Required. Known values are: "Member" and "Organization". - :vartype organization_membership_type: str or - ~azure.mgmt.security.models.OrganizationMembershipType - """ - - _validation = { - "organization_membership_type": {"required": True}, - } - - _attribute_map = { - "organization_membership_type": {"key": "organizationMembershipType", "type": "str"}, - } - - _subtype_map = { - "organization_membership_type": { - "Member": "GcpOrganizationalDataMember", - "Organization": "GcpOrganizationalDataOrganization", - } - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.organization_membership_type: Optional[str] = None - - -class GcpOrganizationalDataMember(GcpOrganizationalData): - """The gcpOrganization data for the member account. - - All required parameters must be populated in order to send to server. - - :ivar organization_membership_type: The multi cloud account's membership type in the - organization. Required. Known values are: "Member" and "Organization". - :vartype organization_membership_type: str or - ~azure.mgmt.security.models.OrganizationMembershipType - :ivar parent_hierarchy_id: If the multi cloud account is not of membership type organization, - this will be the ID of the project's parent. - :vartype parent_hierarchy_id: str - :ivar management_project_number: The GCP management project number from organizational - onboarding. - :vartype management_project_number: str - """ - - _validation = { - "organization_membership_type": {"required": True}, - } - - _attribute_map = { - "organization_membership_type": {"key": "organizationMembershipType", "type": "str"}, - "parent_hierarchy_id": {"key": "parentHierarchyId", "type": "str"}, - "management_project_number": {"key": "managementProjectNumber", "type": "str"}, - } - - def __init__( - self, - *, - parent_hierarchy_id: Optional[str] = None, - management_project_number: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword parent_hierarchy_id: If the multi cloud account is not of membership type - organization, this will be the ID of the project's parent. - :paramtype parent_hierarchy_id: str - :keyword management_project_number: The GCP management project number from organizational - onboarding. - :paramtype management_project_number: str - """ - super().__init__(**kwargs) - self.organization_membership_type: str = "Member" - self.parent_hierarchy_id = parent_hierarchy_id - self.management_project_number = management_project_number - - -class GcpOrganizationalDataOrganization(GcpOrganizationalData): - """The gcpOrganization data for the parent account. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar organization_membership_type: The multi cloud account's membership type in the - organization. Required. Known values are: "Member" and "Organization". - :vartype organization_membership_type: str or - ~azure.mgmt.security.models.OrganizationMembershipType - :ivar excluded_project_numbers: If the multi cloud account is of membership type organization, - list of accounts excluded from offering. - :vartype excluded_project_numbers: list[str] - :ivar service_account_email_address: The service account email address which represents the - organization level permissions container. - :vartype service_account_email_address: str - :ivar workload_identity_provider_id: The GCP workload identity provider id which represents the - permissions required to auto provision security connectors. - :vartype workload_identity_provider_id: str - :ivar organization_name: GCP organization name. - :vartype organization_name: str - """ - - _validation = { - "organization_membership_type": {"required": True}, - "organization_name": {"readonly": True}, - } - - _attribute_map = { - "organization_membership_type": {"key": "organizationMembershipType", "type": "str"}, - "excluded_project_numbers": {"key": "excludedProjectNumbers", "type": "[str]"}, - "service_account_email_address": {"key": "serviceAccountEmailAddress", "type": "str"}, - "workload_identity_provider_id": {"key": "workloadIdentityProviderId", "type": "str"}, - "organization_name": {"key": "organizationName", "type": "str"}, - } - - def __init__( - self, - *, - excluded_project_numbers: Optional[list[str]] = None, - service_account_email_address: Optional[str] = None, - workload_identity_provider_id: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword excluded_project_numbers: If the multi cloud account is of membership type - organization, list of accounts excluded from offering. - :paramtype excluded_project_numbers: list[str] - :keyword service_account_email_address: The service account email address which represents the - organization level permissions container. - :paramtype service_account_email_address: str - :keyword workload_identity_provider_id: The GCP workload identity provider id which represents - the permissions required to auto provision security connectors. - :paramtype workload_identity_provider_id: str - """ - super().__init__(**kwargs) - self.organization_membership_type: str = "Organization" - self.excluded_project_numbers = excluded_project_numbers - self.service_account_email_address = service_account_email_address - self.workload_identity_provider_id = workload_identity_provider_id - self.organization_name: Optional[str] = None - - -class GcpProjectDetails(_serialization.Model): - """The details about the project represented by the security connector. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar project_number: The unique GCP Project number. - :vartype project_number: str - :ivar project_id: The GCP Project id. - :vartype project_id: str - :ivar workload_identity_pool_id: The GCP workload identity federation pool id. - :vartype workload_identity_pool_id: str - :ivar project_name: GCP project name. - :vartype project_name: str - """ - - _validation = { - "workload_identity_pool_id": {"readonly": True}, - "project_name": {"readonly": True}, - } - - _attribute_map = { - "project_number": {"key": "projectNumber", "type": "str"}, - "project_id": {"key": "projectId", "type": "str"}, - "workload_identity_pool_id": {"key": "workloadIdentityPoolId", "type": "str"}, - "project_name": {"key": "projectName", "type": "str"}, - } - - def __init__( - self, *, project_number: Optional[str] = None, project_id: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword project_number: The unique GCP Project number. - :paramtype project_number: str - :keyword project_id: The GCP Project id. - :paramtype project_id: str - """ - super().__init__(**kwargs) - self.project_number = project_number - self.project_id = project_id - self.workload_identity_pool_id: Optional[str] = None - self.project_name: Optional[str] = None - - -class GcpProjectEnvironmentData(EnvironmentData): - """The GCP project connector environment data. - - All required parameters must be populated in order to send to server. - - :ivar environment_type: The type of the environment data. Required. Known values are: - "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", - "DockerHubOrganization", and "JFrogArtifactory". - :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType - :ivar organizational_data: The Gcp project's organizational data. - :vartype organizational_data: ~azure.mgmt.security.models.GcpOrganizationalData - :ivar project_details: The Gcp project's details. - :vartype project_details: ~azure.mgmt.security.models.GcpProjectDetails - :ivar scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). - :vartype scan_interval: int - """ - - _validation = { - "environment_type": {"required": True}, - } - - _attribute_map = { - "environment_type": {"key": "environmentType", "type": "str"}, - "organizational_data": {"key": "organizationalData", "type": "GcpOrganizationalData"}, - "project_details": {"key": "projectDetails", "type": "GcpProjectDetails"}, - "scan_interval": {"key": "scanInterval", "type": "int"}, - } - - def __init__( - self, - *, - organizational_data: Optional["_models.GcpOrganizationalData"] = None, - project_details: Optional["_models.GcpProjectDetails"] = None, - scan_interval: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword organizational_data: The Gcp project's organizational data. - :paramtype organizational_data: ~azure.mgmt.security.models.GcpOrganizationalData - :keyword project_details: The Gcp project's details. - :paramtype project_details: ~azure.mgmt.security.models.GcpProjectDetails - :keyword scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). - :paramtype scan_interval: int - """ - super().__init__(**kwargs) - self.environment_type: str = "GcpProject" - self.organizational_data = organizational_data - self.project_details = project_details - self.scan_interval = scan_interval - - -class GetSensitivitySettingsListResponse(_serialization.Model): - """A list with a single sensitivity settings resource. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.GetSensitivitySettingsResponse] - """ - - _attribute_map = { - "value": {"key": "value", "type": "[GetSensitivitySettingsResponse]"}, - } - - def __init__( - self, *, value: Optional[list["_models.GetSensitivitySettingsResponse"]] = None, **kwargs: Any - ) -> None: - """ - :keyword value: - :paramtype value: list[~azure.mgmt.security.models.GetSensitivitySettingsResponse] - """ - super().__init__(**kwargs) - self.value = value - - -class GetSensitivitySettingsResponse(_serialization.Model): - """Data sensitivity settings for sensitive data discovery. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: The ID of the sensitivity settings. - :vartype id: str - :ivar type: The type of the sensitivity settings. - :vartype type: str - :ivar name: The name of the sensitivity settings. - :vartype name: str - :ivar properties: The sensitivity settings properties. - :vartype properties: ~azure.mgmt.security.models.GetSensitivitySettingsResponseProperties - """ - - _validation = { - "id": {"readonly": True}, - "type": {"readonly": True}, - "name": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "properties": {"key": "properties", "type": "GetSensitivitySettingsResponseProperties"}, - } - - def __init__( - self, *, properties: Optional["_models.GetSensitivitySettingsResponseProperties"] = None, **kwargs: Any - ) -> None: - """ - :keyword properties: The sensitivity settings properties. - :paramtype properties: ~azure.mgmt.security.models.GetSensitivitySettingsResponseProperties - """ - super().__init__(**kwargs) - self.id: Optional[str] = None - self.type: Optional[str] = None - self.name: Optional[str] = None - self.properties = properties - - -class GetSensitivitySettingsResponseProperties(_serialization.Model): - """The sensitivity settings properties. - - :ivar sensitive_info_types_ids: List of selected sensitive info types' IDs. - :vartype sensitive_info_types_ids: list[str] - :ivar sensitivity_threshold_label_order: The order of the sensitivity threshold label. Any - label at or above this order will be considered sensitive. If set to -1, sensitivity by labels - is turned off. - :vartype sensitivity_threshold_label_order: float - :ivar sensitivity_threshold_label_id: The id of the sensitivity threshold label. Any label at - or above this rank will be considered sensitive. - :vartype sensitivity_threshold_label_id: str - :ivar mip_information: Microsoft information protection built-in and custom information types, - labels, and integration status. - :vartype mip_information: - ~azure.mgmt.security.models.GetSensitivitySettingsResponsePropertiesMipInformation - """ - - _attribute_map = { - "sensitive_info_types_ids": {"key": "sensitiveInfoTypesIds", "type": "[str]"}, - "sensitivity_threshold_label_order": {"key": "sensitivityThresholdLabelOrder", "type": "float"}, - "sensitivity_threshold_label_id": {"key": "sensitivityThresholdLabelId", "type": "str"}, - "mip_information": {"key": "mipInformation", "type": "GetSensitivitySettingsResponsePropertiesMipInformation"}, - } - - def __init__( - self, - *, - sensitive_info_types_ids: Optional[list[str]] = None, - sensitivity_threshold_label_order: Optional[float] = None, - sensitivity_threshold_label_id: Optional[str] = None, - mip_information: Optional["_models.GetSensitivitySettingsResponsePropertiesMipInformation"] = None, - **kwargs: Any - ) -> None: - """ - :keyword sensitive_info_types_ids: List of selected sensitive info types' IDs. - :paramtype sensitive_info_types_ids: list[str] - :keyword sensitivity_threshold_label_order: The order of the sensitivity threshold label. Any - label at or above this order will be considered sensitive. If set to -1, sensitivity by labels - is turned off. - :paramtype sensitivity_threshold_label_order: float - :keyword sensitivity_threshold_label_id: The id of the sensitivity threshold label. Any label - at or above this rank will be considered sensitive. - :paramtype sensitivity_threshold_label_id: str - :keyword mip_information: Microsoft information protection built-in and custom information - types, labels, and integration status. - :paramtype mip_information: - ~azure.mgmt.security.models.GetSensitivitySettingsResponsePropertiesMipInformation - """ - super().__init__(**kwargs) - self.sensitive_info_types_ids = sensitive_info_types_ids - self.sensitivity_threshold_label_order = sensitivity_threshold_label_order - self.sensitivity_threshold_label_id = sensitivity_threshold_label_id - self.mip_information = mip_information - - -class GetSensitivitySettingsResponsePropertiesMipInformation(_serialization.Model): # pylint: disable=name-too-long - """Microsoft information protection built-in and custom information types, labels, and integration - status. - - :ivar mip_integration_status: Microsoft information protection integration status. Known values - are: "Ok", "noConsent", "noAutoLabelingRules", and "noMipLabels". - :vartype mip_integration_status: str or ~azure.mgmt.security.models.MipIntegrationStatus - :ivar labels: List of Microsoft information protection sensitivity labels. - :vartype labels: list[~azure.mgmt.security.models.Label] - :ivar custom_info_types: List of custom user-defined information types. - :vartype custom_info_types: list[~azure.mgmt.security.models.InfoType] - :ivar built_in_info_types: List of pre-configured sensitive information types. - :vartype built_in_info_types: list[~azure.mgmt.security.models.BuiltInInfoType] - """ - - _attribute_map = { - "mip_integration_status": {"key": "mipIntegrationStatus", "type": "str"}, - "labels": {"key": "labels", "type": "[Label]"}, - "custom_info_types": {"key": "customInfoTypes", "type": "[InfoType]"}, - "built_in_info_types": {"key": "builtInInfoTypes", "type": "[BuiltInInfoType]"}, - } - - def __init__( - self, - *, - mip_integration_status: Optional[Union[str, "_models.MipIntegrationStatus"]] = None, - labels: Optional[list["_models.Label"]] = None, - custom_info_types: Optional[list["_models.InfoType"]] = None, - built_in_info_types: Optional[list["_models.BuiltInInfoType"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword mip_integration_status: Microsoft information protection integration status. Known - values are: "Ok", "noConsent", "noAutoLabelingRules", and "noMipLabels". - :paramtype mip_integration_status: str or ~azure.mgmt.security.models.MipIntegrationStatus - :keyword labels: List of Microsoft information protection sensitivity labels. - :paramtype labels: list[~azure.mgmt.security.models.Label] - :keyword custom_info_types: List of custom user-defined information types. - :paramtype custom_info_types: list[~azure.mgmt.security.models.InfoType] - :keyword built_in_info_types: List of pre-configured sensitive information types. - :paramtype built_in_info_types: list[~azure.mgmt.security.models.BuiltInInfoType] - """ - super().__init__(**kwargs) - self.mip_integration_status = mip_integration_status - self.labels = labels - self.custom_info_types = custom_info_types - self.built_in_info_types = built_in_info_types - - -class GitHubOwner(ProxyResource): - """GitHub Owner resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Metadata pertaining to creation and last modification of the resource. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar properties: GitHub Owner properties. - :vartype properties: ~azure.mgmt.security.models.GitHubOwnerProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "properties": {"key": "properties", "type": "GitHubOwnerProperties"}, - } - - def __init__(self, *, properties: Optional["_models.GitHubOwnerProperties"] = None, **kwargs: Any) -> None: - """ - :keyword properties: GitHub Owner properties. - :paramtype properties: ~azure.mgmt.security.models.GitHubOwnerProperties - """ - super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.properties = properties - - -class GitHubOwnerConfiguration(_serialization.Model): - """GitHub Owner Inventory Configuration. - - :ivar auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and - "NotApplicable". - :vartype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :ivar repository_configs: GitHub Repository Inventory Configuration. Dictionary of GitHub - repository name to desired repository configuration. If AutoDiscovery is Enabled, this field - should be null or empty. - :vartype repository_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] - """ - - _attribute_map = { - "auto_discovery": {"key": "autoDiscovery", "type": "str"}, - "repository_configs": {"key": "repositoryConfigs", "type": "{BaseResourceConfiguration}"}, - } - - def __init__( - self, - *, - auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, - repository_configs: Optional[dict[str, "_models.BaseResourceConfiguration"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and - "NotApplicable". - :paramtype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :keyword repository_configs: GitHub Repository Inventory Configuration. Dictionary of GitHub - repository name to desired repository configuration. If AutoDiscovery is Enabled, this field - should be null or empty. - :paramtype repository_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] - """ - super().__init__(**kwargs) - self.auto_discovery = auto_discovery - self.repository_configs = repository_configs - - -class GitHubOwnerListResponse(_serialization.Model): - """List of RP resources which supports pagination. - - :ivar value: Gets or sets list of resources. - :vartype value: list[~azure.mgmt.security.models.GitHubOwner] - :ivar next_link: Gets or sets next link to scroll over the results. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[GitHubOwner]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[list["_models.GitHubOwner"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Gets or sets list of resources. - :paramtype value: list[~azure.mgmt.security.models.GitHubOwner] - :keyword next_link: Gets or sets next link to scroll over the results. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class GitHubOwnerProperties(_serialization.Model): - """GitHub Owner properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provisioning_status_message: Gets the resource status message. - :vartype provisioning_status_message: str - :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. - :vartype provisioning_status_update_time_utc: ~datetime.datetime - :ivar provisioning_state: The provisioning state of the resource. - - Pending - Provisioning pending. - Failed - Provisioning failed. - Succeeded - Successful provisioning. - Canceled - Provisioning canceled. - PendingDeletion - Deletion pending. - DeletionSuccess - Deletion successful. - DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", - "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". - :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState - :ivar owner_url: Gets or sets GitHub Owner url. - :vartype owner_url: str - :ivar git_hub_internal_id: Gets or sets internal GitHub id. - :vartype git_hub_internal_id: str - :ivar onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - """ - - _validation = { - "provisioning_status_message": {"readonly": True}, - "provisioning_status_update_time_utc": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "owner_url": {"readonly": True}, - "git_hub_internal_id": {"readonly": True}, - } - - _attribute_map = { - "provisioning_status_message": {"key": "provisioningStatusMessage", "type": "str"}, - "provisioning_status_update_time_utc": {"key": "provisioningStatusUpdateTimeUtc", "type": "iso-8601"}, - "provisioning_state": {"key": "provisioningState", "type": "str"}, - "owner_url": {"key": "ownerUrl", "type": "str"}, - "git_hub_internal_id": {"key": "gitHubInternalId", "type": "str"}, - "onboarding_state": {"key": "onboardingState", "type": "str"}, - } - - def __init__( - self, *, onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, **kwargs: Any - ) -> None: - """ - :keyword onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :paramtype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - """ - super().__init__(**kwargs) - self.provisioning_status_message: Optional[str] = None - self.provisioning_status_update_time_utc: Optional[datetime.datetime] = None - self.provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = None - self.owner_url: Optional[str] = None - self.git_hub_internal_id: Optional[str] = None - self.onboarding_state = onboarding_state - - -class GitHubRepository(ProxyResource): - """GitHub Repository resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Metadata pertaining to creation and last modification of the resource. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar properties: GitHub Repository properties. - :vartype properties: ~azure.mgmt.security.models.GitHubRepositoryProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "properties": {"key": "properties", "type": "GitHubRepositoryProperties"}, - } - - def __init__(self, *, properties: Optional["_models.GitHubRepositoryProperties"] = None, **kwargs: Any) -> None: - """ - :keyword properties: GitHub Repository properties. - :paramtype properties: ~azure.mgmt.security.models.GitHubRepositoryProperties - """ - super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.properties = properties - - -class GitHubRepositoryListResponse(_serialization.Model): - """List of RP resources which supports pagination. - - :ivar value: Gets or sets list of resources. - :vartype value: list[~azure.mgmt.security.models.GitHubRepository] - :ivar next_link: Gets or sets next link to scroll over the results. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[GitHubRepository]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[list["_models.GitHubRepository"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Gets or sets list of resources. - :paramtype value: list[~azure.mgmt.security.models.GitHubRepository] - :keyword next_link: Gets or sets next link to scroll over the results. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class GitHubRepositoryProperties(_serialization.Model): - """GitHub Repository properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provisioning_status_message: Gets the resource status message. - :vartype provisioning_status_message: str - :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. - :vartype provisioning_status_update_time_utc: ~datetime.datetime - :ivar provisioning_state: The provisioning state of the resource. - - Pending - Provisioning pending. - Failed - Provisioning failed. - Succeeded - Successful provisioning. - Canceled - Provisioning canceled. - PendingDeletion - Deletion pending. - DeletionSuccess - Deletion successful. - DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", - "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". - :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState - :ivar repo_id: Gets or sets GitHub Repository id. - - This is a numeric id defined by Github. - Eg: "123456". - :vartype repo_id: str - :ivar repo_name: Gets or sets GitHub Repository name. Eg: "new-repo-1". - :vartype repo_name: str - :ivar repo_full_name: Gets or sets GitHub Full Name. Repository name, prefixed with Owner name. - Eg: "my-org/new-repo-1". - :vartype repo_full_name: str - :ivar onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - :ivar repo_url: Gets or sets GitHub Repository url. - :vartype repo_url: str - :ivar parent_owner_name: Gets or sets parent GitHub Owner name. - :vartype parent_owner_name: str - """ - - _validation = { - "provisioning_status_message": {"readonly": True}, - "provisioning_status_update_time_utc": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "repo_id": {"readonly": True}, - "repo_name": {"readonly": True}, - "repo_full_name": {"readonly": True}, - "repo_url": {"readonly": True}, - } - - _attribute_map = { - "provisioning_status_message": {"key": "provisioningStatusMessage", "type": "str"}, - "provisioning_status_update_time_utc": {"key": "provisioningStatusUpdateTimeUtc", "type": "iso-8601"}, - "provisioning_state": {"key": "provisioningState", "type": "str"}, - "repo_id": {"key": "repoId", "type": "str"}, - "repo_name": {"key": "repoName", "type": "str"}, - "repo_full_name": {"key": "repoFullName", "type": "str"}, - "onboarding_state": {"key": "onboardingState", "type": "str"}, - "repo_url": {"key": "repoUrl", "type": "str"}, - "parent_owner_name": {"key": "parentOwnerName", "type": "str"}, - } - - def __init__( - self, - *, - onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, - parent_owner_name: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :paramtype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - :keyword parent_owner_name: Gets or sets parent GitHub Owner name. - :paramtype parent_owner_name: str - """ - super().__init__(**kwargs) - self.provisioning_status_message: Optional[str] = None - self.provisioning_status_update_time_utc: Optional[datetime.datetime] = None - self.provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = None - self.repo_id: Optional[str] = None - self.repo_name: Optional[str] = None - self.repo_full_name: Optional[str] = None - self.onboarding_state = onboarding_state - self.repo_url: Optional[str] = None - self.parent_owner_name = parent_owner_name - - -class GithubScopeEnvironmentData(EnvironmentData): - """The github scope connector's environment data. - - All required parameters must be populated in order to send to server. - - :ivar environment_type: The type of the environment data. Required. Known values are: - "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", - "DockerHubOrganization", and "JFrogArtifactory". - :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType - """ - - _validation = { - "environment_type": {"required": True}, - } - - _attribute_map = { - "environment_type": {"key": "environmentType", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.environment_type: str = "GithubScope" - - -class GitLabGroup(ProxyResource): - """GitLab Group resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Metadata pertaining to creation and last modification of the resource. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar properties: GitLab Group properties. - :vartype properties: ~azure.mgmt.security.models.GitLabGroupProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "properties": {"key": "properties", "type": "GitLabGroupProperties"}, - } - - def __init__(self, *, properties: Optional["_models.GitLabGroupProperties"] = None, **kwargs: Any) -> None: - """ - :keyword properties: GitLab Group properties. - :paramtype properties: ~azure.mgmt.security.models.GitLabGroupProperties - """ - super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.properties = properties - - -class GitLabGroupConfiguration(_serialization.Model): - """GitLab Group Inventory Configuration. - - :ivar auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and - "NotApplicable". - :vartype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :ivar project_configs: GitLab Project Inventory Configuration. Dictionary of GitLab - fully-qualified project name to desired project configuration. If AutoDiscovery is Enabled, - this field should be null or empty. - :vartype project_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] - """ - - _attribute_map = { - "auto_discovery": {"key": "autoDiscovery", "type": "str"}, - "project_configs": {"key": "projectConfigs", "type": "{BaseResourceConfiguration}"}, - } - - def __init__( - self, - *, - auto_discovery: Optional[Union[str, "_models.AutoDiscovery"]] = None, - project_configs: Optional[dict[str, "_models.BaseResourceConfiguration"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword auto_discovery: AutoDiscovery states. Known values are: "Disabled", "Enabled", and - "NotApplicable". - :paramtype auto_discovery: str or ~azure.mgmt.security.models.AutoDiscovery - :keyword project_configs: GitLab Project Inventory Configuration. Dictionary of GitLab - fully-qualified project name to desired project configuration. If AutoDiscovery is Enabled, - this field should be null or empty. - :paramtype project_configs: dict[str, ~azure.mgmt.security.models.BaseResourceConfiguration] - """ - super().__init__(**kwargs) - self.auto_discovery = auto_discovery - self.project_configs = project_configs - - -class GitLabGroupListResponse(_serialization.Model): - """List of RP resources which supports pagination. - - :ivar value: Gets or sets list of resources. - :vartype value: list[~azure.mgmt.security.models.GitLabGroup] - :ivar next_link: Gets or sets next link to scroll over the results. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[GitLabGroup]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[list["_models.GitLabGroup"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Gets or sets list of resources. - :paramtype value: list[~azure.mgmt.security.models.GitLabGroup] - :keyword next_link: Gets or sets next link to scroll over the results. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class GitLabGroupProperties(_serialization.Model): - """GitLab Group properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provisioning_status_message: Gets the resource status message. - :vartype provisioning_status_message: str - :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. - :vartype provisioning_status_update_time_utc: ~datetime.datetime - :ivar provisioning_state: The provisioning state of the resource. - - Pending - Provisioning pending. - Failed - Provisioning failed. - Succeeded - Successful provisioning. - Canceled - Provisioning canceled. - PendingDeletion - Deletion pending. - DeletionSuccess - Deletion successful. - DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", - "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". - :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState - :ivar fully_qualified_name: Gets or sets the fully-qualified name of the Group object. - - This contains the entire namespace hierarchy where namespaces are separated by the '$' - character. - :vartype fully_qualified_name: str - :ivar fully_qualified_friendly_name: Gets or sets the human readable fully-qualified name of - the Group object. - - This contains the entire namespace hierarchy as seen on GitLab UI where namespaces are - separated by the '/' character. - :vartype fully_qualified_friendly_name: str - :ivar url: Gets or sets the url of the GitLab Group. - :vartype url: str - :ivar onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - """ - - _validation = { - "provisioning_status_message": {"readonly": True}, - "provisioning_status_update_time_utc": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "fully_qualified_name": {"readonly": True}, - "fully_qualified_friendly_name": {"readonly": True}, - "url": {"readonly": True}, - } - - _attribute_map = { - "provisioning_status_message": {"key": "provisioningStatusMessage", "type": "str"}, - "provisioning_status_update_time_utc": {"key": "provisioningStatusUpdateTimeUtc", "type": "iso-8601"}, - "provisioning_state": {"key": "provisioningState", "type": "str"}, - "fully_qualified_name": {"key": "fullyQualifiedName", "type": "str"}, - "fully_qualified_friendly_name": {"key": "fullyQualifiedFriendlyName", "type": "str"}, - "url": {"key": "url", "type": "str"}, - "onboarding_state": {"key": "onboardingState", "type": "str"}, - } - - def __init__( - self, *, onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, **kwargs: Any - ) -> None: - """ - :keyword onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :paramtype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - """ - super().__init__(**kwargs) - self.provisioning_status_message: Optional[str] = None - self.provisioning_status_update_time_utc: Optional[datetime.datetime] = None - self.provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = None - self.fully_qualified_name: Optional[str] = None - self.fully_qualified_friendly_name: Optional[str] = None - self.url: Optional[str] = None - self.onboarding_state = onboarding_state - - -class GitLabProject(ProxyResource): - """GitLab Project resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Metadata pertaining to creation and last modification of the resource. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar properties: GitLab Project properties. - :vartype properties: ~azure.mgmt.security.models.GitLabProjectProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "properties": {"key": "properties", "type": "GitLabProjectProperties"}, - } - - def __init__(self, *, properties: Optional["_models.GitLabProjectProperties"] = None, **kwargs: Any) -> None: - """ - :keyword properties: GitLab Project properties. - :paramtype properties: ~azure.mgmt.security.models.GitLabProjectProperties - """ - super().__init__(**kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.properties = properties - - -class GitLabProjectListResponse(_serialization.Model): - """List of RP resources which supports pagination. - - :ivar value: Gets or sets list of resources. - :vartype value: list[~azure.mgmt.security.models.GitLabProject] - :ivar next_link: Gets or sets next link to scroll over the results. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[GitLabProject]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[list["_models.GitLabProject"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Gets or sets list of resources. - :paramtype value: list[~azure.mgmt.security.models.GitLabProject] - :keyword next_link: Gets or sets next link to scroll over the results. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class GitLabProjectProperties(_serialization.Model): - """GitLab Project properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provisioning_status_message: Gets the resource status message. - :vartype provisioning_status_message: str - :ivar provisioning_status_update_time_utc: Gets the time when resource was last checked. - :vartype provisioning_status_update_time_utc: ~datetime.datetime - :ivar provisioning_state: The provisioning state of the resource. - - Pending - Provisioning pending. - Failed - Provisioning failed. - Succeeded - Successful provisioning. - Canceled - Provisioning canceled. - PendingDeletion - Deletion pending. - DeletionSuccess - Deletion successful. - DeletionFailure - Deletion failure. Known values are: "Succeeded", "Failed", "Canceled", - "Pending", "PendingDeletion", "DeletionSuccess", and "DeletionFailure". - :vartype provisioning_state: str or ~azure.mgmt.security.models.DevOpsProvisioningState - :ivar fully_qualified_name: Gets or sets the fully-qualified name of the project object. - - This contains the entire hierarchy where entities are separated by the '$' character. - :vartype fully_qualified_name: str - :ivar fully_qualified_friendly_name: Gets or sets the human readable fully-qualified name of - the Project object. - - This contains the entire namespace hierarchy as seen on GitLab UI where entities are separated - by the '/' character. - :vartype fully_qualified_friendly_name: str - :ivar fully_qualified_parent_group_name: Gets or sets the fully-qualified name of the project's - parent group object. - - This contains the entire hierarchy where namespaces are separated by the '$' character. - :vartype fully_qualified_parent_group_name: str - :ivar url: Gets or sets the url of the GitLab Project. - :vartype url: str - :ivar onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :vartype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - """ - - _validation = { - "provisioning_status_message": {"readonly": True}, - "provisioning_status_update_time_utc": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "fully_qualified_name": {"readonly": True}, - "fully_qualified_friendly_name": {"readonly": True}, - "fully_qualified_parent_group_name": {"readonly": True}, - "url": {"readonly": True}, - } - - _attribute_map = { - "provisioning_status_message": {"key": "provisioningStatusMessage", "type": "str"}, - "provisioning_status_update_time_utc": {"key": "provisioningStatusUpdateTimeUtc", "type": "iso-8601"}, - "provisioning_state": {"key": "provisioningState", "type": "str"}, - "fully_qualified_name": {"key": "fullyQualifiedName", "type": "str"}, - "fully_qualified_friendly_name": {"key": "fullyQualifiedFriendlyName", "type": "str"}, - "fully_qualified_parent_group_name": {"key": "fullyQualifiedParentGroupName", "type": "str"}, - "url": {"key": "url", "type": "str"}, - "onboarding_state": {"key": "onboardingState", "type": "str"}, - } - - def __init__( - self, *, onboarding_state: Optional[Union[str, "_models.OnboardingState"]] = None, **kwargs: Any - ) -> None: - """ - :keyword onboarding_state: Details about resource onboarding status across all connectors. - - OnboardedByOtherConnector - this resource has already been onboarded to another connector. This - is only applicable to top-level resources. - Onboarded - this resource has already been onboarded by the specified connector. - NotOnboarded - this resource has not been onboarded to any connector. - NotApplicable - the onboarding state is not applicable to the current endpoint. Known values - are: "NotApplicable", "OnboardedByOtherConnector", "Onboarded", and "NotOnboarded". - :paramtype onboarding_state: str or ~azure.mgmt.security.models.OnboardingState - """ - super().__init__(**kwargs) - self.provisioning_status_message: Optional[str] = None - self.provisioning_status_update_time_utc: Optional[datetime.datetime] = None - self.provisioning_state: Optional[Union[str, "_models.DevOpsProvisioningState"]] = None - self.fully_qualified_name: Optional[str] = None - self.fully_qualified_friendly_name: Optional[str] = None - self.fully_qualified_parent_group_name: Optional[str] = None - self.url: Optional[str] = None - self.onboarding_state = onboarding_state - - -class GitlabScopeEnvironmentData(EnvironmentData): - """The GitLab scope connector's environment data. - - All required parameters must be populated in order to send to server. - - :ivar environment_type: The type of the environment data. Required. Known values are: - "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", - "DockerHubOrganization", and "JFrogArtifactory". - :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType - """ - - _validation = { - "environment_type": {"required": True}, - } - - _attribute_map = { - "environment_type": {"key": "environmentType", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.environment_type: str = "GitlabScope" - - -class GovernanceAssignment(Resource): - """Governance assignment over a given scope. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar owner: The Owner for the governance assignment - e.g. user@contoso.com - see example. - :vartype owner: str - :ivar remediation_due_date: The remediation due-date - after this date Secure Score will be - affected (in case of active grace-period). - :vartype remediation_due_date: ~datetime.datetime - :ivar remediation_eta: The ETA (estimated time of arrival) for remediation (optional), see - example. - :vartype remediation_eta: ~azure.mgmt.security.models.RemediationEta - :ivar is_grace_period: Defines whether there is a grace period on the governance assignment. - :vartype is_grace_period: bool - :ivar governance_email_notification: The email notifications settings for the governance rule, - states whether to disable notifications for mangers and owners. - :vartype governance_email_notification: ~azure.mgmt.security.models.GovernanceEmailNotification - :ivar additional_data: The additional data for the governance assignment - e.g. links to ticket - (optional), see example. - :vartype additional_data: ~azure.mgmt.security.models.GovernanceAssignmentAdditionalData - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "owner": {"key": "properties.owner", "type": "str"}, - "remediation_due_date": {"key": "properties.remediationDueDate", "type": "iso-8601"}, - "remediation_eta": {"key": "properties.remediationEta", "type": "RemediationEta"}, - "is_grace_period": {"key": "properties.isGracePeriod", "type": "bool"}, - "governance_email_notification": { - "key": "properties.governanceEmailNotification", - "type": "GovernanceEmailNotification", - }, - "additional_data": {"key": "properties.additionalData", "type": "GovernanceAssignmentAdditionalData"}, - } - - def __init__( - self, - *, - owner: Optional[str] = None, - remediation_due_date: Optional[datetime.datetime] = None, - remediation_eta: Optional["_models.RemediationEta"] = None, - is_grace_period: Optional[bool] = None, - governance_email_notification: Optional["_models.GovernanceEmailNotification"] = None, - additional_data: Optional["_models.GovernanceAssignmentAdditionalData"] = None, - **kwargs: Any - ) -> None: - """ - :keyword owner: The Owner for the governance assignment - e.g. user@contoso.com - see example. - :paramtype owner: str - :keyword remediation_due_date: The remediation due-date - after this date Secure Score will be - affected (in case of active grace-period). - :paramtype remediation_due_date: ~datetime.datetime - :keyword remediation_eta: The ETA (estimated time of arrival) for remediation (optional), see - example. - :paramtype remediation_eta: ~azure.mgmt.security.models.RemediationEta - :keyword is_grace_period: Defines whether there is a grace period on the governance assignment. - :paramtype is_grace_period: bool - :keyword governance_email_notification: The email notifications settings for the governance - rule, states whether to disable notifications for mangers and owners. - :paramtype governance_email_notification: - ~azure.mgmt.security.models.GovernanceEmailNotification - :keyword additional_data: The additional data for the governance assignment - e.g. links to - ticket (optional), see example. - :paramtype additional_data: ~azure.mgmt.security.models.GovernanceAssignmentAdditionalData - """ - super().__init__(**kwargs) - self.owner = owner - self.remediation_due_date = remediation_due_date - self.remediation_eta = remediation_eta - self.is_grace_period = is_grace_period - self.governance_email_notification = governance_email_notification - self.additional_data = additional_data - - -class GovernanceAssignmentAdditionalData(_serialization.Model): - """Describe the additional data of governance assignment - optional. - - :ivar ticket_number: Ticket number associated with this governance assignment. - :vartype ticket_number: int - :ivar ticket_link: Ticket link associated with this governance assignment - for example: - https://snow.com. - :vartype ticket_link: str - :ivar ticket_status: The ticket status associated with this governance assignment - for - example: Active. - :vartype ticket_status: str - """ - - _validation = { - "ticket_number": {"minimum": 0}, - } - - _attribute_map = { - "ticket_number": {"key": "ticketNumber", "type": "int"}, - "ticket_link": {"key": "ticketLink", "type": "str"}, - "ticket_status": {"key": "ticketStatus", "type": "str"}, - } - - def __init__( - self, - *, - ticket_number: Optional[int] = None, - ticket_link: Optional[str] = None, - ticket_status: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword ticket_number: Ticket number associated with this governance assignment. - :paramtype ticket_number: int - :keyword ticket_link: Ticket link associated with this governance assignment - for example: - https://snow.com. - :paramtype ticket_link: str - :keyword ticket_status: The ticket status associated with this governance assignment - for - example: Active. - :paramtype ticket_status: str - """ - super().__init__(**kwargs) - self.ticket_number = ticket_number - self.ticket_link = ticket_link - self.ticket_status = ticket_status - - -class GovernanceAssignmentsList(_serialization.Model): - """Page of a governance assignments list. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Collection of governance assignments in this page. - :vartype value: list[~azure.mgmt.security.models.GovernanceAssignment] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[GovernanceAssignment]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.GovernanceAssignment"]] = None - self.next_link: Optional[str] = None - - -class GovernanceEmailNotification(_serialization.Model): - """The governance email weekly notification configuration. - - :ivar disable_manager_email_notification: Exclude manager from weekly email notification. - :vartype disable_manager_email_notification: bool - :ivar disable_owner_email_notification: Exclude owner from weekly email notification. - :vartype disable_owner_email_notification: bool - """ - - _attribute_map = { - "disable_manager_email_notification": {"key": "disableManagerEmailNotification", "type": "bool"}, - "disable_owner_email_notification": {"key": "disableOwnerEmailNotification", "type": "bool"}, - } - - def __init__( - self, - *, - disable_manager_email_notification: Optional[bool] = None, - disable_owner_email_notification: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword disable_manager_email_notification: Exclude manager from weekly email notification. - :paramtype disable_manager_email_notification: bool - :keyword disable_owner_email_notification: Exclude owner from weekly email notification. - :paramtype disable_owner_email_notification: bool - """ - super().__init__(**kwargs) - self.disable_manager_email_notification = disable_manager_email_notification - self.disable_owner_email_notification = disable_owner_email_notification - - -class GovernanceRule(Resource): - """Governance rule over a given scope. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar tenant_id: The tenantId (GUID). - :vartype tenant_id: str - :ivar display_name: Display name of the governance rule. - :vartype display_name: str - :ivar description: Description of the governance rule. - :vartype description: str - :ivar remediation_timeframe: Governance rule remediation timeframe - this is the time that will - affect on the grace-period duration e.g. 7.00:00:00 - means 7 days. - :vartype remediation_timeframe: str - :ivar is_grace_period: Defines whether there is a grace period on the governance rule. - :vartype is_grace_period: bool - :ivar rule_priority: The governance rule priority, priority to the lower number. Rules with the - same priority on the same scope will not be allowed. - :vartype rule_priority: int - :ivar is_disabled: Defines whether the rule is active/inactive. - :vartype is_disabled: bool - :ivar rule_type: The rule type of the governance rule, defines the source of the rule e.g. - Integrated. Known values are: "Integrated" and "ServiceNow". - :vartype rule_type: str or ~azure.mgmt.security.models.GovernanceRuleType - :ivar source_resource_type: The governance rule source, what the rule affects, e.g. - Assessments. "Assessments" - :vartype source_resource_type: str or - ~azure.mgmt.security.models.GovernanceRuleSourceResourceType - :ivar excluded_scopes: Excluded scopes, filter out the descendants of the scope (on management - scopes). - :vartype excluded_scopes: list[str] - :ivar condition_sets: The governance rule conditionSets - see examples. - :vartype condition_sets: list[JSON] - :ivar include_member_scopes: Defines whether the rule is management scope rule (master - connector as a single scope or management scope). - :vartype include_member_scopes: bool - :ivar owner_source: The owner source for the governance rule - e.g. Manually by - user@contoso.com - see example. - :vartype owner_source: ~azure.mgmt.security.models.GovernanceRuleOwnerSource - :ivar governance_email_notification: The email notifications settings for the governance rule, - states whether to disable notifications for mangers and owners. - :vartype governance_email_notification: - ~azure.mgmt.security.models.GovernanceRuleEmailNotification - :ivar metadata: The governance rule metadata. - :vartype metadata: ~azure.mgmt.security.models.GovernanceRuleMetadata - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "tenant_id": {"readonly": True}, - "remediation_timeframe": {"pattern": r"^[0-9]+\.[0-9]{2}:[0-9]{2}:[0-9]{2}$"}, - "rule_priority": {"maximum": 1000, "minimum": 0}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "tenant_id": {"key": "properties.tenantId", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "remediation_timeframe": {"key": "properties.remediationTimeframe", "type": "str"}, - "is_grace_period": {"key": "properties.isGracePeriod", "type": "bool"}, - "rule_priority": {"key": "properties.rulePriority", "type": "int"}, - "is_disabled": {"key": "properties.isDisabled", "type": "bool"}, - "rule_type": {"key": "properties.ruleType", "type": "str"}, - "source_resource_type": {"key": "properties.sourceResourceType", "type": "str"}, - "excluded_scopes": {"key": "properties.excludedScopes", "type": "[str]"}, - "condition_sets": {"key": "properties.conditionSets", "type": "[object]"}, - "include_member_scopes": {"key": "properties.includeMemberScopes", "type": "bool"}, - "owner_source": {"key": "properties.ownerSource", "type": "GovernanceRuleOwnerSource"}, - "governance_email_notification": { - "key": "properties.governanceEmailNotification", - "type": "GovernanceRuleEmailNotification", - }, - "metadata": {"key": "properties.metadata", "type": "GovernanceRuleMetadata"}, - } - - def __init__( - self, - *, - display_name: Optional[str] = None, - description: Optional[str] = None, - remediation_timeframe: Optional[str] = None, - is_grace_period: Optional[bool] = None, - rule_priority: Optional[int] = None, - is_disabled: Optional[bool] = None, - rule_type: Optional[Union[str, "_models.GovernanceRuleType"]] = None, - source_resource_type: Optional[Union[str, "_models.GovernanceRuleSourceResourceType"]] = None, - excluded_scopes: Optional[list[str]] = None, - condition_sets: Optional[list[JSON]] = None, - include_member_scopes: Optional[bool] = None, - owner_source: Optional["_models.GovernanceRuleOwnerSource"] = None, - governance_email_notification: Optional["_models.GovernanceRuleEmailNotification"] = None, - metadata: Optional["_models.GovernanceRuleMetadata"] = None, - **kwargs: Any - ) -> None: - """ - :keyword display_name: Display name of the governance rule. - :paramtype display_name: str - :keyword description: Description of the governance rule. - :paramtype description: str - :keyword remediation_timeframe: Governance rule remediation timeframe - this is the time that - will affect on the grace-period duration e.g. 7.00:00:00 - means 7 days. - :paramtype remediation_timeframe: str - :keyword is_grace_period: Defines whether there is a grace period on the governance rule. - :paramtype is_grace_period: bool - :keyword rule_priority: The governance rule priority, priority to the lower number. Rules with - the same priority on the same scope will not be allowed. - :paramtype rule_priority: int - :keyword is_disabled: Defines whether the rule is active/inactive. - :paramtype is_disabled: bool - :keyword rule_type: The rule type of the governance rule, defines the source of the rule e.g. - Integrated. Known values are: "Integrated" and "ServiceNow". - :paramtype rule_type: str or ~azure.mgmt.security.models.GovernanceRuleType - :keyword source_resource_type: The governance rule source, what the rule affects, e.g. - Assessments. "Assessments" - :paramtype source_resource_type: str or - ~azure.mgmt.security.models.GovernanceRuleSourceResourceType - :keyword excluded_scopes: Excluded scopes, filter out the descendants of the scope (on - management scopes). - :paramtype excluded_scopes: list[str] - :keyword condition_sets: The governance rule conditionSets - see examples. - :paramtype condition_sets: list[JSON] - :keyword include_member_scopes: Defines whether the rule is management scope rule (master - connector as a single scope or management scope). - :paramtype include_member_scopes: bool - :keyword owner_source: The owner source for the governance rule - e.g. Manually by - user@contoso.com - see example. - :paramtype owner_source: ~azure.mgmt.security.models.GovernanceRuleOwnerSource - :keyword governance_email_notification: The email notifications settings for the governance - rule, states whether to disable notifications for mangers and owners. - :paramtype governance_email_notification: - ~azure.mgmt.security.models.GovernanceRuleEmailNotification - :keyword metadata: The governance rule metadata. - :paramtype metadata: ~azure.mgmt.security.models.GovernanceRuleMetadata - """ - super().__init__(**kwargs) - self.tenant_id: Optional[str] = None - self.display_name = display_name - self.description = description - self.remediation_timeframe = remediation_timeframe - self.is_grace_period = is_grace_period - self.rule_priority = rule_priority - self.is_disabled = is_disabled - self.rule_type = rule_type - self.source_resource_type = source_resource_type - self.excluded_scopes = excluded_scopes - self.condition_sets = condition_sets - self.include_member_scopes = include_member_scopes - self.owner_source = owner_source - self.governance_email_notification = governance_email_notification - self.metadata = metadata - - -class GovernanceRuleEmailNotification(_serialization.Model): - """The governance email weekly notification configuration. - - :ivar disable_manager_email_notification: Defines whether manager email notifications are - disabled. - :vartype disable_manager_email_notification: bool - :ivar disable_owner_email_notification: Defines whether owner email notifications are disabled. - :vartype disable_owner_email_notification: bool - """ - - _attribute_map = { - "disable_manager_email_notification": {"key": "disableManagerEmailNotification", "type": "bool"}, - "disable_owner_email_notification": {"key": "disableOwnerEmailNotification", "type": "bool"}, - } - - def __init__( - self, - *, - disable_manager_email_notification: Optional[bool] = None, - disable_owner_email_notification: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword disable_manager_email_notification: Defines whether manager email notifications are - disabled. - :paramtype disable_manager_email_notification: bool - :keyword disable_owner_email_notification: Defines whether owner email notifications are - disabled. - :paramtype disable_owner_email_notification: bool - """ - super().__init__(**kwargs) - self.disable_manager_email_notification = disable_manager_email_notification - self.disable_owner_email_notification = disable_owner_email_notification - - -class GovernanceRuleList(_serialization.Model): - """Page of a governance rules list. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Collection of governance rules in this page. - :vartype value: list[~azure.mgmt.security.models.GovernanceRule] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[GovernanceRule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.GovernanceRule"]] = None - self.next_link: Optional[str] = None - - -class GovernanceRuleMetadata(_serialization.Model): - """The governance rule metadata. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar created_by: Governance rule Created by object id (GUID). - :vartype created_by: str - :ivar created_on: Governance rule creation date. - :vartype created_on: ~datetime.datetime - :ivar updated_by: Governance rule last updated by object id (GUID). - :vartype updated_by: str - :ivar updated_on: Governance rule last update date. - :vartype updated_on: ~datetime.datetime - """ - - _validation = { - "created_by": {"readonly": True}, - "created_on": {"readonly": True}, - "updated_by": {"readonly": True}, - "updated_on": {"readonly": True}, - } - - _attribute_map = { - "created_by": {"key": "createdBy", "type": "str"}, - "created_on": {"key": "createdOn", "type": "iso-8601"}, - "updated_by": {"key": "updatedBy", "type": "str"}, - "updated_on": {"key": "updatedOn", "type": "iso-8601"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.created_by: Optional[str] = None - self.created_on: Optional[datetime.datetime] = None - self.updated_by: Optional[str] = None - self.updated_on: Optional[datetime.datetime] = None - - -class GovernanceRuleOwnerSource(_serialization.Model): - """Describe the owner source of governance rule. - - :ivar type: The owner type for the governance rule owner source. Known values are: "ByTag" and - "Manually". - :vartype type: str or ~azure.mgmt.security.models.GovernanceRuleOwnerSourceType - :ivar value: The source value e.g. tag key like owner name or email address. - :vartype value: str - """ - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - "value": {"key": "value", "type": "str"}, - } - - def __init__( - self, - *, - type: Optional[Union[str, "_models.GovernanceRuleOwnerSourceType"]] = None, - value: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword type: The owner type for the governance rule owner source. Known values are: "ByTag" - and "Manually". - :paramtype type: str or ~azure.mgmt.security.models.GovernanceRuleOwnerSourceType - :keyword value: The source value e.g. tag key like owner name or email address. - :paramtype value: str - """ - super().__init__(**kwargs) - self.type = type - self.value = value - - -class HealthDataClassification(_serialization.Model): - """The classification of the health report. - - :ivar component: The component describes the name of the agent/service that scans the issue. - :vartype component: str - :ivar scenario: The scenario describes the health scenario issue of the component. - :vartype scenario: str - :ivar scope: The resource scope of the health report. - :vartype scope: str - """ - - _attribute_map = { - "component": {"key": "component", "type": "str"}, - "scenario": {"key": "scenario", "type": "str"}, - "scope": {"key": "scope", "type": "str"}, - } - - def __init__( - self, - *, - component: Optional[str] = None, - scenario: Optional[str] = None, - scope: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword component: The component describes the name of the agent/service that scans the issue. - :paramtype component: str - :keyword scenario: The scenario describes the health scenario issue of the component. - :paramtype scenario: str - :keyword scope: The resource scope of the health report. - :paramtype scope: str - """ - super().__init__(**kwargs) - self.component = component - self.scenario = scenario - self.scope = scope - - -class HealthReport(Resource): - """The health report resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar resource_details: The resource details of the health report. - :vartype resource_details: ~azure.mgmt.security.models.ResourceDetailsAutoGenerated - :ivar environment_details: The environment details of the resource. - :vartype environment_details: ~azure.mgmt.security.models.EnvironmentDetails - :ivar health_data_classification: The classification of the health report. - :vartype health_data_classification: ~azure.mgmt.security.models.HealthDataClassification - :ivar status: The status of the health report. - :vartype status: ~azure.mgmt.security.models.StatusAutoGenerated - :ivar affected_defenders_plans: The affected defenders plans by unhealthy report. - :vartype affected_defenders_plans: list[str] - :ivar affected_defenders_sub_plans: The affected defenders sub plans by unhealthy report. - :vartype affected_defenders_sub_plans: list[str] - :ivar report_additional_data: Additional data for the given health report, this field can - include more details on the resource and the health scenario. - :vartype report_additional_data: dict[str, str] - :ivar issues: A collection of the issues in the report. - :vartype issues: list[~azure.mgmt.security.models.Issue] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "report_additional_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "resource_details": {"key": "properties.resourceDetails", "type": "ResourceDetailsAutoGenerated"}, - "environment_details": {"key": "properties.environmentDetails", "type": "EnvironmentDetails"}, - "health_data_classification": { - "key": "properties.healthDataClassification", - "type": "HealthDataClassification", - }, - "status": {"key": "properties.status", "type": "StatusAutoGenerated"}, - "affected_defenders_plans": {"key": "properties.affectedDefendersPlans", "type": "[str]"}, - "affected_defenders_sub_plans": {"key": "properties.affectedDefendersSubPlans", "type": "[str]"}, - "report_additional_data": {"key": "properties.reportAdditionalData", "type": "{str}"}, - "issues": {"key": "properties.issues", "type": "[Issue]"}, - } - - def __init__( - self, - *, - resource_details: Optional["_models.ResourceDetailsAutoGenerated"] = None, - environment_details: Optional["_models.EnvironmentDetails"] = None, - health_data_classification: Optional["_models.HealthDataClassification"] = None, - status: Optional["_models.StatusAutoGenerated"] = None, - affected_defenders_plans: Optional[list[str]] = None, - affected_defenders_sub_plans: Optional[list[str]] = None, - issues: Optional[list["_models.Issue"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword resource_details: The resource details of the health report. - :paramtype resource_details: ~azure.mgmt.security.models.ResourceDetailsAutoGenerated - :keyword environment_details: The environment details of the resource. - :paramtype environment_details: ~azure.mgmt.security.models.EnvironmentDetails - :keyword health_data_classification: The classification of the health report. - :paramtype health_data_classification: ~azure.mgmt.security.models.HealthDataClassification - :keyword status: The status of the health report. - :paramtype status: ~azure.mgmt.security.models.StatusAutoGenerated - :keyword affected_defenders_plans: The affected defenders plans by unhealthy report. - :paramtype affected_defenders_plans: list[str] - :keyword affected_defenders_sub_plans: The affected defenders sub plans by unhealthy report. - :paramtype affected_defenders_sub_plans: list[str] - :keyword issues: A collection of the issues in the report. - :paramtype issues: list[~azure.mgmt.security.models.Issue] - """ - super().__init__(**kwargs) - self.resource_details = resource_details - self.environment_details = environment_details - self.health_data_classification = health_data_classification - self.status = status - self.affected_defenders_plans = affected_defenders_plans - self.affected_defenders_sub_plans = affected_defenders_sub_plans - self.report_additional_data: Optional[dict[str, str]] = None - self.issues = issues - - -class HealthReportsList(_serialization.Model): - """Page of health reports list. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Collection of health reports in this page. - :vartype value: list[~azure.mgmt.security.models.HealthReport] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[HealthReport]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.HealthReport"]] = None - self.next_link: Optional[str] = None - - -class HttpC2DMessagesNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of cloud to device messages (HTTP protocol) is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "HttpC2DMessagesNotInAllowedRange" - - -class HttpC2DRejectedMessagesNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of rejected cloud to device messages (HTTP protocol) is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "HttpC2DRejectedMessagesNotInAllowedRange" - - -class HttpD2CMessagesNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of device to cloud messages (HTTP protocol) is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "HttpD2CMessagesNotInAllowedRange" - - -class Identity(_serialization.Model): - """Identity for the resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar principal_id: The principal ID of resource identity. - :vartype principal_id: str - :ivar tenant_id: The tenant ID of resource. - :vartype tenant_id: str - :ivar type: The identity type. Default value is "SystemAssigned". - :vartype type: str - """ - - _validation = { - "principal_id": {"readonly": True}, - "tenant_id": {"readonly": True}, - } - - _attribute_map = { - "principal_id": {"key": "principalId", "type": "str"}, - "tenant_id": {"key": "tenantId", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, *, type: Optional[Literal["SystemAssigned"]] = None, **kwargs: Any) -> None: - """ - :keyword type: The identity type. Default value is "SystemAssigned". - :paramtype type: str - """ - super().__init__(**kwargs) - self.principal_id: Optional[str] = None - self.tenant_id: Optional[str] = None - self.type = type - - -class InformationProtectionKeyword(_serialization.Model): - """The information type keyword. - - :ivar pattern: The keyword pattern. - :vartype pattern: str - :ivar custom: Indicates whether the keyword is custom or not. - :vartype custom: bool - :ivar can_be_numeric: Indicates whether the keyword can be applied on numeric types or not. - :vartype can_be_numeric: bool - :ivar excluded: Indicates whether the keyword is excluded or not. - :vartype excluded: bool - """ - - _attribute_map = { - "pattern": {"key": "pattern", "type": "str"}, - "custom": {"key": "custom", "type": "bool"}, - "can_be_numeric": {"key": "canBeNumeric", "type": "bool"}, - "excluded": {"key": "excluded", "type": "bool"}, - } - - def __init__( - self, - *, - pattern: Optional[str] = None, - custom: Optional[bool] = None, - can_be_numeric: Optional[bool] = None, - excluded: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword pattern: The keyword pattern. - :paramtype pattern: str - :keyword custom: Indicates whether the keyword is custom or not. - :paramtype custom: bool - :keyword can_be_numeric: Indicates whether the keyword can be applied on numeric types or not. - :paramtype can_be_numeric: bool - :keyword excluded: Indicates whether the keyword is excluded or not. - :paramtype excluded: bool - """ - super().__init__(**kwargs) - self.pattern = pattern - self.custom = custom - self.can_be_numeric = can_be_numeric - self.excluded = excluded - - -class InformationProtectionPolicy(Resource): - """Information protection policy. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar last_modified_utc: Describes the last UTC time the policy was modified. - :vartype last_modified_utc: ~datetime.datetime - :ivar version: Describes the version of the policy. - :vartype version: str - :ivar labels: Dictionary of sensitivity labels. - :vartype labels: dict[str, ~azure.mgmt.security.models.SensitivityLabel] - :ivar information_types: The sensitivity information types. - :vartype information_types: dict[str, ~azure.mgmt.security.models.InformationType] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "last_modified_utc": {"readonly": True}, - "version": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "last_modified_utc": {"key": "properties.lastModifiedUtc", "type": "iso-8601"}, - "version": {"key": "properties.version", "type": "str"}, - "labels": {"key": "properties.labels", "type": "{SensitivityLabel}"}, - "information_types": {"key": "properties.informationTypes", "type": "{InformationType}"}, - } - - def __init__( - self, - *, - labels: Optional[dict[str, "_models.SensitivityLabel"]] = None, - information_types: Optional[dict[str, "_models.InformationType"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword labels: Dictionary of sensitivity labels. - :paramtype labels: dict[str, ~azure.mgmt.security.models.SensitivityLabel] - :keyword information_types: The sensitivity information types. - :paramtype information_types: dict[str, ~azure.mgmt.security.models.InformationType] - """ - super().__init__(**kwargs) - self.last_modified_utc: Optional[datetime.datetime] = None - self.version: Optional[str] = None - self.labels = labels - self.information_types = information_types - - -class InformationProtectionPolicyList(_serialization.Model): - """Information protection policies response. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of information protection policies. - :vartype value: list[~azure.mgmt.security.models.InformationProtectionPolicy] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[InformationProtectionPolicy]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[list["_models.InformationProtectionPolicy"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of information protection policies. - :paramtype value: list[~azure.mgmt.security.models.InformationProtectionPolicy] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class InformationType(_serialization.Model): - """The information type. - - :ivar display_name: The name of the information type. - :vartype display_name: str - :ivar description: The description of the information type. - :vartype description: str - :ivar order: The order of the information type. - :vartype order: int - :ivar recommended_label_id: The recommended label id to be associated with this information - type. - :vartype recommended_label_id: str - :ivar enabled: Indicates whether the information type is enabled or not. - :vartype enabled: bool - :ivar custom: Indicates whether the information type is custom or not. - :vartype custom: bool - :ivar keywords: The information type keywords. - :vartype keywords: list[~azure.mgmt.security.models.InformationProtectionKeyword] - """ - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "order": {"key": "order", "type": "int"}, - "recommended_label_id": {"key": "recommendedLabelId", "type": "str"}, - "enabled": {"key": "enabled", "type": "bool"}, - "custom": {"key": "custom", "type": "bool"}, - "keywords": {"key": "keywords", "type": "[InformationProtectionKeyword]"}, - } - - def __init__( - self, - *, - display_name: Optional[str] = None, - description: Optional[str] = None, - order: Optional[int] = None, - recommended_label_id: Optional[str] = None, - enabled: Optional[bool] = None, - custom: Optional[bool] = None, - keywords: Optional[list["_models.InformationProtectionKeyword"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword display_name: The name of the information type. - :paramtype display_name: str - :keyword description: The description of the information type. - :paramtype description: str - :keyword order: The order of the information type. - :paramtype order: int - :keyword recommended_label_id: The recommended label id to be associated with this information - type. - :paramtype recommended_label_id: str - :keyword enabled: Indicates whether the information type is enabled or not. - :paramtype enabled: bool - :keyword custom: Indicates whether the information type is custom or not. - :paramtype custom: bool - :keyword keywords: The information type keywords. - :paramtype keywords: list[~azure.mgmt.security.models.InformationProtectionKeyword] - """ - super().__init__(**kwargs) - self.display_name = display_name - self.description = description - self.order = order - self.recommended_label_id = recommended_label_id - self.enabled = enabled - self.custom = custom - self.keywords = keywords - - -class InfoType(_serialization.Model): - """Custom user-defined information type. - - :ivar name: Display name of the info type. - :vartype name: str - :ivar id: Id of the info type. - :vartype id: str - :ivar description: Description of the info type. - :vartype description: str - """ - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__( - self, - *, - name: Optional[str] = None, - id: Optional[str] = None, # pylint: disable=redefined-builtin - description: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Display name of the info type. - :paramtype name: str - :keyword id: Id of the info type. - :paramtype id: str - :keyword description: Description of the info type. - :paramtype description: str - """ - super().__init__(**kwargs) - self.name = name - self.id = id - self.description = description - - -class InventoryList(_serialization.Model): - """Model for inventory to be included or excluded from Agentless. - - :ivar inventory_kind: Types for inventory kind. Known values are: "AzureDevOpsOrganization", - "AzureDevOpsProject", "AzureDevOpsRepository", "GitHubOwner", and "GitHubRepository". - :vartype inventory_kind: str or ~azure.mgmt.security.models.InventoryKind - :ivar value: Gets or sets the value for inventory type. - :vartype value: str - """ - - _attribute_map = { - "inventory_kind": {"key": "inventoryKind", "type": "str"}, - "value": {"key": "value", "type": "str"}, - } - - def __init__( - self, - *, - inventory_kind: Optional[Union[str, "_models.InventoryKind"]] = None, - value: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword inventory_kind: Types for inventory kind. Known values are: "AzureDevOpsOrganization", - "AzureDevOpsProject", "AzureDevOpsRepository", "GitHubOwner", and "GitHubRepository". - :paramtype inventory_kind: str or ~azure.mgmt.security.models.InventoryKind - :keyword value: Gets or sets the value for inventory type. - :paramtype value: str - """ - super().__init__(**kwargs) - self.inventory_kind = inventory_kind - self.value = value - - -class TagsResource(_serialization.Model): - """A container holding only the Tags for a resource, allowing the user to update the tags. - - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, tags: Optional[dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.tags = tags - - -class IoTSecurityAggregatedAlert(Resource, TagsResource): - """Security Solution Aggregated Alert information. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar alert_type: Name of the alert type. - :vartype alert_type: str - :ivar alert_display_name: Display name of the alert type. - :vartype alert_display_name: str - :ivar aggregated_date_utc: Date of detection. - :vartype aggregated_date_utc: ~datetime.date - :ivar vendor_name: Name of the organization that raised the alert. - :vartype vendor_name: str - :ivar reported_severity: Assessed alert severity. Known values are: "Informational", "Low", - "Medium", and "High". - :vartype reported_severity: str or ~azure.mgmt.security.models.ReportedSeverity - :ivar remediation_steps: Recommended steps for remediation. - :vartype remediation_steps: str - :ivar description: Description of the suspected vulnerability and meaning. - :vartype description: str - :ivar count: Number of alerts occurrences within the aggregated time window. - :vartype count: int - :ivar effected_resource_type: Azure resource ID of the resource that received the alerts. - :vartype effected_resource_type: str - :ivar system_source: The type of the alerted resource (Azure, Non-Azure). - :vartype system_source: str - :ivar action_taken: IoT Security solution alert response. - :vartype action_taken: str - :ivar log_analytics_query: Log analytics query for getting the list of affected devices/alerts. - :vartype log_analytics_query: str - :ivar top_devices_list: 10 devices with the highest number of occurrences of this alert type, - on this day. - :vartype top_devices_list: - list[~azure.mgmt.security.models.IoTSecurityAggregatedAlertPropertiesTopDevicesListItem] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "alert_type": {"readonly": True}, - "alert_display_name": {"readonly": True}, - "aggregated_date_utc": {"readonly": True}, - "vendor_name": {"readonly": True}, - "reported_severity": {"readonly": True}, - "remediation_steps": {"readonly": True}, - "description": {"readonly": True}, - "count": {"readonly": True}, - "effected_resource_type": {"readonly": True}, - "system_source": {"readonly": True}, - "action_taken": {"readonly": True}, - "log_analytics_query": {"readonly": True}, - "top_devices_list": {"readonly": True}, - } - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "alert_type": {"key": "properties.alertType", "type": "str"}, - "alert_display_name": {"key": "properties.alertDisplayName", "type": "str"}, - "aggregated_date_utc": {"key": "properties.aggregatedDateUtc", "type": "date"}, - "vendor_name": {"key": "properties.vendorName", "type": "str"}, - "reported_severity": {"key": "properties.reportedSeverity", "type": "str"}, - "remediation_steps": {"key": "properties.remediationSteps", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "count": {"key": "properties.count", "type": "int"}, - "effected_resource_type": {"key": "properties.effectedResourceType", "type": "str"}, - "system_source": {"key": "properties.systemSource", "type": "str"}, - "action_taken": {"key": "properties.actionTaken", "type": "str"}, - "log_analytics_query": {"key": "properties.logAnalyticsQuery", "type": "str"}, - "top_devices_list": { - "key": "properties.topDevicesList", - "type": "[IoTSecurityAggregatedAlertPropertiesTopDevicesListItem]", - }, - } - - def __init__(self, *, tags: Optional[dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(tags=tags, **kwargs) - self.tags = tags - self.alert_type: Optional[str] = None - self.alert_display_name: Optional[str] = None - self.aggregated_date_utc: Optional[datetime.date] = None - self.vendor_name: Optional[str] = None - self.reported_severity: Optional[Union[str, "_models.ReportedSeverity"]] = None - self.remediation_steps: Optional[str] = None - self.description: Optional[str] = None - self.count: Optional[int] = None - self.effected_resource_type: Optional[str] = None - self.system_source: Optional[str] = None - self.action_taken: Optional[str] = None - self.log_analytics_query: Optional[str] = None - self.top_devices_list: Optional[list["_models.IoTSecurityAggregatedAlertPropertiesTopDevicesListItem"]] = None - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class IoTSecurityAggregatedAlertList(_serialization.Model): - """List of IoT Security solution aggregated alert data. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: List of aggregated alerts data. Required. - :vartype value: list[~azure.mgmt.security.models.IoTSecurityAggregatedAlert] - :ivar next_link: When there is too much alert data for one page, use this URI to fetch the next - page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[IoTSecurityAggregatedAlert]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: list["_models.IoTSecurityAggregatedAlert"], **kwargs: Any) -> None: - """ - :keyword value: List of aggregated alerts data. Required. - :paramtype value: list[~azure.mgmt.security.models.IoTSecurityAggregatedAlert] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class IoTSecurityAggregatedAlertPropertiesTopDevicesListItem(_serialization.Model): # pylint: disable=name-too-long - """IoTSecurityAggregatedAlertPropertiesTopDevicesListItem. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar device_id: Name of the device. - :vartype device_id: str - :ivar alerts_count: Number of alerts raised for this device. - :vartype alerts_count: int - :ivar last_occurrence: Most recent time this alert was raised for this device, on this day. - :vartype last_occurrence: str - """ - - _validation = { - "device_id": {"readonly": True}, - "alerts_count": {"readonly": True}, - "last_occurrence": {"readonly": True}, - } - - _attribute_map = { - "device_id": {"key": "deviceId", "type": "str"}, - "alerts_count": {"key": "alertsCount", "type": "int"}, - "last_occurrence": {"key": "lastOccurrence", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.device_id: Optional[str] = None - self.alerts_count: Optional[int] = None - self.last_occurrence: Optional[str] = None - - -class IoTSecurityAggregatedRecommendation(Resource, TagsResource): - """IoT Security solution recommendation information. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar recommendation_name: Name of the recommendation. - :vartype recommendation_name: str - :ivar recommendation_display_name: Display name of the recommendation type. - :vartype recommendation_display_name: str - :ivar description: Description of the suspected vulnerability and meaning. - :vartype description: str - :ivar recommendation_type_id: Recommendation-type GUID. - :vartype recommendation_type_id: str - :ivar detected_by: Name of the organization that made the recommendation. - :vartype detected_by: str - :ivar remediation_steps: Recommended steps for remediation. - :vartype remediation_steps: str - :ivar reported_severity: Assessed recommendation severity. Known values are: "Informational", - "Low", "Medium", and "High". - :vartype reported_severity: str or ~azure.mgmt.security.models.ReportedSeverity - :ivar healthy_devices: Number of healthy devices within the IoT Security solution. - :vartype healthy_devices: int - :ivar unhealthy_device_count: Number of unhealthy devices within the IoT Security solution. - :vartype unhealthy_device_count: int - :ivar log_analytics_query: Log analytics query for getting the list of affected devices/alerts. - :vartype log_analytics_query: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "recommendation_display_name": {"readonly": True}, - "description": {"readonly": True}, - "recommendation_type_id": {"readonly": True}, - "detected_by": {"readonly": True}, - "remediation_steps": {"readonly": True}, - "reported_severity": {"readonly": True}, - "healthy_devices": {"readonly": True}, - "unhealthy_device_count": {"readonly": True}, - "log_analytics_query": {"readonly": True}, - } - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "recommendation_name": {"key": "properties.recommendationName", "type": "str"}, - "recommendation_display_name": {"key": "properties.recommendationDisplayName", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "recommendation_type_id": {"key": "properties.recommendationTypeId", "type": "str"}, - "detected_by": {"key": "properties.detectedBy", "type": "str"}, - "remediation_steps": {"key": "properties.remediationSteps", "type": "str"}, - "reported_severity": {"key": "properties.reportedSeverity", "type": "str"}, - "healthy_devices": {"key": "properties.healthyDevices", "type": "int"}, - "unhealthy_device_count": {"key": "properties.unhealthyDeviceCount", "type": "int"}, - "log_analytics_query": {"key": "properties.logAnalyticsQuery", "type": "str"}, - } - - def __init__( - self, *, tags: Optional[dict[str, str]] = None, recommendation_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword recommendation_name: Name of the recommendation. - :paramtype recommendation_name: str - """ - super().__init__(tags=tags, **kwargs) - self.tags = tags - self.recommendation_name = recommendation_name - self.recommendation_display_name: Optional[str] = None - self.description: Optional[str] = None - self.recommendation_type_id: Optional[str] = None - self.detected_by: Optional[str] = None - self.remediation_steps: Optional[str] = None - self.reported_severity: Optional[Union[str, "_models.ReportedSeverity"]] = None - self.healthy_devices: Optional[int] = None - self.unhealthy_device_count: Optional[int] = None - self.log_analytics_query: Optional[str] = None - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class IoTSecurityAggregatedRecommendationList(_serialization.Model): - """List of IoT Security solution aggregated recommendations. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: List of aggregated recommendations data. Required. - :vartype value: list[~azure.mgmt.security.models.IoTSecurityAggregatedRecommendation] - :ivar next_link: When there is too much alert data for one page, use this URI to fetch the next - page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[IoTSecurityAggregatedRecommendation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: list["_models.IoTSecurityAggregatedRecommendation"], **kwargs: Any) -> None: - """ - :keyword value: List of aggregated recommendations data. Required. - :paramtype value: list[~azure.mgmt.security.models.IoTSecurityAggregatedRecommendation] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class IoTSecurityAlertedDevice(_serialization.Model): - """Statistical information about the number of alerts per device during last set number of days. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar device_id: Device identifier. - :vartype device_id: str - :ivar alerts_count: Number of alerts raised for this device. - :vartype alerts_count: int - """ - - _validation = { - "device_id": {"readonly": True}, - "alerts_count": {"readonly": True}, - } - - _attribute_map = { - "device_id": {"key": "deviceId", "type": "str"}, - "alerts_count": {"key": "alertsCount", "type": "int"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.device_id: Optional[str] = None - self.alerts_count: Optional[int] = None - - -class IoTSecurityDeviceAlert(_serialization.Model): - """Statistical information about the number of alerts per alert type during last set number of - days. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar alert_display_name: Display name of the alert. - :vartype alert_display_name: str - :ivar reported_severity: Assessed Alert severity. Known values are: "Informational", "Low", - "Medium", and "High". - :vartype reported_severity: str or ~azure.mgmt.security.models.ReportedSeverity - :ivar alerts_count: Number of alerts raised for this alert type. - :vartype alerts_count: int - """ - - _validation = { - "alert_display_name": {"readonly": True}, - "reported_severity": {"readonly": True}, - "alerts_count": {"readonly": True}, - } - - _attribute_map = { - "alert_display_name": {"key": "alertDisplayName", "type": "str"}, - "reported_severity": {"key": "reportedSeverity", "type": "str"}, - "alerts_count": {"key": "alertsCount", "type": "int"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.alert_display_name: Optional[str] = None - self.reported_severity: Optional[Union[str, "_models.ReportedSeverity"]] = None - self.alerts_count: Optional[int] = None - - -class IoTSecurityDeviceRecommendation(_serialization.Model): - """Statistical information about the number of recommendations per device, per recommendation - type. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar recommendation_display_name: Display name of the recommendation. - :vartype recommendation_display_name: str - :ivar reported_severity: Assessed recommendation severity. Known values are: "Informational", - "Low", "Medium", and "High". - :vartype reported_severity: str or ~azure.mgmt.security.models.ReportedSeverity - :ivar devices_count: Number of devices with this recommendation. - :vartype devices_count: int - """ - - _validation = { - "recommendation_display_name": {"readonly": True}, - "reported_severity": {"readonly": True}, - "devices_count": {"readonly": True}, - } - - _attribute_map = { - "recommendation_display_name": {"key": "recommendationDisplayName", "type": "str"}, - "reported_severity": {"key": "reportedSeverity", "type": "str"}, - "devices_count": {"key": "devicesCount", "type": "int"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.recommendation_display_name: Optional[str] = None - self.reported_severity: Optional[Union[str, "_models.ReportedSeverity"]] = None - self.devices_count: Optional[int] = None - - -class IoTSecuritySolutionAnalyticsModel(Resource): - """Security analytics of your IoT Security solution. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar metrics: Security analytics of your IoT Security solution. - :vartype metrics: ~azure.mgmt.security.models.IoTSeverityMetrics - :ivar unhealthy_device_count: Number of unhealthy devices within your IoT Security solution. - :vartype unhealthy_device_count: int - :ivar devices_metrics: List of device metrics by the aggregation date. - :vartype devices_metrics: - list[~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem] - :ivar top_alerted_devices: List of the 3 devices with the most alerts. - :vartype top_alerted_devices: list[~azure.mgmt.security.models.IoTSecurityAlertedDevice] - :ivar most_prevalent_device_alerts: List of the 3 most prevalent device alerts. - :vartype most_prevalent_device_alerts: list[~azure.mgmt.security.models.IoTSecurityDeviceAlert] - :ivar most_prevalent_device_recommendations: List of the 3 most prevalent device - recommendations. - :vartype most_prevalent_device_recommendations: - list[~azure.mgmt.security.models.IoTSecurityDeviceRecommendation] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "metrics": {"readonly": True}, - "unhealthy_device_count": {"readonly": True}, - "devices_metrics": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "metrics": {"key": "properties.metrics", "type": "IoTSeverityMetrics"}, - "unhealthy_device_count": {"key": "properties.unhealthyDeviceCount", "type": "int"}, - "devices_metrics": { - "key": "properties.devicesMetrics", - "type": "[IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem]", - }, - "top_alerted_devices": {"key": "properties.topAlertedDevices", "type": "[IoTSecurityAlertedDevice]"}, - "most_prevalent_device_alerts": { - "key": "properties.mostPrevalentDeviceAlerts", - "type": "[IoTSecurityDeviceAlert]", - }, - "most_prevalent_device_recommendations": { - "key": "properties.mostPrevalentDeviceRecommendations", - "type": "[IoTSecurityDeviceRecommendation]", - }, - } - - def __init__( - self, - *, - top_alerted_devices: Optional[list["_models.IoTSecurityAlertedDevice"]] = None, - most_prevalent_device_alerts: Optional[list["_models.IoTSecurityDeviceAlert"]] = None, - most_prevalent_device_recommendations: Optional[list["_models.IoTSecurityDeviceRecommendation"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword top_alerted_devices: List of the 3 devices with the most alerts. - :paramtype top_alerted_devices: list[~azure.mgmt.security.models.IoTSecurityAlertedDevice] - :keyword most_prevalent_device_alerts: List of the 3 most prevalent device alerts. - :paramtype most_prevalent_device_alerts: - list[~azure.mgmt.security.models.IoTSecurityDeviceAlert] - :keyword most_prevalent_device_recommendations: List of the 3 most prevalent device - recommendations. - :paramtype most_prevalent_device_recommendations: - list[~azure.mgmt.security.models.IoTSecurityDeviceRecommendation] - """ - super().__init__(**kwargs) - self.metrics: Optional["_models.IoTSeverityMetrics"] = None - self.unhealthy_device_count: Optional[int] = None - self.devices_metrics: Optional[ - list["_models.IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem"] - ] = None - self.top_alerted_devices = top_alerted_devices - self.most_prevalent_device_alerts = most_prevalent_device_alerts - self.most_prevalent_device_recommendations = most_prevalent_device_recommendations - - -class IoTSecuritySolutionAnalyticsModelList(_serialization.Model): - """List of Security analytics of your IoT Security solution. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: List of Security analytics of your IoT Security solution. Required. - :vartype value: list[~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModel] - :ivar next_link: When there is too much alert data for one page, use this URI to fetch the next - page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[IoTSecuritySolutionAnalyticsModel]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: list["_models.IoTSecuritySolutionAnalyticsModel"], **kwargs: Any) -> None: - """ - :keyword value: List of Security analytics of your IoT Security solution. Required. - :paramtype value: list[~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModel] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem( - _serialization.Model -): # pylint: disable=name-too-long - """IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem. - - :ivar date: Aggregation of IoT Security solution device alert metrics by date. - :vartype date: ~datetime.datetime - :ivar devices_metrics: Device alert count by severity. - :vartype devices_metrics: ~azure.mgmt.security.models.IoTSeverityMetrics - """ - - _attribute_map = { - "date": {"key": "date", "type": "iso-8601"}, - "devices_metrics": {"key": "devicesMetrics", "type": "IoTSeverityMetrics"}, - } - - def __init__( - self, - *, - date: Optional[datetime.datetime] = None, - devices_metrics: Optional["_models.IoTSeverityMetrics"] = None, - **kwargs: Any - ) -> None: - """ - :keyword date: Aggregation of IoT Security solution device alert metrics by date. - :paramtype date: ~datetime.datetime - :keyword devices_metrics: Device alert count by severity. - :paramtype devices_metrics: ~azure.mgmt.security.models.IoTSeverityMetrics - """ - super().__init__(**kwargs) - self.date = date - self.devices_metrics = devices_metrics - - -class IoTSecuritySolutionModel(Resource, TagsResource): - """IoT Security solution configuration and resource information. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The resource location. - :vartype location: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar workspace: Workspace resource ID. - :vartype workspace: str - :ivar display_name: Resource display name. - :vartype display_name: str - :ivar status: Status of the IoT Security solution. Known values are: "Enabled" and "Disabled". - :vartype status: str or ~azure.mgmt.security.models.SecuritySolutionStatus - :ivar export: List of additional options for exporting to workspace data. - :vartype export: list[str or ~azure.mgmt.security.models.ExportData] - :ivar disabled_data_sources: Disabled data sources. Disabling these data sources compromises - the system. - :vartype disabled_data_sources: list[str or ~azure.mgmt.security.models.DataSource] - :ivar iot_hubs: IoT Hub resource IDs. - :vartype iot_hubs: list[str] - :ivar user_defined_resources: Properties of the IoT Security solution's user defined resources. - :vartype user_defined_resources: ~azure.mgmt.security.models.UserDefinedResourcesProperties - :ivar auto_discovered_resources: List of resources that were automatically discovered as - relevant to the security solution. - :vartype auto_discovered_resources: list[str] - :ivar recommendations_configuration: List of the configuration status for each recommendation - type. - :vartype recommendations_configuration: - list[~azure.mgmt.security.models.RecommendationConfigurationProperties] - :ivar unmasked_ip_logging_status: Unmasked IP address logging status. Known values are: - "Disabled" and "Enabled". - :vartype unmasked_ip_logging_status: str or ~azure.mgmt.security.models.UnmaskedIpLoggingStatus - :ivar additional_workspaces: List of additional workspaces. - :vartype additional_workspaces: - list[~azure.mgmt.security.models.AdditionalWorkspacesProperties] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "auto_discovered_resources": {"readonly": True}, - } - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "workspace": {"key": "properties.workspace", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "export": {"key": "properties.export", "type": "[str]"}, - "disabled_data_sources": {"key": "properties.disabledDataSources", "type": "[str]"}, - "iot_hubs": {"key": "properties.iotHubs", "type": "[str]"}, - "user_defined_resources": {"key": "properties.userDefinedResources", "type": "UserDefinedResourcesProperties"}, - "auto_discovered_resources": {"key": "properties.autoDiscoveredResources", "type": "[str]"}, - "recommendations_configuration": { - "key": "properties.recommendationsConfiguration", - "type": "[RecommendationConfigurationProperties]", - }, - "unmasked_ip_logging_status": {"key": "properties.unmaskedIpLoggingStatus", "type": "str"}, - "additional_workspaces": {"key": "properties.additionalWorkspaces", "type": "[AdditionalWorkspacesProperties]"}, - } - - def __init__( - self, - *, - tags: Optional[dict[str, str]] = None, - location: Optional[str] = None, - workspace: Optional[str] = None, - display_name: Optional[str] = None, - status: Union[str, "_models.SecuritySolutionStatus"] = "Enabled", - export: Optional[list[Union[str, "_models.ExportData"]]] = None, - disabled_data_sources: Optional[list[Union[str, "_models.DataSource"]]] = None, - iot_hubs: Optional[list[str]] = None, - user_defined_resources: Optional["_models.UserDefinedResourcesProperties"] = None, - recommendations_configuration: Optional[list["_models.RecommendationConfigurationProperties"]] = None, - unmasked_ip_logging_status: Union[str, "_models.UnmaskedIpLoggingStatus"] = "Disabled", - additional_workspaces: Optional[list["_models.AdditionalWorkspacesProperties"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword location: The resource location. - :paramtype location: str - :keyword workspace: Workspace resource ID. - :paramtype workspace: str - :keyword display_name: Resource display name. - :paramtype display_name: str - :keyword status: Status of the IoT Security solution. Known values are: "Enabled" and - "Disabled". - :paramtype status: str or ~azure.mgmt.security.models.SecuritySolutionStatus - :keyword export: List of additional options for exporting to workspace data. - :paramtype export: list[str or ~azure.mgmt.security.models.ExportData] - :keyword disabled_data_sources: Disabled data sources. Disabling these data sources compromises - the system. - :paramtype disabled_data_sources: list[str or ~azure.mgmt.security.models.DataSource] - :keyword iot_hubs: IoT Hub resource IDs. - :paramtype iot_hubs: list[str] - :keyword user_defined_resources: Properties of the IoT Security solution's user defined - resources. - :paramtype user_defined_resources: ~azure.mgmt.security.models.UserDefinedResourcesProperties - :keyword recommendations_configuration: List of the configuration status for each - recommendation type. - :paramtype recommendations_configuration: - list[~azure.mgmt.security.models.RecommendationConfigurationProperties] - :keyword unmasked_ip_logging_status: Unmasked IP address logging status. Known values are: - "Disabled" and "Enabled". - :paramtype unmasked_ip_logging_status: str or - ~azure.mgmt.security.models.UnmaskedIpLoggingStatus - :keyword additional_workspaces: List of additional workspaces. - :paramtype additional_workspaces: - list[~azure.mgmt.security.models.AdditionalWorkspacesProperties] - """ - super().__init__(tags=tags, **kwargs) - self.tags = tags - self.location = location - self.system_data: Optional["_models.SystemData"] = None - self.workspace = workspace - self.display_name = display_name - self.status = status - self.export = export - self.disabled_data_sources = disabled_data_sources - self.iot_hubs = iot_hubs - self.user_defined_resources = user_defined_resources - self.auto_discovered_resources: Optional[list[str]] = None - self.recommendations_configuration = recommendations_configuration - self.unmasked_ip_logging_status = unmasked_ip_logging_status - self.additional_workspaces = additional_workspaces - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class IoTSecuritySolutionsList(_serialization.Model): - """List of IoT Security solutions. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: List of IoT Security solutions. Required. - :vartype value: list[~azure.mgmt.security.models.IoTSecuritySolutionModel] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[IoTSecuritySolutionModel]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: list["_models.IoTSecuritySolutionModel"], **kwargs: Any) -> None: - """ - :keyword value: List of IoT Security solutions. Required. - :paramtype value: list[~azure.mgmt.security.models.IoTSecuritySolutionModel] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class IoTSeverityMetrics(_serialization.Model): - """IoT Security solution analytics severity metrics. - - :ivar high: Count of high severity alerts/recommendations. - :vartype high: int - :ivar medium: Count of medium severity alerts/recommendations. - :vartype medium: int - :ivar low: Count of low severity alerts/recommendations. - :vartype low: int - """ - - _attribute_map = { - "high": {"key": "high", "type": "int"}, - "medium": {"key": "medium", "type": "int"}, - "low": {"key": "low", "type": "int"}, - } - - def __init__( - self, *, high: Optional[int] = None, medium: Optional[int] = None, low: Optional[int] = None, **kwargs: Any - ) -> None: - """ - :keyword high: Count of high severity alerts/recommendations. - :paramtype high: int - :keyword medium: Count of medium severity alerts/recommendations. - :paramtype medium: int - :keyword low: Count of low severity alerts/recommendations. - :paramtype low: int - """ - super().__init__(**kwargs) - self.high = high - self.medium = medium - self.low = low - - -class Issue(_serialization.Model): - """The issue that caused the resource to by unhealthy. - - All required parameters must be populated in order to send to server. - - :ivar issue_key: The unique issue key. Required. - :vartype issue_key: str - :ivar issue_name: The issue name. - :vartype issue_name: str - :ivar security_values: The affected security values that MDC offers that will be affected by - the issue, for example: recommendations, alerts, etc. - :vartype security_values: list[str] - :ivar issue_description: The issue description. - :vartype issue_description: str - :ivar remediation_steps: Human readable description of what you should do to mitigate this - health issue. - :vartype remediation_steps: str - :ivar remediation_script: The remediation script to solve this issue. - :vartype remediation_script: str - :ivar issue_additional_data: Additional data for the given issue. The additional data depends - on the issue type. - :vartype issue_additional_data: dict[str, str] - """ - - _validation = { - "issue_key": {"required": True}, - } - - _attribute_map = { - "issue_key": {"key": "issueKey", "type": "str"}, - "issue_name": {"key": "issueName", "type": "str"}, - "security_values": {"key": "securityValues", "type": "[str]"}, - "issue_description": {"key": "issueDescription", "type": "str"}, - "remediation_steps": {"key": "remediationSteps", "type": "str"}, - "remediation_script": {"key": "remediationScript", "type": "str"}, - "issue_additional_data": {"key": "issueAdditionalData", "type": "{str}"}, - } - - def __init__( - self, - *, - issue_key: str, - issue_name: Optional[str] = None, - security_values: Optional[list[str]] = None, - issue_description: Optional[str] = None, - remediation_steps: Optional[str] = None, - remediation_script: Optional[str] = None, - issue_additional_data: Optional[dict[str, str]] = None, - **kwargs: Any - ) -> None: - """ - :keyword issue_key: The unique issue key. Required. - :paramtype issue_key: str - :keyword issue_name: The issue name. - :paramtype issue_name: str - :keyword security_values: The affected security values that MDC offers that will be affected by - the issue, for example: recommendations, alerts, etc. - :paramtype security_values: list[str] - :keyword issue_description: The issue description. - :paramtype issue_description: str - :keyword remediation_steps: Human readable description of what you should do to mitigate this - health issue. - :paramtype remediation_steps: str - :keyword remediation_script: The remediation script to solve this issue. - :paramtype remediation_script: str - :keyword issue_additional_data: Additional data for the given issue. The additional data - depends on the issue type. - :paramtype issue_additional_data: dict[str, str] - """ - super().__init__(**kwargs) - self.issue_key = issue_key - self.issue_name = issue_name - self.security_values = security_values - self.issue_description = issue_description - self.remediation_steps = remediation_steps - self.remediation_script = remediation_script - self.issue_additional_data = issue_additional_data - - -class IssueCreationRequest(_serialization.Model): - """The issue creation request model. - - :ivar security_assessment_resource_id: The security assessment resource id that the issue will - be opened based on. - :vartype security_assessment_resource_id: str - """ - - _attribute_map = { - "security_assessment_resource_id": {"key": "securityAssessmentResourceId", "type": "str"}, - } - - def __init__(self, *, security_assessment_resource_id: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword security_assessment_resource_id: The security assessment resource id that the issue - will be opened based on. - :paramtype security_assessment_resource_id: str - """ - super().__init__(**kwargs) - self.security_assessment_resource_id = security_assessment_resource_id - - -class JFrogEnvironmentData(EnvironmentData): - """The JFrog Artifactory connector environment data. - - All required parameters must be populated in order to send to server. - - :ivar environment_type: The type of the environment data. Required. Known values are: - "AwsAccount", "GcpProject", "GithubScope", "AzureDevOpsScope", "GitlabScope", - "DockerHubOrganization", and "JFrogArtifactory". - :vartype environment_type: str or ~azure.mgmt.security.models.EnvironmentType - :ivar scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). - :vartype scan_interval: int - """ - - _validation = { - "environment_type": {"required": True}, - "scan_interval": {"maximum": 24, "minimum": 1}, - } - - _attribute_map = { - "environment_type": {"key": "environmentType", "type": "str"}, - "scan_interval": {"key": "scanInterval", "type": "int"}, - } - - def __init__(self, *, scan_interval: Optional[int] = None, **kwargs: Any) -> None: - """ - :keyword scan_interval: Scan interval in hours (value should be between 1-hour to 24-hours). - :paramtype scan_interval: int - """ - super().__init__(**kwargs) - self.environment_type: str = "JFrogArtifactory" - self.scan_interval = scan_interval - - -class JitNetworkAccessPoliciesList(_serialization.Model): - """JitNetworkAccessPoliciesList. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.JitNetworkAccessPolicy] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[JitNetworkAccessPolicy]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[list["_models.JitNetworkAccessPolicy"]] = None, **kwargs: Any) -> None: - """ - :keyword value: - :paramtype value: list[~azure.mgmt.security.models.JitNetworkAccessPolicy] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class JitNetworkAccessPolicy(Resource, Kind, Location): - """JitNetworkAccessPolicy. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar kind: Kind of the resource. - :vartype kind: str - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar virtual_machines: Configurations for Microsoft.Compute/virtualMachines resource type. - Required. - :vartype virtual_machines: - list[~azure.mgmt.security.models.JitNetworkAccessPolicyVirtualMachine] - :ivar requests: - :vartype requests: list[~azure.mgmt.security.models.JitNetworkAccessRequest] - :ivar provisioning_state: Gets the provisioning state of the Just-in-Time policy. - :vartype provisioning_state: str - """ - - _validation = { - "location": {"readonly": True}, - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "virtual_machines": {"required": True}, - "provisioning_state": {"readonly": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "virtual_machines": {"key": "properties.virtualMachines", "type": "[JitNetworkAccessPolicyVirtualMachine]"}, - "requests": {"key": "properties.requests", "type": "[JitNetworkAccessRequest]"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - } - - def __init__( - self, - *, - virtual_machines: list["_models.JitNetworkAccessPolicyVirtualMachine"], - kind: Optional[str] = None, - requests: Optional[list["_models.JitNetworkAccessRequest"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword kind: Kind of the resource. - :paramtype kind: str - :keyword virtual_machines: Configurations for Microsoft.Compute/virtualMachines resource type. - Required. - :paramtype virtual_machines: - list[~azure.mgmt.security.models.JitNetworkAccessPolicyVirtualMachine] - :keyword requests: - :paramtype requests: list[~azure.mgmt.security.models.JitNetworkAccessRequest] - """ - super().__init__(kind=kind, **kwargs) - self.location: Optional[str] = None - self.kind = kind - self.virtual_machines = virtual_machines - self.requests = requests - self.provisioning_state: Optional[str] = None - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class JitNetworkAccessPolicyInitiatePort(_serialization.Model): - """JitNetworkAccessPolicyInitiatePort. - - All required parameters must be populated in order to send to server. - - :ivar number: Required. - :vartype number: int - :ivar allowed_source_address_prefix: Source of the allowed traffic. If omitted, the request - will be for the source IP address of the initiate request. - :vartype allowed_source_address_prefix: str - :ivar end_time_utc: The time to close the request in UTC. Required. - :vartype end_time_utc: ~datetime.datetime - """ - - _validation = { - "number": {"required": True, "maximum": 65535, "minimum": 0}, - "end_time_utc": {"required": True}, - } - - _attribute_map = { - "number": {"key": "number", "type": "int"}, - "allowed_source_address_prefix": {"key": "allowedSourceAddressPrefix", "type": "str"}, - "end_time_utc": {"key": "endTimeUtc", "type": "iso-8601"}, - } - - def __init__( - self, - *, - number: int, - end_time_utc: datetime.datetime, - allowed_source_address_prefix: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword number: Required. - :paramtype number: int - :keyword allowed_source_address_prefix: Source of the allowed traffic. If omitted, the request - will be for the source IP address of the initiate request. - :paramtype allowed_source_address_prefix: str - :keyword end_time_utc: The time to close the request in UTC. Required. - :paramtype end_time_utc: ~datetime.datetime - """ - super().__init__(**kwargs) - self.number = number - self.allowed_source_address_prefix = allowed_source_address_prefix - self.end_time_utc = end_time_utc - - -class JitNetworkAccessPolicyInitiateRequest(_serialization.Model): - """JitNetworkAccessPolicyInitiateRequest. - - All required parameters must be populated in order to send to server. - - :ivar virtual_machines: A list of virtual machines & ports to open access for. Required. - :vartype virtual_machines: - list[~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateVirtualMachine] - :ivar justification: The justification for making the initiate request. - :vartype justification: str - """ - - _validation = { - "virtual_machines": {"required": True}, - } - - _attribute_map = { - "virtual_machines": {"key": "virtualMachines", "type": "[JitNetworkAccessPolicyInitiateVirtualMachine]"}, - "justification": {"key": "justification", "type": "str"}, - } - - def __init__( - self, - *, - virtual_machines: list["_models.JitNetworkAccessPolicyInitiateVirtualMachine"], - justification: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword virtual_machines: A list of virtual machines & ports to open access for. Required. - :paramtype virtual_machines: - list[~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateVirtualMachine] - :keyword justification: The justification for making the initiate request. - :paramtype justification: str - """ - super().__init__(**kwargs) - self.virtual_machines = virtual_machines - self.justification = justification - - -class JitNetworkAccessPolicyInitiateVirtualMachine(_serialization.Model): # pylint: disable=name-too-long - """JitNetworkAccessPolicyInitiateVirtualMachine. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource ID of the virtual machine that is linked to this policy. Required. - :vartype id: str - :ivar ports: The ports to open for the resource with the ``id``. Required. - :vartype ports: list[~azure.mgmt.security.models.JitNetworkAccessPolicyInitiatePort] - """ - - _validation = { - "id": {"required": True}, - "ports": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "ports": {"key": "ports", "type": "[JitNetworkAccessPolicyInitiatePort]"}, - } - - def __init__( - self, - *, - id: str, # pylint: disable=redefined-builtin - ports: list["_models.JitNetworkAccessPolicyInitiatePort"], - **kwargs: Any - ) -> None: - """ - :keyword id: Resource ID of the virtual machine that is linked to this policy. Required. - :paramtype id: str - :keyword ports: The ports to open for the resource with the ``id``. Required. - :paramtype ports: list[~azure.mgmt.security.models.JitNetworkAccessPolicyInitiatePort] - """ - super().__init__(**kwargs) - self.id = id - self.ports = ports - - -class JitNetworkAccessPolicyVirtualMachine(_serialization.Model): - """JitNetworkAccessPolicyVirtualMachine. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource ID of the virtual machine that is linked to this policy. Required. - :vartype id: str - :ivar ports: Port configurations for the virtual machine. Required. - :vartype ports: list[~azure.mgmt.security.models.JitNetworkAccessPortRule] - :ivar public_ip_address: Public IP address of the Azure Firewall that is linked to this policy, - if applicable. - :vartype public_ip_address: str - """ - - _validation = { - "id": {"required": True}, - "ports": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "ports": {"key": "ports", "type": "[JitNetworkAccessPortRule]"}, - "public_ip_address": {"key": "publicIpAddress", "type": "str"}, - } - - def __init__( - self, - *, - id: str, # pylint: disable=redefined-builtin - ports: list["_models.JitNetworkAccessPortRule"], - public_ip_address: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword id: Resource ID of the virtual machine that is linked to this policy. Required. - :paramtype id: str - :keyword ports: Port configurations for the virtual machine. Required. - :paramtype ports: list[~azure.mgmt.security.models.JitNetworkAccessPortRule] - :keyword public_ip_address: Public IP address of the Azure Firewall that is linked to this - policy, if applicable. - :paramtype public_ip_address: str - """ - super().__init__(**kwargs) - self.id = id - self.ports = ports - self.public_ip_address = public_ip_address - - -class JitNetworkAccessPortRule(_serialization.Model): - """JitNetworkAccessPortRule. - - All required parameters must be populated in order to send to server. - - :ivar number: Required. - :vartype number: int - :ivar protocol: Required. Known values are: "TCP", "UDP", and "*". - :vartype protocol: str or ~azure.mgmt.security.models.ProtocolEnum - :ivar allowed_source_address_prefix: Mutually exclusive with the "allowedSourceAddressPrefixes" - parameter. Should be an IP address or CIDR, for example "192.168.0.3" or "192.168.0.0/16". - :vartype allowed_source_address_prefix: str - :ivar allowed_source_address_prefixes: Mutually exclusive with the "allowedSourceAddressPrefix" - parameter. - :vartype allowed_source_address_prefixes: list[str] - :ivar max_request_access_duration: Maximum duration requests can be made for. In ISO 8601 - duration format. Minimum 5 minutes, maximum 1 day. Required. - :vartype max_request_access_duration: str - """ - - _validation = { - "number": {"required": True, "maximum": 65535, "minimum": 0}, - "protocol": {"required": True}, - "max_request_access_duration": {"required": True}, - } - - _attribute_map = { - "number": {"key": "number", "type": "int"}, - "protocol": {"key": "protocol", "type": "str"}, - "allowed_source_address_prefix": {"key": "allowedSourceAddressPrefix", "type": "str"}, - "allowed_source_address_prefixes": {"key": "allowedSourceAddressPrefixes", "type": "[str]"}, - "max_request_access_duration": {"key": "maxRequestAccessDuration", "type": "str"}, - } - - def __init__( - self, - *, - number: int, - protocol: Union[str, "_models.ProtocolEnum"], - max_request_access_duration: str, - allowed_source_address_prefix: Optional[str] = None, - allowed_source_address_prefixes: Optional[list[str]] = None, - **kwargs: Any - ) -> None: - """ - :keyword number: Required. - :paramtype number: int - :keyword protocol: Required. Known values are: "TCP", "UDP", and "*". - :paramtype protocol: str or ~azure.mgmt.security.models.ProtocolEnum - :keyword allowed_source_address_prefix: Mutually exclusive with the - "allowedSourceAddressPrefixes" parameter. Should be an IP address or CIDR, for example - "192.168.0.3" or "192.168.0.0/16". - :paramtype allowed_source_address_prefix: str - :keyword allowed_source_address_prefixes: Mutually exclusive with the - "allowedSourceAddressPrefix" parameter. - :paramtype allowed_source_address_prefixes: list[str] - :keyword max_request_access_duration: Maximum duration requests can be made for. In ISO 8601 - duration format. Minimum 5 minutes, maximum 1 day. Required. - :paramtype max_request_access_duration: str - """ - super().__init__(**kwargs) - self.number = number - self.protocol = protocol - self.allowed_source_address_prefix = allowed_source_address_prefix - self.allowed_source_address_prefixes = allowed_source_address_prefixes - self.max_request_access_duration = max_request_access_duration - - -class JitNetworkAccessRequest(_serialization.Model): - """JitNetworkAccessRequest. - - All required parameters must be populated in order to send to server. - - :ivar virtual_machines: Required. - :vartype virtual_machines: - list[~azure.mgmt.security.models.JitNetworkAccessRequestVirtualMachine] - :ivar start_time_utc: The start time of the request in UTC. Required. - :vartype start_time_utc: ~datetime.datetime - :ivar requestor: The identity of the person who made the request. Required. - :vartype requestor: str - :ivar justification: The justification for making the initiate request. - :vartype justification: str - """ - - _validation = { - "virtual_machines": {"required": True}, - "start_time_utc": {"required": True}, - "requestor": {"required": True}, - } - - _attribute_map = { - "virtual_machines": {"key": "virtualMachines", "type": "[JitNetworkAccessRequestVirtualMachine]"}, - "start_time_utc": {"key": "startTimeUtc", "type": "iso-8601"}, - "requestor": {"key": "requestor", "type": "str"}, - "justification": {"key": "justification", "type": "str"}, - } - - def __init__( - self, - *, - virtual_machines: list["_models.JitNetworkAccessRequestVirtualMachine"], - start_time_utc: datetime.datetime, - requestor: str, - justification: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword virtual_machines: Required. - :paramtype virtual_machines: - list[~azure.mgmt.security.models.JitNetworkAccessRequestVirtualMachine] - :keyword start_time_utc: The start time of the request in UTC. Required. - :paramtype start_time_utc: ~datetime.datetime - :keyword requestor: The identity of the person who made the request. Required. - :paramtype requestor: str - :keyword justification: The justification for making the initiate request. - :paramtype justification: str - """ - super().__init__(**kwargs) - self.virtual_machines = virtual_machines - self.start_time_utc = start_time_utc - self.requestor = requestor - self.justification = justification - - -class JitNetworkAccessRequestPort(_serialization.Model): - """JitNetworkAccessRequestPort. - - All required parameters must be populated in order to send to server. - - :ivar number: Required. - :vartype number: int - :ivar allowed_source_address_prefix: Mutually exclusive with the "allowedSourceAddressPrefixes" - parameter. Should be an IP address or CIDR, for example "192.168.0.3" or "192.168.0.0/16". - :vartype allowed_source_address_prefix: str - :ivar allowed_source_address_prefixes: Mutually exclusive with the "allowedSourceAddressPrefix" - parameter. - :vartype allowed_source_address_prefixes: list[str] - :ivar end_time_utc: The date & time at which the request ends in UTC. Required. - :vartype end_time_utc: ~datetime.datetime - :ivar status: The status of the port. Required. Known values are: "Revoked" and "Initiated". - :vartype status: str or ~azure.mgmt.security.models.Status - :ivar status_reason: A description of why the ``status`` has its value. Required. Known values - are: "Expired", "UserRequested", and "NewerRequestInitiated". - :vartype status_reason: str or ~azure.mgmt.security.models.StatusReason - :ivar mapped_port: The port which is mapped to this port's ``number`` in the Azure Firewall, if - applicable. - :vartype mapped_port: int - """ - - _validation = { - "number": {"required": True, "maximum": 65535, "minimum": 0}, - "end_time_utc": {"required": True}, - "status": {"required": True}, - "status_reason": {"required": True}, - } - - _attribute_map = { - "number": {"key": "number", "type": "int"}, - "allowed_source_address_prefix": {"key": "allowedSourceAddressPrefix", "type": "str"}, - "allowed_source_address_prefixes": {"key": "allowedSourceAddressPrefixes", "type": "[str]"}, - "end_time_utc": {"key": "endTimeUtc", "type": "iso-8601"}, - "status": {"key": "status", "type": "str"}, - "status_reason": {"key": "statusReason", "type": "str"}, - "mapped_port": {"key": "mappedPort", "type": "int"}, - } - - def __init__( - self, - *, - number: int, - end_time_utc: datetime.datetime, - status: Union[str, "_models.Status"], - status_reason: Union[str, "_models.StatusReason"], - allowed_source_address_prefix: Optional[str] = None, - allowed_source_address_prefixes: Optional[list[str]] = None, - mapped_port: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword number: Required. - :paramtype number: int - :keyword allowed_source_address_prefix: Mutually exclusive with the - "allowedSourceAddressPrefixes" parameter. Should be an IP address or CIDR, for example - "192.168.0.3" or "192.168.0.0/16". - :paramtype allowed_source_address_prefix: str - :keyword allowed_source_address_prefixes: Mutually exclusive with the - "allowedSourceAddressPrefix" parameter. - :paramtype allowed_source_address_prefixes: list[str] - :keyword end_time_utc: The date & time at which the request ends in UTC. Required. - :paramtype end_time_utc: ~datetime.datetime - :keyword status: The status of the port. Required. Known values are: "Revoked" and "Initiated". - :paramtype status: str or ~azure.mgmt.security.models.Status - :keyword status_reason: A description of why the ``status`` has its value. Required. Known - values are: "Expired", "UserRequested", and "NewerRequestInitiated". - :paramtype status_reason: str or ~azure.mgmt.security.models.StatusReason - :keyword mapped_port: The port which is mapped to this port's ``number`` in the Azure Firewall, - if applicable. - :paramtype mapped_port: int - """ - super().__init__(**kwargs) - self.number = number - self.allowed_source_address_prefix = allowed_source_address_prefix - self.allowed_source_address_prefixes = allowed_source_address_prefixes - self.end_time_utc = end_time_utc - self.status = status - self.status_reason = status_reason - self.mapped_port = mapped_port - - -class JitNetworkAccessRequestVirtualMachine(_serialization.Model): - """JitNetworkAccessRequestVirtualMachine. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource ID of the virtual machine that is linked to this policy. Required. - :vartype id: str - :ivar ports: The ports that were opened for the virtual machine. Required. - :vartype ports: list[~azure.mgmt.security.models.JitNetworkAccessRequestPort] - """ - - _validation = { - "id": {"required": True}, - "ports": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "ports": {"key": "ports", "type": "[JitNetworkAccessRequestPort]"}, - } - - def __init__( - self, - *, - id: str, # pylint: disable=redefined-builtin - ports: list["_models.JitNetworkAccessRequestPort"], - **kwargs: Any - ) -> None: - """ - :keyword id: Resource ID of the virtual machine that is linked to this policy. Required. - :paramtype id: str - :keyword ports: The ports that were opened for the virtual machine. Required. - :paramtype ports: list[~azure.mgmt.security.models.JitNetworkAccessRequestPort] - """ - super().__init__(**kwargs) - self.id = id - self.ports = ports - - -class Label(_serialization.Model): - """Microsoft information protection sensitivity label. - - :ivar name: The display name of the label. - :vartype name: str - :ivar id: The ID of the label. - :vartype id: str - :ivar order: Labels are ordered by sensitivity level. The higher the order of the label, the - more sensitive it is. - :vartype order: float - """ - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "order": {"key": "order", "type": "float"}, - } - - def __init__( - self, - *, - name: Optional[str] = None, - id: Optional[str] = None, # pylint: disable=redefined-builtin - order: Optional[float] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: The display name of the label. - :paramtype name: str - :keyword id: The ID of the label. - :paramtype id: str - :keyword order: Labels are ordered by sensitivity level. The higher the order of the label, the - more sensitive it is. - :paramtype order: float - """ - super().__init__(**kwargs) - self.name = name - self.id = id - self.order = order - - -class LocalUserNotAllowed(AllowlistCustomAlertRule): - """Login by a local user that isn't allowed. Allow list consists of login names to allow. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar value_type: The value type of the items in the list. Known values are: "IpCidr" and - "String". - :vartype value_type: str or ~azure.mgmt.security.models.ValueType - :ivar allowlist_values: The values to allow. The format of the values depends on the rule type. - Required. - :vartype allowlist_values: list[str] - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "value_type": {"readonly": True}, - "allowlist_values": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "value_type": {"key": "valueType", "type": "str"}, - "allowlist_values": {"key": "allowlistValues", "type": "[str]"}, - } - - def __init__(self, *, is_enabled: bool, allowlist_values: list[str], **kwargs: Any) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword allowlist_values: The values to allow. The format of the values depends on the rule - type. Required. - :paramtype allowlist_values: list[str] - """ - super().__init__(is_enabled=is_enabled, allowlist_values=allowlist_values, **kwargs) - self.rule_type: str = "LocalUserNotAllowed" - - -class LogAnalyticsIdentifier(ResourceIdentifier): - """Represents a Log Analytics workspace scope identifier. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar type: There can be multiple identifiers of different type per alert, this field specify - the identifier type. Required. Known values are: "AzureResource" and "LogAnalytics". - :vartype type: str or ~azure.mgmt.security.models.ResourceIdentifierType - :ivar workspace_id: The LogAnalytics workspace id that stores this alert. - :vartype workspace_id: str - :ivar workspace_subscription_id: The azure subscription id for the LogAnalytics workspace - storing this alert. - :vartype workspace_subscription_id: str - :ivar workspace_resource_group: The azure resource group for the LogAnalytics workspace storing - this alert. - :vartype workspace_resource_group: str - :ivar agent_id: (optional) The LogAnalytics agent id reporting the event that this alert is - based on. - :vartype agent_id: str - """ - - _validation = { - "type": {"required": True}, - "workspace_id": {"readonly": True}, - "workspace_subscription_id": { - "readonly": True, - "pattern": r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", - }, - "workspace_resource_group": {"readonly": True}, - "agent_id": {"readonly": True}, - } - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - "workspace_id": {"key": "workspaceId", "type": "str"}, - "workspace_subscription_id": {"key": "workspaceSubscriptionId", "type": "str"}, - "workspace_resource_group": {"key": "workspaceResourceGroup", "type": "str"}, - "agent_id": {"key": "agentId", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.type: str = "LogAnalytics" - self.workspace_id: Optional[str] = None - self.workspace_subscription_id: Optional[str] = None - self.workspace_resource_group: Optional[str] = None - self.agent_id: Optional[str] = None - - -class MalwareScan(_serialization.Model): - """Describes the state of a malware scan operation. - - :ivar properties: - :vartype properties: ~azure.mgmt.security.models.MalwareScanProperties - """ - - _attribute_map = { - "properties": {"key": "properties", "type": "MalwareScanProperties"}, - } - - def __init__(self, *, properties: Optional["_models.MalwareScanProperties"] = None, **kwargs: Any) -> None: - """ - :keyword properties: - :paramtype properties: ~azure.mgmt.security.models.MalwareScanProperties - """ - super().__init__(**kwargs) - self.properties = properties - - -class MalwareScanningProperties(_serialization.Model): - """Properties of Malware Scanning. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar on_upload: Properties of On Upload malware scanning. - :vartype on_upload: ~azure.mgmt.security.models.OnUploadProperties - :ivar scan_results_event_grid_topic_resource_id: Optional. Resource id of an Event Grid Topic - to send scan results to. - :vartype scan_results_event_grid_topic_resource_id: str - :ivar blob_scan_results_options: Optional. Write scan result on BlobIndexTags by default. Known - values are: "BlobIndexTags" and "None". - :vartype blob_scan_results_options: str or ~azure.mgmt.security.models.BlobScanResultsOptions - :ivar automated_response: Optional. Specifies the automated response action to take when - malware is detected. Known values are: "None" and "BlobSoftDelete". - :vartype automated_response: str or ~azure.mgmt.security.models.AutomatedResponseType - :ivar operation_status: Upon failure or partial success. Additional data describing Malware - Scanning enable/disable operation. - :vartype operation_status: ~azure.mgmt.security.models.OperationStatusAutoGenerated - """ - - _validation = { - "operation_status": {"readonly": True}, - } - - _attribute_map = { - "on_upload": {"key": "onUpload", "type": "OnUploadProperties"}, - "scan_results_event_grid_topic_resource_id": {"key": "scanResultsEventGridTopicResourceId", "type": "str"}, - "blob_scan_results_options": {"key": "blobScanResultsOptions", "type": "str"}, - "automated_response": {"key": "automatedResponse", "type": "str"}, - "operation_status": {"key": "operationStatus", "type": "OperationStatusAutoGenerated"}, - } - - def __init__( - self, - *, - on_upload: Optional["_models.OnUploadProperties"] = None, - scan_results_event_grid_topic_resource_id: Optional[str] = None, - blob_scan_results_options: Union[str, "_models.BlobScanResultsOptions"] = "BlobIndexTags", - automated_response: Union[str, "_models.AutomatedResponseType"] = "None", - **kwargs: Any - ) -> None: - """ - :keyword on_upload: Properties of On Upload malware scanning. - :paramtype on_upload: ~azure.mgmt.security.models.OnUploadProperties - :keyword scan_results_event_grid_topic_resource_id: Optional. Resource id of an Event Grid - Topic to send scan results to. - :paramtype scan_results_event_grid_topic_resource_id: str - :keyword blob_scan_results_options: Optional. Write scan result on BlobIndexTags by default. - Known values are: "BlobIndexTags" and "None". - :paramtype blob_scan_results_options: str or ~azure.mgmt.security.models.BlobScanResultsOptions - :keyword automated_response: Optional. Specifies the automated response action to take when - malware is detected. Known values are: "None" and "BlobSoftDelete". - :paramtype automated_response: str or ~azure.mgmt.security.models.AutomatedResponseType - """ - super().__init__(**kwargs) - self.on_upload = on_upload - self.scan_results_event_grid_topic_resource_id = scan_results_event_grid_topic_resource_id - self.blob_scan_results_options = blob_scan_results_options - self.automated_response = automated_response - self.operation_status: Optional["_models.OperationStatusAutoGenerated"] = None - - -class MalwareScanProperties(_serialization.Model): - """MalwareScanProperties. - - :ivar scan_id: The identifier of the scan. - :vartype scan_id: str - :ivar scan_status: A status code of the scan operation. - :vartype scan_status: str - :ivar scan_status_message: A description of the status of the scan. - :vartype scan_status_message: str - :ivar scan_start_time: The time at which the scan had been initiated. - :vartype scan_start_time: str - :ivar scan_end_time: The time at which the scan has ended. Only available for a scan which has - terminated. - :vartype scan_end_time: str - :ivar scan_summary: A summary of the scan results. - :vartype scan_summary: ~azure.mgmt.security.models.ScanSummary - """ - - _attribute_map = { - "scan_id": {"key": "scanId", "type": "str"}, - "scan_status": {"key": "scanStatus", "type": "str"}, - "scan_status_message": {"key": "scanStatusMessage", "type": "str"}, - "scan_start_time": {"key": "scanStartTime", "type": "str"}, - "scan_end_time": {"key": "scanEndTime", "type": "str"}, - "scan_summary": {"key": "scanSummary", "type": "ScanSummary"}, - } - - def __init__( - self, - *, - scan_id: Optional[str] = None, - scan_status: Optional[str] = None, - scan_status_message: Optional[str] = None, - scan_start_time: Optional[str] = None, - scan_end_time: Optional[str] = None, - scan_summary: Optional["_models.ScanSummary"] = None, - **kwargs: Any - ) -> None: - """ - :keyword scan_id: The identifier of the scan. - :paramtype scan_id: str - :keyword scan_status: A status code of the scan operation. - :paramtype scan_status: str - :keyword scan_status_message: A description of the status of the scan. - :paramtype scan_status_message: str - :keyword scan_start_time: The time at which the scan had been initiated. - :paramtype scan_start_time: str - :keyword scan_end_time: The time at which the scan has ended. Only available for a scan which - has terminated. - :paramtype scan_end_time: str - :keyword scan_summary: A summary of the scan results. - :paramtype scan_summary: ~azure.mgmt.security.models.ScanSummary - """ - super().__init__(**kwargs) - self.scan_id = scan_id - self.scan_status = scan_status - self.scan_status_message = scan_status_message - self.scan_start_time = scan_start_time - self.scan_end_time = scan_end_time - self.scan_summary = scan_summary - - -class MdeOnboardingData(Resource): - """The resource of the configuration or data needed to onboard the machine to MDE. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar onboarding_package_windows: The onboarding package used to onboard Windows machines to - MDE, coded in base64. This can also be used for onboarding using the dedicated VM Extension. - :vartype onboarding_package_windows: bytes - :ivar onboarding_package_linux: The onboarding package used to onboard Linux machines to MDE, - coded in base64. This can also be used for onboarding using the dedicated VM Extension. - :vartype onboarding_package_linux: bytes - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "onboarding_package_windows": {"key": "properties.onboardingPackageWindows", "type": "bytearray"}, - "onboarding_package_linux": {"key": "properties.onboardingPackageLinux", "type": "bytearray"}, - } - - def __init__( - self, - *, - onboarding_package_windows: Optional[bytes] = None, - onboarding_package_linux: Optional[bytes] = None, - **kwargs: Any - ) -> None: - """ - :keyword onboarding_package_windows: The onboarding package used to onboard Windows machines to - MDE, coded in base64. This can also be used for onboarding using the dedicated VM Extension. - :paramtype onboarding_package_windows: bytes - :keyword onboarding_package_linux: The onboarding package used to onboard Linux machines to - MDE, coded in base64. This can also be used for onboarding using the dedicated VM Extension. - :paramtype onboarding_package_linux: bytes - """ - super().__init__(**kwargs) - self.onboarding_package_windows = onboarding_package_windows - self.onboarding_package_linux = onboarding_package_linux - - -class MdeOnboardingDataList(_serialization.Model): - """List of all MDE onboarding data resources. - - :ivar value: List of the resources of the configuration or data needed to onboard the machine - to MDE. - :vartype value: list[~azure.mgmt.security.models.MdeOnboardingData] - """ - - _attribute_map = { - "value": {"key": "value", "type": "[MdeOnboardingData]"}, - } - - def __init__(self, *, value: Optional[list["_models.MdeOnboardingData"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of the resources of the configuration or data needed to onboard the - machine to MDE. - :paramtype value: list[~azure.mgmt.security.models.MdeOnboardingData] - """ - super().__init__(**kwargs) - self.value = value - - -class MqttC2DMessagesNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of cloud to device messages (MQTT protocol) is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "MqttC2DMessagesNotInAllowedRange" - - -class MqttC2DRejectedMessagesNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of rejected cloud to device messages (MQTT protocol) is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "MqttC2DRejectedMessagesNotInAllowedRange" - - -class MqttD2CMessagesNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of device to cloud messages (MQTT protocol) is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "MqttD2CMessagesNotInAllowedRange" - - -class NodeIdentifier(_serialization.Model): - """Represents a node in the path. - - All required parameters must be populated in order to send to server. - - :ivar id: The unique identifier of the node. Required. - :vartype id: str - :ivar type: The type of the node. Required. - :vartype type: str - """ - - _validation = { - "id": {"required": True}, - "type": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, *, id: str, type: str, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: The unique identifier of the node. Required. - :paramtype id: str - :keyword type: The type of the node. Required. - :paramtype type: str - """ - super().__init__(**kwargs) - self.id = id - self.type = type - - -class OnPremiseResourceDetails(ResourceDetails): - """Details of the On Premise resource that was assessed. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - OnPremiseSqlResourceDetails - - All required parameters must be populated in order to send to server. - - :ivar source: The platform where the assessed resource resides. Required. Known values are: - "Azure", "OnPremise", and "OnPremiseSql". - :vartype source: str or ~azure.mgmt.security.models.Source - :ivar workspace_id: Azure resource Id of the workspace the machine is attached to. Required. - :vartype workspace_id: str - :ivar vmuuid: The unique Id of the machine. Required. - :vartype vmuuid: str - :ivar source_computer_id: The oms agent Id installed on the machine. Required. - :vartype source_computer_id: str - :ivar machine_name: The name of the machine. Required. - :vartype machine_name: str - """ - - _validation = { - "source": {"required": True}, - "workspace_id": {"required": True}, - "vmuuid": {"required": True}, - "source_computer_id": {"required": True}, - "machine_name": {"required": True}, - } - - _attribute_map = { - "source": {"key": "source", "type": "str"}, - "workspace_id": {"key": "workspaceId", "type": "str"}, - "vmuuid": {"key": "vmuuid", "type": "str"}, - "source_computer_id": {"key": "sourceComputerId", "type": "str"}, - "machine_name": {"key": "machineName", "type": "str"}, - } - - _subtype_map = {"source": {"OnPremiseSql": "OnPremiseSqlResourceDetails"}} - - def __init__( - self, *, workspace_id: str, vmuuid: str, source_computer_id: str, machine_name: str, **kwargs: Any - ) -> None: - """ - :keyword workspace_id: Azure resource Id of the workspace the machine is attached to. Required. - :paramtype workspace_id: str - :keyword vmuuid: The unique Id of the machine. Required. - :paramtype vmuuid: str - :keyword source_computer_id: The oms agent Id installed on the machine. Required. - :paramtype source_computer_id: str - :keyword machine_name: The name of the machine. Required. - :paramtype machine_name: str - """ - super().__init__(**kwargs) - self.source: str = "OnPremise" - self.workspace_id = workspace_id - self.vmuuid = vmuuid - self.source_computer_id = source_computer_id - self.machine_name = machine_name - - -class OnPremiseSqlResourceDetails(OnPremiseResourceDetails): - """Details of the On Premise Sql resource that was assessed. - - All required parameters must be populated in order to send to server. - - :ivar source: The platform where the assessed resource resides. Required. Known values are: - "Azure", "OnPremise", and "OnPremiseSql". - :vartype source: str or ~azure.mgmt.security.models.Source - :ivar workspace_id: Azure resource Id of the workspace the machine is attached to. Required. - :vartype workspace_id: str - :ivar vmuuid: The unique Id of the machine. Required. - :vartype vmuuid: str - :ivar source_computer_id: The oms agent Id installed on the machine. Required. - :vartype source_computer_id: str - :ivar machine_name: The name of the machine. Required. - :vartype machine_name: str - :ivar server_name: The Sql server name installed on the machine. Required. - :vartype server_name: str - :ivar database_name: The Sql database name installed on the machine. Required. - :vartype database_name: str - """ - - _validation = { - "source": {"required": True}, - "workspace_id": {"required": True}, - "vmuuid": {"required": True}, - "source_computer_id": {"required": True}, - "machine_name": {"required": True}, - "server_name": {"required": True}, - "database_name": {"required": True}, - } - - _attribute_map = { - "source": {"key": "source", "type": "str"}, - "workspace_id": {"key": "workspaceId", "type": "str"}, - "vmuuid": {"key": "vmuuid", "type": "str"}, - "source_computer_id": {"key": "sourceComputerId", "type": "str"}, - "machine_name": {"key": "machineName", "type": "str"}, - "server_name": {"key": "serverName", "type": "str"}, - "database_name": {"key": "databaseName", "type": "str"}, - } - - def __init__( - self, - *, - workspace_id: str, - vmuuid: str, - source_computer_id: str, - machine_name: str, - server_name: str, - database_name: str, - **kwargs: Any - ) -> None: - """ - :keyword workspace_id: Azure resource Id of the workspace the machine is attached to. Required. - :paramtype workspace_id: str - :keyword vmuuid: The unique Id of the machine. Required. - :paramtype vmuuid: str - :keyword source_computer_id: The oms agent Id installed on the machine. Required. - :paramtype source_computer_id: str - :keyword machine_name: The name of the machine. Required. - :paramtype machine_name: str - :keyword server_name: The Sql server name installed on the machine. Required. - :paramtype server_name: str - :keyword database_name: The Sql database name installed on the machine. Required. - :paramtype database_name: str - """ - super().__init__( - workspace_id=workspace_id, - vmuuid=vmuuid, - source_computer_id=source_computer_id, - machine_name=machine_name, - **kwargs - ) - self.source: str = "OnPremiseSql" - self.server_name = server_name - self.database_name = database_name - - -class OnUploadFilters(_serialization.Model): - """Optional. Determine which blobs get scanned by On Upload malware scanning. An Or operation is - performed between each filter type. - - :ivar exclude_blobs_with_prefix: Optional. A list of prefixes to exclude from on-upload malware - scanning. Format: ``container-name/blob-name`` (start with the container name; do not include - the storage account name). Exclude entire containers: Use prefix of container names you want to - exclude without a trailing ``/``. Exclude a single container: Add a trailing slash ``/`` after - the container name to avoid excluding other containers with similar prefixes. - :vartype exclude_blobs_with_prefix: list[str] - :ivar exclude_blobs_with_suffix: Optional. A list of suffixes to exclude from on-upload malware - scanning. Suffixes match only the end of blob names, and should be used for file extensions or - blob name endings only. - :vartype exclude_blobs_with_suffix: list[str] - :ivar exclude_blobs_larger_than: Optional. Specifies the maximum size in bytes for blobs to be - scanned. This parameter accepts a single positive integer value. Blobs larger than this value - will be excluded from scanning. - :vartype exclude_blobs_larger_than: any - """ - - _attribute_map = { - "exclude_blobs_with_prefix": {"key": "excludeBlobsWithPrefix", "type": "[str]"}, - "exclude_blobs_with_suffix": {"key": "excludeBlobsWithSuffix", "type": "[str]"}, - "exclude_blobs_larger_than": {"key": "excludeBlobsLargerThan", "type": "object"}, - } - - def __init__( - self, - *, - exclude_blobs_with_prefix: Optional[list[str]] = None, - exclude_blobs_with_suffix: Optional[list[str]] = None, - exclude_blobs_larger_than: Optional[Any] = None, - **kwargs: Any - ) -> None: - """ - :keyword exclude_blobs_with_prefix: Optional. A list of prefixes to exclude from on-upload - malware scanning. Format: ``container-name/blob-name`` (start with the container name; do not - include the storage account name). Exclude entire containers: Use prefix of container names you - want to exclude without a trailing ``/``. Exclude a single container: Add a trailing slash - ``/`` after the container name to avoid excluding other containers with similar prefixes. - :paramtype exclude_blobs_with_prefix: list[str] - :keyword exclude_blobs_with_suffix: Optional. A list of suffixes to exclude from on-upload - malware scanning. Suffixes match only the end of blob names, and should be used for file - extensions or blob name endings only. - :paramtype exclude_blobs_with_suffix: list[str] - :keyword exclude_blobs_larger_than: Optional. Specifies the maximum size in bytes for blobs to - be scanned. This parameter accepts a single positive integer value. Blobs larger than this - value will be excluded from scanning. - :paramtype exclude_blobs_larger_than: any - """ - super().__init__(**kwargs) - self.exclude_blobs_with_prefix = exclude_blobs_with_prefix - self.exclude_blobs_with_suffix = exclude_blobs_with_suffix - self.exclude_blobs_larger_than = exclude_blobs_larger_than - - -class OnUploadProperties(_serialization.Model): - """Properties of On Upload malware scanning. - - :ivar is_enabled: Indicates whether On Upload malware scanning should be enabled. - :vartype is_enabled: bool - :ivar cap_gb_per_month: Defines the max GB to be scanned per Month. Set to -1 if no capping is - needed. If not specified, the default value is -1. - :vartype cap_gb_per_month: int - :ivar filters: Optional. Determine which blobs get scanned by On Upload malware scanning. An Or - operation is performed between each filter type. - :vartype filters: ~azure.mgmt.security.models.OnUploadFilters - """ - - _attribute_map = { - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "cap_gb_per_month": {"key": "capGBPerMonth", "type": "int"}, - "filters": {"key": "filters", "type": "OnUploadFilters"}, - } - - def __init__( - self, - *, - is_enabled: Optional[bool] = None, - cap_gb_per_month: Optional[int] = None, - filters: Optional["_models.OnUploadFilters"] = None, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Indicates whether On Upload malware scanning should be enabled. - :paramtype is_enabled: bool - :keyword cap_gb_per_month: Defines the max GB to be scanned per Month. Set to -1 if no capping - is needed. If not specified, the default value is -1. - :paramtype cap_gb_per_month: int - :keyword filters: Optional. Determine which blobs get scanned by On Upload malware scanning. An - Or operation is performed between each filter type. - :paramtype filters: ~azure.mgmt.security.models.OnUploadFilters - """ - super().__init__(**kwargs) - self.is_enabled = is_enabled - self.cap_gb_per_month = cap_gb_per_month - self.filters = filters - - -class Operation(_serialization.Model): - """Details of a REST API operation, returned from the Resource Provider Operations API. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar name: The name of the operation, as per Resource-Based Access Control (RBAC). Examples: - "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action". - :vartype name: str - :ivar is_data_action: Whether the operation applies to data-plane. This is "true" for - data-plane operations and "false" for ARM/control-plane operations. - :vartype is_data_action: bool - :ivar display: Localized display information for this particular operation. - :vartype display: ~azure.mgmt.security.models.OperationDisplay - :ivar origin: The intended executor of the operation; as in Resource Based Access Control - (RBAC) and audit logs UX. Default value is "user,system". Known values are: "user", "system", - and "user,system". - :vartype origin: str or ~azure.mgmt.security.models.Origin - :ivar action_type: Enum. Indicates the action type. "Internal" refers to actions that are for - internal only APIs. Known values are: "Internal", "LogicApp", "EventHub", and "Workspace". - :vartype action_type: str or ~azure.mgmt.security.models.ActionType - """ - - _validation = { - "name": {"readonly": True}, - "is_data_action": {"readonly": True}, - "origin": {"readonly": True}, - "action_type": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "is_data_action": {"key": "isDataAction", "type": "bool"}, - "display": {"key": "display", "type": "OperationDisplay"}, - "origin": {"key": "origin", "type": "str"}, - "action_type": {"key": "actionType", "type": "str"}, - } - - def __init__(self, *, display: Optional["_models.OperationDisplay"] = None, **kwargs: Any) -> None: - """ - :keyword display: Localized display information for this particular operation. - :paramtype display: ~azure.mgmt.security.models.OperationDisplay - """ - super().__init__(**kwargs) - self.name: Optional[str] = None - self.is_data_action: Optional[bool] = None - self.display = display - self.origin: Optional[Union[str, "_models.Origin"]] = None - self.action_type: Optional[Union[str, "_models.ActionType"]] = None - - -class OperationDisplay(_serialization.Model): - """Localized display information for this particular operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provider: The localized friendly form of the resource provider name, e.g. "Microsoft - Monitoring Insights" or "Microsoft Compute". - :vartype provider: str - :ivar resource: The localized friendly name of the resource type related to this operation. - E.g. "Virtual Machines" or "Job Schedule Collections". - :vartype resource: str - :ivar operation: The concise, localized friendly name for the operation; suitable for - dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine". - :vartype operation: str - :ivar description: The short, localized friendly description of the operation; suitable for - tool tips and detailed views. - :vartype description: str - """ - - _validation = { - "provider": {"readonly": True}, - "resource": {"readonly": True}, - "operation": {"readonly": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "provider": {"key": "provider", "type": "str"}, - "resource": {"key": "resource", "type": "str"}, - "operation": {"key": "operation", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.provider: Optional[str] = None - self.resource: Optional[str] = None - self.operation: Optional[str] = None - self.description: Optional[str] = None - - -class OperationListResult(_serialization.Model): - """A list of REST API operations supported by an Azure Resource Provider. It contains an URL link - to get the next set of results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of operations supported by the resource provider. - :vartype value: list[~azure.mgmt.security.models.Operation] - :ivar next_link: URL to get the next set of operation list results (if there are any). - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Operation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.Operation"]] = None - self.next_link: Optional[str] = None - - -class OperationResultAutoGenerated(_serialization.Model): - """Long run operation status of governance rule over a given scope. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar status: The status of the long run operation result of governance rule. Known values are: - "Succeeded", "Failed", and "Canceled". - :vartype status: str or ~azure.mgmt.security.models.OperationResult - """ - - _validation = { - "status": {"readonly": True}, - } - - _attribute_map = { - "status": {"key": "status", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.status: Optional[Union[str, "_models.OperationResult"]] = None - - -class OperationStatus(_serialization.Model): - """A status describing the success/failure of the extension's enablement/disablement operation. - - :ivar code: The operation status code. Known values are: "Succeeded" and "Failed". - :vartype code: str or ~azure.mgmt.security.models.Code - :ivar message: Additional information regarding the success/failure of the operation. - :vartype message: str - """ - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - } - - def __init__( - self, *, code: Optional[Union[str, "_models.Code"]] = None, message: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword code: The operation status code. Known values are: "Succeeded" and "Failed". - :paramtype code: str or ~azure.mgmt.security.models.Code - :keyword message: Additional information regarding the success/failure of the operation. - :paramtype message: str - """ - super().__init__(**kwargs) - self.code = code - self.message = message - - -class OperationStatusAutoGenerated(_serialization.Model): - """A status describing the success/failure of the enablement/disablement operation. - - :ivar code: The operation status code. - :vartype code: str - :ivar message: Additional information regarding the success/failure of the operation. - :vartype message: str - """ - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - } - - def __init__(self, *, code: Optional[str] = None, message: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword code: The operation status code. - :paramtype code: str - :keyword message: Additional information regarding the success/failure of the operation. - :paramtype message: str - """ - super().__init__(**kwargs) - self.code = code - self.message = message - - -class OperationStatusResult(_serialization.Model): - """The current status of an async operation. - - All required parameters must be populated in order to send to server. - - :ivar id: Fully qualified ID for the async operation. - :vartype id: str - :ivar name: Name of the async operation. - :vartype name: str - :ivar status: Operation status. Required. - :vartype status: str - :ivar percent_complete: Percent of the operation that is complete. - :vartype percent_complete: float - :ivar start_time: The start time of the operation. - :vartype start_time: ~datetime.datetime - :ivar end_time: The end time of the operation. - :vartype end_time: ~datetime.datetime - :ivar operations: The operations list. - :vartype operations: list[~azure.mgmt.security.models.OperationStatusResult] - :ivar error: If present, details of the operation error. - :vartype error: ~azure.mgmt.security.models.ErrorDetailAutoGenerated - """ - - _validation = { - "status": {"required": True}, - "percent_complete": {"maximum": 100, "minimum": 0}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "status": {"key": "status", "type": "str"}, - "percent_complete": {"key": "percentComplete", "type": "float"}, - "start_time": {"key": "startTime", "type": "iso-8601"}, - "end_time": {"key": "endTime", "type": "iso-8601"}, - "operations": {"key": "operations", "type": "[OperationStatusResult]"}, - "error": {"key": "error", "type": "ErrorDetailAutoGenerated"}, - } - - def __init__( - self, - *, - status: str, - id: Optional[str] = None, # pylint: disable=redefined-builtin - name: Optional[str] = None, - percent_complete: Optional[float] = None, - start_time: Optional[datetime.datetime] = None, - end_time: Optional[datetime.datetime] = None, - operations: Optional[list["_models.OperationStatusResult"]] = None, - error: Optional["_models.ErrorDetailAutoGenerated"] = None, - **kwargs: Any - ) -> None: - """ - :keyword id: Fully qualified ID for the async operation. - :paramtype id: str - :keyword name: Name of the async operation. - :paramtype name: str - :keyword status: Operation status. Required. - :paramtype status: str - :keyword percent_complete: Percent of the operation that is complete. - :paramtype percent_complete: float - :keyword start_time: The start time of the operation. - :paramtype start_time: ~datetime.datetime - :keyword end_time: The end time of the operation. - :paramtype end_time: ~datetime.datetime - :keyword operations: The operations list. - :paramtype operations: list[~azure.mgmt.security.models.OperationStatusResult] - :keyword error: If present, details of the operation error. - :paramtype error: ~azure.mgmt.security.models.ErrorDetailAutoGenerated - """ - super().__init__(**kwargs) - self.id = id - self.name = name - self.status = status - self.percent_complete = percent_complete - self.start_time = start_time - self.end_time = end_time - self.operations = operations - self.error = error - - -class OperationStatusResultAutoGenerated(_serialization.Model): - """The current status of an async operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Fully qualified ID for the async operation. - :vartype id: str - :ivar resource_id: Fully qualified ID of the resource against which the original async - operation was started. - :vartype resource_id: str - :ivar name: Name of the async operation. - :vartype name: str - :ivar status: Operation status. Required. - :vartype status: str - :ivar percent_complete: Percent of the operation that is complete. - :vartype percent_complete: float - :ivar start_time: The start time of the operation. - :vartype start_time: ~datetime.datetime - :ivar end_time: The end time of the operation. - :vartype end_time: ~datetime.datetime - :ivar operations: The operations list. - :vartype operations: list[~azure.mgmt.security.models.OperationStatusResultAutoGenerated] - :ivar error: If present, details of the operation error. - :vartype error: ~azure.mgmt.security.models.ErrorDetailAutoGenerated2 - """ - - _validation = { - "resource_id": {"readonly": True}, - "status": {"required": True}, - "percent_complete": {"maximum": 100, "minimum": 0}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "resource_id": {"key": "resourceId", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "status": {"key": "status", "type": "str"}, - "percent_complete": {"key": "percentComplete", "type": "float"}, - "start_time": {"key": "startTime", "type": "iso-8601"}, - "end_time": {"key": "endTime", "type": "iso-8601"}, - "operations": {"key": "operations", "type": "[OperationStatusResultAutoGenerated]"}, - "error": {"key": "error", "type": "ErrorDetailAutoGenerated2"}, - } - - def __init__( - self, - *, - status: str, - id: Optional[str] = None, # pylint: disable=redefined-builtin - name: Optional[str] = None, - percent_complete: Optional[float] = None, - start_time: Optional[datetime.datetime] = None, - end_time: Optional[datetime.datetime] = None, - operations: Optional[list["_models.OperationStatusResultAutoGenerated"]] = None, - error: Optional["_models.ErrorDetailAutoGenerated2"] = None, - **kwargs: Any - ) -> None: - """ - :keyword id: Fully qualified ID for the async operation. - :paramtype id: str - :keyword name: Name of the async operation. - :paramtype name: str - :keyword status: Operation status. Required. - :paramtype status: str - :keyword percent_complete: Percent of the operation that is complete. - :paramtype percent_complete: float - :keyword start_time: The start time of the operation. - :paramtype start_time: ~datetime.datetime - :keyword end_time: The end time of the operation. - :paramtype end_time: ~datetime.datetime - :keyword operations: The operations list. - :paramtype operations: list[~azure.mgmt.security.models.OperationStatusResultAutoGenerated] - :keyword error: If present, details of the operation error. - :paramtype error: ~azure.mgmt.security.models.ErrorDetailAutoGenerated2 - """ - super().__init__(**kwargs) - self.id = id - self.resource_id: Optional[str] = None - self.name = name - self.status = status - self.percent_complete = percent_complete - self.start_time = start_time - self.end_time = end_time - self.operations = operations - self.error = error - - -class PartialAssessmentProperties(_serialization.Model): - """Describes properties of an assessment as related to the standard. - - :ivar assessment_key: The assessment key. - :vartype assessment_key: str - """ - - _attribute_map = { - "assessment_key": {"key": "assessmentKey", "type": "str"}, - } - - def __init__(self, *, assessment_key: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword assessment_key: The assessment key. - :paramtype assessment_key: str - """ - super().__init__(**kwargs) - self.assessment_key = assessment_key - - -class Path(_serialization.Model): - """Represents a path that composes the risk. - - All required parameters must be populated in order to send to server. - - :ivar id: Path ID. Required. - :vartype id: str - :ivar nodes: Path Nodes. Required. - :vartype nodes: list[~azure.mgmt.security.models.NodeIdentifier] - :ivar edges: Path Edges. Required. - :vartype edges: list[~azure.mgmt.security.models.EdgeIdentifiers] - """ - - _validation = { - "id": {"required": True}, - "nodes": {"required": True}, - "edges": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "nodes": {"key": "nodes", "type": "[NodeIdentifier]"}, - "edges": {"key": "edges", "type": "[EdgeIdentifiers]"}, - } - - def __init__( - self, - *, - id: str, # pylint: disable=redefined-builtin - nodes: list["_models.NodeIdentifier"], - edges: list["_models.EdgeIdentifiers"], - **kwargs: Any - ) -> None: - """ - :keyword id: Path ID. Required. - :paramtype id: str - :keyword nodes: Path Nodes. Required. - :paramtype nodes: list[~azure.mgmt.security.models.NodeIdentifier] - :keyword edges: Path Edges. Required. - :paramtype edges: list[~azure.mgmt.security.models.EdgeIdentifiers] - """ - super().__init__(**kwargs) - self.id = id - self.nodes = nodes - self.edges = edges - - -class Pricing(Resource): - """Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard - tier offers advanced security capabilities, while the free tier offers basic security features. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar pricing_tier: Indicates whether the Defender plan is enabled on the selected scope. - Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard - tier offers advanced security capabilities, while the free tier offers basic security features. - Known values are: "Free" and "Standard". - :vartype pricing_tier: str or ~azure.mgmt.security.models.PricingTier - :ivar sub_plan: The sub-plan selected for a Standard pricing configuration, when more than one - sub-plan is available. Each sub-plan enables a set of security features. When not specified, - full plan is applied. For VirtualMachines plan, available sub plans are 'P1' & 'P2', where for - resource level only 'P1' sub plan is supported. - :vartype sub_plan: str - :ivar free_trial_remaining_time: The duration left for the subscriptions free trial period - in - ISO 8601 format (e.g. P3Y6M4DT12H30M5S). - :vartype free_trial_remaining_time: ~datetime.timedelta - :ivar enablement_time: Optional. If ``pricingTier`` is ``Standard`` then this property holds - the date of the last time the ``pricingTier`` was set to ``Standard``\\ , when available (e.g - 2023-03-01T12:42:42.1921106Z). - :vartype enablement_time: ~datetime.datetime - :ivar enforce: If set to "False", it allows the descendants of this scope to override the - pricing configuration set on this scope (allows setting inherited="False"). If set to "True", - it prevents overrides and forces this pricing configuration on all the descendants of this - scope. This field is only available for subscription-level pricing. Known values are: "False" - and "True". - :vartype enforce: str or ~azure.mgmt.security.models.Enforce - :ivar inherited: "inherited" = "True" indicates that the current scope inherits its pricing - configuration from its parent. The ID of the parent scope that provides the inherited - configuration is displayed in the "inheritedFrom" field. On the other hand, "inherited" = - "False" indicates that the current scope has its own pricing configuration explicitly set, and - does not inherit from its parent. This field is read only and available only for resource-level - pricing. Known values are: "True" and "False". - :vartype inherited: str or ~azure.mgmt.security.models.Inherited - :ivar inherited_from: The id of the scope inherited from. "Null" if not inherited. This field - is only available for resource-level pricing. - :vartype inherited_from: str - :ivar resources_coverage_status: This field is available for subscription-level only, and - reflects the coverage status of the resources under the subscription. Please note: The - "pricingTier" field reflects the plan status of the subscription. However, since the plan - status can also be defined at the resource level, there might be misalignment between the - subscription's plan status and the resource status. This field helps indicate the coverage - status of the resources. Known values are: "FullyCovered", "PartiallyCovered", and - "NotCovered". - :vartype resources_coverage_status: str or ~azure.mgmt.security.models.ResourcesCoverageStatus - :ivar extensions: Optional. List of extensions offered under a plan. - :vartype extensions: list[~azure.mgmt.security.models.Extension] - :ivar deprecated: Optional. True if the plan is deprecated. If there are replacing plans they - will appear in ``replacedBy`` property. - :vartype deprecated: bool - :ivar replaced_by: Optional. List of plans that replace this plan. This property exists only if - this plan is deprecated. - :vartype replaced_by: list[str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "free_trial_remaining_time": {"readonly": True}, - "enablement_time": {"readonly": True}, - "inherited": {"readonly": True}, - "inherited_from": {"readonly": True}, - "resources_coverage_status": {"readonly": True}, - "deprecated": {"readonly": True}, - "replaced_by": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "pricing_tier": {"key": "properties.pricingTier", "type": "str"}, - "sub_plan": {"key": "properties.subPlan", "type": "str"}, - "free_trial_remaining_time": {"key": "properties.freeTrialRemainingTime", "type": "duration"}, - "enablement_time": {"key": "properties.enablementTime", "type": "iso-8601"}, - "enforce": {"key": "properties.enforce", "type": "str"}, - "inherited": {"key": "properties.inherited", "type": "str"}, - "inherited_from": {"key": "properties.inheritedFrom", "type": "str"}, - "resources_coverage_status": {"key": "properties.resourcesCoverageStatus", "type": "str"}, - "extensions": {"key": "properties.extensions", "type": "[Extension]"}, - "deprecated": {"key": "properties.deprecated", "type": "bool"}, - "replaced_by": {"key": "properties.replacedBy", "type": "[str]"}, - } - - def __init__( - self, - *, - pricing_tier: Optional[Union[str, "_models.PricingTier"]] = None, - sub_plan: Optional[str] = None, - enforce: Optional[Union[str, "_models.Enforce"]] = None, - extensions: Optional[list["_models.Extension"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword pricing_tier: Indicates whether the Defender plan is enabled on the selected scope. - Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard - tier offers advanced security capabilities, while the free tier offers basic security features. - Known values are: "Free" and "Standard". - :paramtype pricing_tier: str or ~azure.mgmt.security.models.PricingTier - :keyword sub_plan: The sub-plan selected for a Standard pricing configuration, when more than - one sub-plan is available. Each sub-plan enables a set of security features. When not - specified, full plan is applied. For VirtualMachines plan, available sub plans are 'P1' & 'P2', - where for resource level only 'P1' sub plan is supported. - :paramtype sub_plan: str - :keyword enforce: If set to "False", it allows the descendants of this scope to override the - pricing configuration set on this scope (allows setting inherited="False"). If set to "True", - it prevents overrides and forces this pricing configuration on all the descendants of this - scope. This field is only available for subscription-level pricing. Known values are: "False" - and "True". - :paramtype enforce: str or ~azure.mgmt.security.models.Enforce - :keyword extensions: Optional. List of extensions offered under a plan. - :paramtype extensions: list[~azure.mgmt.security.models.Extension] - """ - super().__init__(**kwargs) - self.pricing_tier = pricing_tier - self.sub_plan = sub_plan - self.free_trial_remaining_time: Optional[datetime.timedelta] = None - self.enablement_time: Optional[datetime.datetime] = None - self.enforce = enforce - self.inherited: Optional[Union[str, "_models.Inherited"]] = None - self.inherited_from: Optional[str] = None - self.resources_coverage_status: Optional[Union[str, "_models.ResourcesCoverageStatus"]] = None - self.extensions = extensions - self.deprecated: Optional[bool] = None - self.replaced_by: Optional[list[str]] = None - - -class PricingList(_serialization.Model): - """List of pricing configurations response. - - All required parameters must be populated in order to send to server. - - :ivar value: List of pricing configurations. Required. - :vartype value: list[~azure.mgmt.security.models.Pricing] - """ - - _validation = { - "value": {"required": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Pricing]"}, - } - - def __init__(self, *, value: list["_models.Pricing"], **kwargs: Any) -> None: - """ - :keyword value: List of pricing configurations. Required. - :paramtype value: list[~azure.mgmt.security.models.Pricing] - """ - super().__init__(**kwargs) - self.value = value - - -class PrivateEndpoint(_serialization.Model): - """The private endpoint resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: The ARM identifier for private endpoint. - :vartype id: str - """ - - _validation = { - "id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id: Optional[str] = None - - -class PrivateEndpointConnection(ResourceAutoGenerated2): - """The private endpoint connection resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. E.g. - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}". - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar group_ids: The group ids for the private endpoint resource. - :vartype group_ids: list[str] - :ivar private_endpoint: The private endpoint resource. - :vartype private_endpoint: ~azure.mgmt.security.models.PrivateEndpoint - :ivar private_link_service_connection_state: A collection of information about the state of the - connection between service consumer and provider. - :vartype private_link_service_connection_state: - ~azure.mgmt.security.models.PrivateLinkServiceConnectionState - :ivar provisioning_state: The provisioning state of the private endpoint connection resource. - Known values are: "Succeeded", "Creating", "Deleting", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.security.models.PrivateEndpointConnectionProvisioningState - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "group_ids": {"readonly": True}, - "provisioning_state": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "group_ids": {"key": "properties.groupIds", "type": "[str]"}, - "private_endpoint": {"key": "properties.privateEndpoint", "type": "PrivateEndpoint"}, - "private_link_service_connection_state": { - "key": "properties.privateLinkServiceConnectionState", - "type": "PrivateLinkServiceConnectionState", - }, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - } - - def __init__( - self, - *, - private_endpoint: Optional["_models.PrivateEndpoint"] = None, - private_link_service_connection_state: Optional["_models.PrivateLinkServiceConnectionState"] = None, - **kwargs: Any - ) -> None: - """ - :keyword private_endpoint: The private endpoint resource. - :paramtype private_endpoint: ~azure.mgmt.security.models.PrivateEndpoint - :keyword private_link_service_connection_state: A collection of information about the state of - the connection between service consumer and provider. - :paramtype private_link_service_connection_state: - ~azure.mgmt.security.models.PrivateLinkServiceConnectionState - """ - super().__init__(**kwargs) - self.group_ids: Optional[list[str]] = None - self.private_endpoint = private_endpoint - self.private_link_service_connection_state = private_link_service_connection_state - self.provisioning_state: Optional[Union[str, "_models.PrivateEndpointConnectionProvisioningState"]] = None - - -class PrivateEndpointConnectionListResult(_serialization.Model): - """List of private endpoint connections associated with the specified resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Array of private endpoint connections. - :vartype value: list[~azure.mgmt.security.models.PrivateEndpointConnection] - :ivar next_link: URL to get the next set of operation list results (if there are any). - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateEndpointConnection]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[list["_models.PrivateEndpointConnection"]] = None, **kwargs: Any) -> None: - """ - :keyword value: Array of private endpoint connections. - :paramtype value: list[~azure.mgmt.security.models.PrivateEndpointConnection] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class PrivateLinkParameters(_serialization.Model): - """Parameter group. - - All required parameters must be populated in order to send to server. - - :ivar private_link_name: The name of the private link resource. Must be unique within the - resource group and follow Azure naming conventions. Required. - :vartype private_link_name: str - """ - - _validation = { - "private_link_name": { - "required": True, - "max_length": 63, - "min_length": 3, - "pattern": r"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$", - }, - } - - _attribute_map = { - "private_link_name": {"key": "privateLinkName", "type": "str"}, - } - - def __init__(self, *, private_link_name: str, **kwargs: Any) -> None: - """ - :keyword private_link_name: The name of the private link resource. Must be unique within the - resource group and follow Azure naming conventions. Required. - :paramtype private_link_name: str - """ - super().__init__(**kwargs) - self.private_link_name = private_link_name - - -class ResourceAutoGenerated3(_serialization.Model): - """Common fields that are returned in the response for all Azure Resource Manager resources. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. E.g. - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}". - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - self.system_data: Optional["_models.SystemData"] = None - - -class TrackedResourceAutoGenerated(ResourceAutoGenerated3): - """The resource model definition for an Azure Resource Manager tracked top level resource which - has 'tags' and a 'location'. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Fully qualified resource ID for the resource. E.g. - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}". - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar location: The geo-location where the resource lives. Required. - :vartype location: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "location": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "tags": {"key": "tags", "type": "{str}"}, - "location": {"key": "location", "type": "str"}, - } - - def __init__(self, *, location: str, tags: Optional[dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword location: The geo-location where the resource lives. Required. - :paramtype location: str - """ - super().__init__(**kwargs) - self.tags = tags - self.location = location - - -class PrivateLinkResource(TrackedResourceAutoGenerated): - """A private link resource that enables secure, private connectivity to Microsoft Defender for - Cloud services. This resource manages the lifecycle of private endpoint connections and - provides the necessary infrastructure for private connectivity. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Fully qualified resource ID for the resource. E.g. - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}". - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar location: The geo-location where the resource lives. Required. - :vartype location: str - :ivar provisioning_state: The current provisioning state of the private link resource. - Indicates whether the resource is being created, updated, deleted, or has completed - successfully. Known values are: "Succeeded", "Failed", and "Updating". - :vartype provisioning_state: str or ~azure.mgmt.security.models.ProvisioningState - :ivar private_endpoint_connections: List of private endpoint connections associated with this - private link. Each connection represents a private endpoint from a customer's virtual network. - :vartype private_endpoint_connections: - list[~azure.mgmt.security.models.PrivateEndpointConnection] - :ivar private_link_resources: List of private link resources available for connection. For - Defender services, this typically includes the 'containers' group with 'api' and regional data - endpoints. - :vartype private_link_resources: - list[~azure.mgmt.security.models.PrivateLinkResourceAutoGenerated] - :ivar public_network_access: This determines if traffic is allowed over public network. By - default it is disabled. Known values are: "Enabled" and "Disabled". - :vartype public_network_access: str or ~azure.mgmt.security.models.PublicNetworkAccess - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "location": {"required": True}, - "provisioning_state": {"readonly": True}, - "private_endpoint_connections": {"readonly": True}, - "private_link_resources": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "tags": {"key": "tags", "type": "{str}"}, - "location": {"key": "location", "type": "str"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "private_endpoint_connections": { - "key": "properties.privateEndpointConnections", - "type": "[PrivateEndpointConnection]", - }, - "private_link_resources": { - "key": "properties.privateLinkResources", - "type": "[PrivateLinkResourceAutoGenerated]", - }, - "public_network_access": {"key": "properties.publicNetworkAccess", "type": "str"}, - } - - def __init__( - self, - *, - location: str, - tags: Optional[dict[str, str]] = None, - public_network_access: Union[str, "_models.PublicNetworkAccess"] = "Disabled", - **kwargs: Any - ) -> None: - """ - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword location: The geo-location where the resource lives. Required. - :paramtype location: str - :keyword public_network_access: This determines if traffic is allowed over public network. By - default it is disabled. Known values are: "Enabled" and "Disabled". - :paramtype public_network_access: str or ~azure.mgmt.security.models.PublicNetworkAccess - """ - super().__init__(tags=tags, location=location, **kwargs) - self.provisioning_state: Optional[Union[str, "_models.ProvisioningState"]] = None - self.private_endpoint_connections: Optional[list["_models.PrivateEndpointConnection"]] = None - self.private_link_resources: Optional[list["_models.PrivateLinkResourceAutoGenerated"]] = None - self.public_network_access = public_network_access - - -class PrivateLinkResourceAutoGenerated(ResourceAutoGenerated2): - """A private link resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. E.g. - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}". - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar group_id: The private link resource group id. - :vartype group_id: str - :ivar required_members: The private link resource required member names. - :vartype required_members: list[str] - :ivar required_zone_names: The private link resource private link DNS zone name. - :vartype required_zone_names: list[str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "group_id": {"readonly": True}, - "required_members": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "group_id": {"key": "properties.groupId", "type": "str"}, - "required_members": {"key": "properties.requiredMembers", "type": "[str]"}, - "required_zone_names": {"key": "properties.requiredZoneNames", "type": "[str]"}, - } - - def __init__(self, *, required_zone_names: Optional[list[str]] = None, **kwargs: Any) -> None: - """ - :keyword required_zone_names: The private link resource private link DNS zone name. - :paramtype required_zone_names: list[str] - """ - super().__init__(**kwargs) - self.group_id: Optional[str] = None - self.required_members: Optional[list[str]] = None - self.required_zone_names = required_zone_names - - -class PrivateLinkResourceListResult(_serialization.Model): - """A list of private link resources. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Array of private link resources. - :vartype value: list[~azure.mgmt.security.models.PrivateLinkResourceAutoGenerated] - :ivar next_link: URL to get the next set of operation list results (if there are any). - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateLinkResourceAutoGenerated]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[list["_models.PrivateLinkResourceAutoGenerated"]] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Array of private link resources. - :paramtype value: list[~azure.mgmt.security.models.PrivateLinkResourceAutoGenerated] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class PrivateLinkServiceConnectionState(_serialization.Model): - """A collection of information about the state of the connection between service consumer and - provider. - - :ivar status: Indicates whether the connection has been Approved/Rejected/Removed by the owner - of the service. Known values are: "Pending", "Approved", and "Rejected". - :vartype status: str or ~azure.mgmt.security.models.PrivateEndpointServiceConnectionStatus - :ivar description: The reason for approval/rejection of the connection. - :vartype description: str - :ivar actions_required: A message indicating if changes on the service provider require any - updates on the consumer. - :vartype actions_required: str - """ - - _attribute_map = { - "status": {"key": "status", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "actions_required": {"key": "actionsRequired", "type": "str"}, - } - - def __init__( - self, - *, - status: Optional[Union[str, "_models.PrivateEndpointServiceConnectionStatus"]] = None, - description: Optional[str] = None, - actions_required: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword status: Indicates whether the connection has been Approved/Rejected/Removed by the - owner of the service. Known values are: "Pending", "Approved", and "Rejected". - :paramtype status: str or ~azure.mgmt.security.models.PrivateEndpointServiceConnectionStatus - :keyword description: The reason for approval/rejection of the connection. - :paramtype description: str - :keyword actions_required: A message indicating if changes on the service provider require any - updates on the consumer. - :paramtype actions_required: str - """ - super().__init__(**kwargs) - self.status = status - self.description = description - self.actions_required = actions_required - - -class PrivateLinksList(_serialization.Model): - """Paginated list of private link resources. Contains an array of private links and optional - pagination information. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: Collection of private links in this page. Required. - :vartype value: list[~azure.mgmt.security.models.PrivateLinkResource] - :ivar next_link: The URI to fetch the next page of private links. Present only when there are - additional results available. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True, "readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateLinkResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.PrivateLinkResource"]] = None - self.next_link: Optional[str] = None - - -class PrivateLinkUpdate(_serialization.Model): - """Request payload for updating a private link resource. Used in PATCH operations to update - specific mutable properties without affecting the entire resource configuration. - - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, tags: Optional[dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.tags = tags - - -class ProcessNotAllowed(AllowlistCustomAlertRule): - """Execution of a process that isn't allowed. Allow list consists of process names to allow. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar value_type: The value type of the items in the list. Known values are: "IpCidr" and - "String". - :vartype value_type: str or ~azure.mgmt.security.models.ValueType - :ivar allowlist_values: The values to allow. The format of the values depends on the rule type. - Required. - :vartype allowlist_values: list[str] - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "value_type": {"readonly": True}, - "allowlist_values": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "value_type": {"key": "valueType", "type": "str"}, - "allowlist_values": {"key": "allowlistValues", "type": "[str]"}, - } - - def __init__(self, *, is_enabled: bool, allowlist_values: list[str], **kwargs: Any) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword allowlist_values: The values to allow. The format of the values depends on the rule - type. Required. - :paramtype allowlist_values: list[str] - """ - super().__init__(is_enabled=is_enabled, allowlist_values=allowlist_values, **kwargs) - self.rule_type: str = "ProcessNotAllowed" - - -class QueryCheck(_serialization.Model): - """The rule query details. - - :ivar query: The rule query. - :vartype query: str - :ivar expected_result: Expected result. - :vartype expected_result: list[list[str]] - :ivar column_names: Column names of expected result. - :vartype column_names: list[str] - """ - - _attribute_map = { - "query": {"key": "query", "type": "str"}, - "expected_result": {"key": "expectedResult", "type": "[[str]]"}, - "column_names": {"key": "columnNames", "type": "[str]"}, - } - - def __init__( - self, - *, - query: Optional[str] = None, - expected_result: Optional[list[list[str]]] = None, - column_names: Optional[list[str]] = None, - **kwargs: Any - ) -> None: - """ - :keyword query: The rule query. - :paramtype query: str - :keyword expected_result: Expected result. - :paramtype expected_result: list[list[str]] - :keyword column_names: Column names of expected result. - :paramtype column_names: list[str] - """ - super().__init__(**kwargs) - self.query = query - self.expected_result = expected_result - self.column_names = column_names - - -class QueuePurgesNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of device queue purges is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "QueuePurgesNotInAllowedRange" - - -class RecommendationConfigurationProperties(_serialization.Model): - """The type of IoT Security recommendation. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar recommendation_type: The type of IoT Security recommendation. Required. Known values are: - "IoT_ACRAuthentication", "IoT_AgentSendsUnutilizedMessages", "IoT_Baseline", - "IoT_EdgeHubMemOptimize", "IoT_EdgeLoggingOptions", "IoT_InconsistentModuleSettings", - "IoT_InstallAgent", "IoT_IPFilter_DenyAll", "IoT_IPFilter_PermissiveRule", "IoT_OpenPorts", - "IoT_PermissiveFirewallPolicy", "IoT_PermissiveInputFirewallRules", - "IoT_PermissiveOutputFirewallRules", "IoT_PrivilegedDockerOptions", "IoT_SharedCredentials", - and "IoT_VulnerableTLSCipherSuite". - :vartype recommendation_type: str or ~azure.mgmt.security.models.RecommendationType - :ivar name: - :vartype name: str - :ivar status: Recommendation status. When the recommendation status is disabled recommendations - are not generated. Known values are: "Disabled" and "Enabled". - :vartype status: str or ~azure.mgmt.security.models.RecommendationConfigStatus - """ - - _validation = { - "recommendation_type": {"required": True}, - "name": {"readonly": True}, - "status": {"required": True}, - } - - _attribute_map = { - "recommendation_type": {"key": "recommendationType", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "status": {"key": "status", "type": "str"}, - } - - def __init__( - self, - *, - recommendation_type: Union[str, "_models.RecommendationType"], - status: Union[str, "_models.RecommendationConfigStatus"] = "Enabled", - **kwargs: Any - ) -> None: - """ - :keyword recommendation_type: The type of IoT Security recommendation. Required. Known values - are: "IoT_ACRAuthentication", "IoT_AgentSendsUnutilizedMessages", "IoT_Baseline", - "IoT_EdgeHubMemOptimize", "IoT_EdgeLoggingOptions", "IoT_InconsistentModuleSettings", - "IoT_InstallAgent", "IoT_IPFilter_DenyAll", "IoT_IPFilter_PermissiveRule", "IoT_OpenPorts", - "IoT_PermissiveFirewallPolicy", "IoT_PermissiveInputFirewallRules", - "IoT_PermissiveOutputFirewallRules", "IoT_PrivilegedDockerOptions", "IoT_SharedCredentials", - and "IoT_VulnerableTLSCipherSuite". - :paramtype recommendation_type: str or ~azure.mgmt.security.models.RecommendationType - :keyword status: Recommendation status. When the recommendation status is disabled - recommendations are not generated. Known values are: "Disabled" and "Enabled". - :paramtype status: str or ~azure.mgmt.security.models.RecommendationConfigStatus - """ - super().__init__(**kwargs) - self.recommendation_type = recommendation_type - self.name: Optional[str] = None - self.status = status - - -class RegulatoryComplianceAssessment(Resource): - """Regulatory compliance assessment details and state. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar description: The description of the regulatory compliance assessment. - :vartype description: str - :ivar assessment_type: The expected type of assessment contained in the AssessmentDetailsLink. - :vartype assessment_type: str - :ivar assessment_details_link: Link to more detailed assessment results data. The response type - will be according to the assessmentType field. - :vartype assessment_details_link: str - :ivar state: Aggregative state based on the assessment's scanned resources states. Known values - are: "Passed", "Failed", "Skipped", and "Unsupported". - :vartype state: str or ~azure.mgmt.security.models.State - :ivar passed_resources: The given assessment's related resources count with passed state. - :vartype passed_resources: int - :ivar failed_resources: The given assessment's related resources count with failed state. - :vartype failed_resources: int - :ivar skipped_resources: The given assessment's related resources count with skipped state. - :vartype skipped_resources: int - :ivar unsupported_resources: The given assessment's related resources count with unsupported - state. - :vartype unsupported_resources: int - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "description": {"readonly": True}, - "assessment_type": {"readonly": True}, - "assessment_details_link": {"readonly": True}, - "passed_resources": {"readonly": True}, - "failed_resources": {"readonly": True}, - "skipped_resources": {"readonly": True}, - "unsupported_resources": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "assessment_type": {"key": "properties.assessmentType", "type": "str"}, - "assessment_details_link": {"key": "properties.assessmentDetailsLink", "type": "str"}, - "state": {"key": "properties.state", "type": "str"}, - "passed_resources": {"key": "properties.passedResources", "type": "int"}, - "failed_resources": {"key": "properties.failedResources", "type": "int"}, - "skipped_resources": {"key": "properties.skippedResources", "type": "int"}, - "unsupported_resources": {"key": "properties.unsupportedResources", "type": "int"}, - } - - def __init__(self, *, state: Optional[Union[str, "_models.State"]] = None, **kwargs: Any) -> None: - """ - :keyword state: Aggregative state based on the assessment's scanned resources states. Known - values are: "Passed", "Failed", "Skipped", and "Unsupported". - :paramtype state: str or ~azure.mgmt.security.models.State - """ - super().__init__(**kwargs) - self.description: Optional[str] = None - self.assessment_type: Optional[str] = None - self.assessment_details_link: Optional[str] = None - self.state = state - self.passed_resources: Optional[int] = None - self.failed_resources: Optional[int] = None - self.skipped_resources: Optional[int] = None - self.unsupported_resources: Optional[int] = None - - -class RegulatoryComplianceAssessmentList(_serialization.Model): - """List of regulatory compliance assessment response. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: Required. - :vartype value: list[~azure.mgmt.security.models.RegulatoryComplianceAssessment] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[RegulatoryComplianceAssessment]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: list["_models.RegulatoryComplianceAssessment"], **kwargs: Any) -> None: - """ - :keyword value: Required. - :paramtype value: list[~azure.mgmt.security.models.RegulatoryComplianceAssessment] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class RegulatoryComplianceControl(Resource): - """Regulatory compliance control details and state. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar description: The description of the regulatory compliance control. - :vartype description: str - :ivar state: Aggregative state based on the control's supported assessments states. Known - values are: "Passed", "Failed", "Skipped", and "Unsupported". - :vartype state: str or ~azure.mgmt.security.models.State - :ivar passed_assessments: The number of supported regulatory compliance assessments of the - given control with a passed state. - :vartype passed_assessments: int - :ivar failed_assessments: The number of supported regulatory compliance assessments of the - given control with a failed state. - :vartype failed_assessments: int - :ivar skipped_assessments: The number of supported regulatory compliance assessments of the - given control with a skipped state. - :vartype skipped_assessments: int - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "description": {"readonly": True}, - "passed_assessments": {"readonly": True}, - "failed_assessments": {"readonly": True}, - "skipped_assessments": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "state": {"key": "properties.state", "type": "str"}, - "passed_assessments": {"key": "properties.passedAssessments", "type": "int"}, - "failed_assessments": {"key": "properties.failedAssessments", "type": "int"}, - "skipped_assessments": {"key": "properties.skippedAssessments", "type": "int"}, - } - - def __init__(self, *, state: Optional[Union[str, "_models.State"]] = None, **kwargs: Any) -> None: - """ - :keyword state: Aggregative state based on the control's supported assessments states. Known - values are: "Passed", "Failed", "Skipped", and "Unsupported". - :paramtype state: str or ~azure.mgmt.security.models.State - """ - super().__init__(**kwargs) - self.description: Optional[str] = None - self.state = state - self.passed_assessments: Optional[int] = None - self.failed_assessments: Optional[int] = None - self.skipped_assessments: Optional[int] = None - - -class RegulatoryComplianceControlList(_serialization.Model): - """List of regulatory compliance controls response. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: List of regulatory compliance controls. Required. - :vartype value: list[~azure.mgmt.security.models.RegulatoryComplianceControl] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[RegulatoryComplianceControl]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: list["_models.RegulatoryComplianceControl"], **kwargs: Any) -> None: - """ - :keyword value: List of regulatory compliance controls. Required. - :paramtype value: list[~azure.mgmt.security.models.RegulatoryComplianceControl] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class RegulatoryComplianceStandard(Resource): - """Regulatory compliance standard details and state. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar state: Aggregative state based on the standard's supported controls states. Known values - are: "Passed", "Failed", "Skipped", and "Unsupported". - :vartype state: str or ~azure.mgmt.security.models.State - :ivar passed_controls: The number of supported regulatory compliance controls of the given - standard with a passed state. - :vartype passed_controls: int - :ivar failed_controls: The number of supported regulatory compliance controls of the given - standard with a failed state. - :vartype failed_controls: int - :ivar skipped_controls: The number of supported regulatory compliance controls of the given - standard with a skipped state. - :vartype skipped_controls: int - :ivar unsupported_controls: The number of regulatory compliance controls of the given standard - which are unsupported by automated assessments. - :vartype unsupported_controls: int - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "passed_controls": {"readonly": True}, - "failed_controls": {"readonly": True}, - "skipped_controls": {"readonly": True}, - "unsupported_controls": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "state": {"key": "properties.state", "type": "str"}, - "passed_controls": {"key": "properties.passedControls", "type": "int"}, - "failed_controls": {"key": "properties.failedControls", "type": "int"}, - "skipped_controls": {"key": "properties.skippedControls", "type": "int"}, - "unsupported_controls": {"key": "properties.unsupportedControls", "type": "int"}, - } - - def __init__(self, *, state: Optional[Union[str, "_models.State"]] = None, **kwargs: Any) -> None: - """ - :keyword state: Aggregative state based on the standard's supported controls states. Known - values are: "Passed", "Failed", "Skipped", and "Unsupported". - :paramtype state: str or ~azure.mgmt.security.models.State - """ - super().__init__(**kwargs) - self.state = state - self.passed_controls: Optional[int] = None - self.failed_controls: Optional[int] = None - self.skipped_controls: Optional[int] = None - self.unsupported_controls: Optional[int] = None - - -class RegulatoryComplianceStandardList(_serialization.Model): - """List of regulatory compliance standards response. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: Required. - :vartype value: list[~azure.mgmt.security.models.RegulatoryComplianceStandard] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[RegulatoryComplianceStandard]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: list["_models.RegulatoryComplianceStandard"], **kwargs: Any) -> None: - """ - :keyword value: Required. - :paramtype value: list[~azure.mgmt.security.models.RegulatoryComplianceStandard] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class Remediation(_serialization.Model): - """Remediation details. - - :ivar description: Remediation description. - :vartype description: str - :ivar scripts: Remediation script. - :vartype scripts: list[str] - :ivar automated: Is remediation automated. - :vartype automated: bool - :ivar portal_link: Optional link to remediate in Azure Portal. - :vartype portal_link: str - """ - - _attribute_map = { - "description": {"key": "description", "type": "str"}, - "scripts": {"key": "scripts", "type": "[str]"}, - "automated": {"key": "automated", "type": "bool"}, - "portal_link": {"key": "portalLink", "type": "str"}, - } - - def __init__( - self, - *, - description: Optional[str] = None, - scripts: Optional[list[str]] = None, - automated: Optional[bool] = None, - portal_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword description: Remediation description. - :paramtype description: str - :keyword scripts: Remediation script. - :paramtype scripts: list[str] - :keyword automated: Is remediation automated. - :paramtype automated: bool - :keyword portal_link: Optional link to remediate in Azure Portal. - :paramtype portal_link: str - """ - super().__init__(**kwargs) - self.description = description - self.scripts = scripts - self.automated = automated - self.portal_link = portal_link - - -class RemediationEta(_serialization.Model): - """The ETA (estimated time of arrival) for remediation. - - All required parameters must be populated in order to send to server. - - :ivar eta: ETA for remediation. Required. - :vartype eta: ~datetime.datetime - :ivar justification: Justification for change of Eta. Required. - :vartype justification: str - """ - - _validation = { - "eta": {"required": True}, - "justification": {"required": True}, - } - - _attribute_map = { - "eta": {"key": "eta", "type": "iso-8601"}, - "justification": {"key": "justification", "type": "str"}, - } - - def __init__(self, *, eta: datetime.datetime, justification: str, **kwargs: Any) -> None: - """ - :keyword eta: ETA for remediation. Required. - :paramtype eta: ~datetime.datetime - :keyword justification: Justification for change of Eta. Required. - :paramtype justification: str - """ - super().__init__(**kwargs) - self.eta = eta - self.justification = justification - - -class ResourceDetailsAutoGenerated(_serialization.Model): - """The resource details of the health report. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar source: The status of the health report. Known values are: "Azure", "OnPremise", and - "OnPremiseSql". - :vartype source: str or ~azure.mgmt.security.models.Source - :ivar id: The azure id of the resource. - :vartype id: str - :ivar connector_id: The id of the connector. - :vartype connector_id: str - """ - - _validation = { - "id": {"readonly": True}, - "connector_id": {"readonly": True}, - } - - _attribute_map = { - "source": {"key": "source", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "connector_id": {"key": "connectorId", "type": "str"}, - } - - def __init__(self, *, source: Optional[Union[str, "_models.Source"]] = None, **kwargs: Any) -> None: - """ - :keyword source: The status of the health report. Known values are: "Azure", "OnPremise", and - "OnPremiseSql". - :paramtype source: str or ~azure.mgmt.security.models.Source - """ - super().__init__(**kwargs) - self.source = source - self.id: Optional[str] = None - self.connector_id: Optional[str] = None - - -class RuleResults(Resource): - """Rule results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: Rule results properties. - :vartype properties: ~azure.mgmt.security.models.RuleResultsProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "RuleResultsProperties"}, - } - - def __init__(self, *, properties: Optional["_models.RuleResultsProperties"] = None, **kwargs: Any) -> None: - """ - :keyword properties: Rule results properties. - :paramtype properties: ~azure.mgmt.security.models.RuleResultsProperties - """ - super().__init__(**kwargs) - self.properties = properties - - -class RuleResultsInput(_serialization.Model): - """Rule results input. - - :ivar latest_scan: Take results from latest scan. - :vartype latest_scan: bool - :ivar results: Expected results to be inserted into the baseline. Leave this field empty if - latestScan == true. - :vartype results: list[list[str]] - """ - - _attribute_map = { - "latest_scan": {"key": "latestScan", "type": "bool"}, - "results": {"key": "results", "type": "[[str]]"}, - } - - def __init__( - self, *, latest_scan: Optional[bool] = None, results: Optional[list[list[str]]] = None, **kwargs: Any - ) -> None: - """ - :keyword latest_scan: Take results from latest scan. - :paramtype latest_scan: bool - :keyword results: Expected results to be inserted into the baseline. Leave this field empty if - latestScan == true. - :paramtype results: list[list[str]] - """ - super().__init__(**kwargs) - self.latest_scan = latest_scan - self.results = results - - -class RuleResultsProperties(_serialization.Model): - """Rule results properties. - - :ivar results: Expected results in the baseline. - :vartype results: list[list[str]] - :ivar latest_scan: Take results from latest scan. - :vartype latest_scan: bool - """ - - _attribute_map = { - "results": {"key": "results", "type": "[[str]]"}, - "latest_scan": {"key": "latestScan", "type": "bool"}, - } - - def __init__( - self, *, results: Optional[list[list[str]]] = None, latest_scan: Optional[bool] = None, **kwargs: Any - ) -> None: - """ - :keyword results: Expected results in the baseline. - :paramtype results: list[list[str]] - :keyword latest_scan: Take results from latest scan. - :paramtype latest_scan: bool - """ - super().__init__(**kwargs) - self.results = results - self.latest_scan = latest_scan - - -class RulesResults(_serialization.Model): - """A list of rules results. - - :ivar value: List of rule results. - :vartype value: list[~azure.mgmt.security.models.RuleResults] - """ - - _attribute_map = { - "value": {"key": "value", "type": "[RuleResults]"}, - } - - def __init__(self, *, value: Optional[list["_models.RuleResults"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of rule results. - :paramtype value: list[~azure.mgmt.security.models.RuleResults] - """ - super().__init__(**kwargs) - self.value = value - - -class RulesResultsInput(_serialization.Model): - """Rules results input. - - :ivar latest_scan: Take results from latest scan. - :vartype latest_scan: bool - :ivar results: Expected results to be inserted into the baseline. Leave this field empty if - latestScan == true. - :vartype results: dict[str, list[list[str]]] - """ - - _attribute_map = { - "latest_scan": {"key": "latestScan", "type": "bool"}, - "results": {"key": "results", "type": "{[[str]]}"}, - } - - def __init__( - self, *, latest_scan: Optional[bool] = None, results: Optional[dict[str, list[list[str]]]] = None, **kwargs: Any - ) -> None: - """ - :keyword latest_scan: Take results from latest scan. - :paramtype latest_scan: bool - :keyword results: Expected results to be inserted into the baseline. Leave this field empty if - latestScan == true. - :paramtype results: dict[str, list[list[str]]] - """ - super().__init__(**kwargs) - self.latest_scan = latest_scan - self.results = results - - -class ScanPropertiesV2(_serialization.Model): - """A vulnerability assessment scan record properties. - - :ivar trigger_type: The scan trigger type. Known values are: "OnDemand" and "Recurring". - :vartype trigger_type: str or ~azure.mgmt.security.models.ScanTriggerType - :ivar state: The scan status. Known values are: "Failed", "FailedToRun", "InProgress", and - "Passed". - :vartype state: str or ~azure.mgmt.security.models.ScanState - :ivar server: The server name. - :vartype server: str - :ivar database: The database name. - :vartype database: str - :ivar sql_version: The SQL version. - :vartype sql_version: str - :ivar start_time: The scan start time (UTC). - :vartype start_time: ~datetime.datetime - :ivar end_time: Scan results are valid until end time (UTC). - :vartype end_time: ~datetime.datetime - :ivar high_severity_failed_rules_count: The number of failed rules with high severity. - :vartype high_severity_failed_rules_count: int - :ivar medium_severity_failed_rules_count: The number of failed rules with medium severity. - :vartype medium_severity_failed_rules_count: int - :ivar low_severity_failed_rules_count: The number of failed rules with low severity. - :vartype low_severity_failed_rules_count: int - :ivar total_passed_rules_count: The number of total passed rules. - :vartype total_passed_rules_count: int - :ivar total_failed_rules_count: The number of total failed rules. - :vartype total_failed_rules_count: int - :ivar total_rules_count: The number of total rules assessed. - :vartype total_rules_count: int - :ivar is_baseline_applied: Baseline created for this database, and has one or more rules. - :vartype is_baseline_applied: bool - :ivar last_scan_time: Last scan time. - :vartype last_scan_time: ~datetime.datetime - """ - - _attribute_map = { - "trigger_type": {"key": "triggerType", "type": "str"}, - "state": {"key": "state", "type": "str"}, - "server": {"key": "server", "type": "str"}, - "database": {"key": "database", "type": "str"}, - "sql_version": {"key": "sqlVersion", "type": "str"}, - "start_time": {"key": "startTime", "type": "iso-8601"}, - "end_time": {"key": "endTime", "type": "iso-8601"}, - "high_severity_failed_rules_count": {"key": "highSeverityFailedRulesCount", "type": "int"}, - "medium_severity_failed_rules_count": {"key": "mediumSeverityFailedRulesCount", "type": "int"}, - "low_severity_failed_rules_count": {"key": "lowSeverityFailedRulesCount", "type": "int"}, - "total_passed_rules_count": {"key": "totalPassedRulesCount", "type": "int"}, - "total_failed_rules_count": {"key": "totalFailedRulesCount", "type": "int"}, - "total_rules_count": {"key": "totalRulesCount", "type": "int"}, - "is_baseline_applied": {"key": "isBaselineApplied", "type": "bool"}, - "last_scan_time": {"key": "lastScanTime", "type": "iso-8601"}, - } - - def __init__( - self, - *, - trigger_type: Optional[Union[str, "_models.ScanTriggerType"]] = None, - state: Optional[Union[str, "_models.ScanState"]] = None, - server: Optional[str] = None, - database: Optional[str] = None, - sql_version: Optional[str] = None, - start_time: Optional[datetime.datetime] = None, - end_time: Optional[datetime.datetime] = None, - high_severity_failed_rules_count: Optional[int] = None, - medium_severity_failed_rules_count: Optional[int] = None, - low_severity_failed_rules_count: Optional[int] = None, - total_passed_rules_count: Optional[int] = None, - total_failed_rules_count: Optional[int] = None, - total_rules_count: Optional[int] = None, - is_baseline_applied: Optional[bool] = None, - last_scan_time: Optional[datetime.datetime] = None, - **kwargs: Any - ) -> None: - """ - :keyword trigger_type: The scan trigger type. Known values are: "OnDemand" and "Recurring". - :paramtype trigger_type: str or ~azure.mgmt.security.models.ScanTriggerType - :keyword state: The scan status. Known values are: "Failed", "FailedToRun", "InProgress", and - "Passed". - :paramtype state: str or ~azure.mgmt.security.models.ScanState - :keyword server: The server name. - :paramtype server: str - :keyword database: The database name. - :paramtype database: str - :keyword sql_version: The SQL version. - :paramtype sql_version: str - :keyword start_time: The scan start time (UTC). - :paramtype start_time: ~datetime.datetime - :keyword end_time: Scan results are valid until end time (UTC). - :paramtype end_time: ~datetime.datetime - :keyword high_severity_failed_rules_count: The number of failed rules with high severity. - :paramtype high_severity_failed_rules_count: int - :keyword medium_severity_failed_rules_count: The number of failed rules with medium severity. - :paramtype medium_severity_failed_rules_count: int - :keyword low_severity_failed_rules_count: The number of failed rules with low severity. - :paramtype low_severity_failed_rules_count: int - :keyword total_passed_rules_count: The number of total passed rules. - :paramtype total_passed_rules_count: int - :keyword total_failed_rules_count: The number of total failed rules. - :paramtype total_failed_rules_count: int - :keyword total_rules_count: The number of total rules assessed. - :paramtype total_rules_count: int - :keyword is_baseline_applied: Baseline created for this database, and has one or more rules. - :paramtype is_baseline_applied: bool - :keyword last_scan_time: Last scan time. - :paramtype last_scan_time: ~datetime.datetime - """ - super().__init__(**kwargs) - self.trigger_type = trigger_type - self.state = state - self.server = server - self.database = database - self.sql_version = sql_version - self.start_time = start_time - self.end_time = end_time - self.high_severity_failed_rules_count = high_severity_failed_rules_count - self.medium_severity_failed_rules_count = medium_severity_failed_rules_count - self.low_severity_failed_rules_count = low_severity_failed_rules_count - self.total_passed_rules_count = total_passed_rules_count - self.total_failed_rules_count = total_failed_rules_count - self.total_rules_count = total_rules_count - self.is_baseline_applied = is_baseline_applied - self.last_scan_time = last_scan_time - - -class ScanResult(Resource): - """A vulnerability assessment scan result for a single rule. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: A vulnerability assessment scan result properties for a single rule. - :vartype properties: ~azure.mgmt.security.models.ScanResultProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "ScanResultProperties"}, - } - - def __init__(self, *, properties: Optional["_models.ScanResultProperties"] = None, **kwargs: Any) -> None: - """ - :keyword properties: A vulnerability assessment scan result properties for a single rule. - :paramtype properties: ~azure.mgmt.security.models.ScanResultProperties - """ - super().__init__(**kwargs) - self.properties = properties - - -class ScanResultProperties(_serialization.Model): - """A vulnerability assessment scan result properties for a single rule. - - :ivar rule_id: The rule Id. - :vartype rule_id: str - :ivar status: The rule result status. Known values are: "NonFinding", "Finding", - "InternalError", and "NotApplicable". - :vartype status: str or ~azure.mgmt.security.models.RuleStatus - :ivar is_trimmed: Indicates whether the results specified here are trimmed. - :vartype is_trimmed: bool - :ivar query_results: The results of the query that was run. - :vartype query_results: list[list[str]] - :ivar remediation: Remediation details. - :vartype remediation: ~azure.mgmt.security.models.Remediation - :ivar baseline_adjusted_result: The rule result adjusted with baseline. - :vartype baseline_adjusted_result: ~azure.mgmt.security.models.BaselineAdjustedResult - :ivar rule_metadata: vulnerability assessment rule metadata details. - :vartype rule_metadata: ~azure.mgmt.security.models.VaRule - """ - - _attribute_map = { - "rule_id": {"key": "ruleId", "type": "str"}, - "status": {"key": "status", "type": "str"}, - "is_trimmed": {"key": "isTrimmed", "type": "bool"}, - "query_results": {"key": "queryResults", "type": "[[str]]"}, - "remediation": {"key": "remediation", "type": "Remediation"}, - "baseline_adjusted_result": {"key": "baselineAdjustedResult", "type": "BaselineAdjustedResult"}, - "rule_metadata": {"key": "ruleMetadata", "type": "VaRule"}, - } - - def __init__( - self, - *, - rule_id: Optional[str] = None, - status: Optional[Union[str, "_models.RuleStatus"]] = None, - is_trimmed: Optional[bool] = None, - query_results: Optional[list[list[str]]] = None, - remediation: Optional["_models.Remediation"] = None, - baseline_adjusted_result: Optional["_models.BaselineAdjustedResult"] = None, - rule_metadata: Optional["_models.VaRule"] = None, - **kwargs: Any - ) -> None: - """ - :keyword rule_id: The rule Id. - :paramtype rule_id: str - :keyword status: The rule result status. Known values are: "NonFinding", "Finding", - "InternalError", and "NotApplicable". - :paramtype status: str or ~azure.mgmt.security.models.RuleStatus - :keyword is_trimmed: Indicates whether the results specified here are trimmed. - :paramtype is_trimmed: bool - :keyword query_results: The results of the query that was run. - :paramtype query_results: list[list[str]] - :keyword remediation: Remediation details. - :paramtype remediation: ~azure.mgmt.security.models.Remediation - :keyword baseline_adjusted_result: The rule result adjusted with baseline. - :paramtype baseline_adjusted_result: ~azure.mgmt.security.models.BaselineAdjustedResult - :keyword rule_metadata: vulnerability assessment rule metadata details. - :paramtype rule_metadata: ~azure.mgmt.security.models.VaRule - """ - super().__init__(**kwargs) - self.rule_id = rule_id - self.status = status - self.is_trimmed = is_trimmed - self.query_results = query_results - self.remediation = remediation - self.baseline_adjusted_result = baseline_adjusted_result - self.rule_metadata = rule_metadata - - -class ScanResults(_serialization.Model): - """A list of vulnerability assessment scan results. - - :ivar value: List of vulnerability assessment scan results. - :vartype value: list[~azure.mgmt.security.models.ScanResult] - """ - - _attribute_map = { - "value": {"key": "value", "type": "[ScanResult]"}, - } - - def __init__(self, *, value: Optional[list["_models.ScanResult"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of vulnerability assessment scan results. - :paramtype value: list[~azure.mgmt.security.models.ScanResult] - """ - super().__init__(**kwargs) - self.value = value - - -class ScanSummary(_serialization.Model): - """A summary of the scan results. - - :ivar blobs: A summary of the scan results of the blobs that were scanned. - :vartype blobs: ~azure.mgmt.security.models.BlobsScanSummary - :ivar files: A summary of the scan results of the files that were scanned. - :vartype files: ~azure.mgmt.security.models.FilesScanSummary - :ivar estimated_scan_cost_usd: The estimated cost of the scan. Only available for a scan which - has terminated. - :vartype estimated_scan_cost_usd: float - """ - - _attribute_map = { - "blobs": {"key": "blobs", "type": "BlobsScanSummary"}, - "files": {"key": "files", "type": "FilesScanSummary"}, - "estimated_scan_cost_usd": {"key": "estimatedScanCostUSD", "type": "float"}, - } - - def __init__( - self, - *, - blobs: Optional["_models.BlobsScanSummary"] = None, - files: Optional["_models.FilesScanSummary"] = None, - estimated_scan_cost_usd: Optional[float] = None, - **kwargs: Any - ) -> None: - """ - :keyword blobs: A summary of the scan results of the blobs that were scanned. - :paramtype blobs: ~azure.mgmt.security.models.BlobsScanSummary - :keyword files: A summary of the scan results of the files that were scanned. - :paramtype files: ~azure.mgmt.security.models.FilesScanSummary - :keyword estimated_scan_cost_usd: The estimated cost of the scan. Only available for a scan - which has terminated. - :paramtype estimated_scan_cost_usd: float - """ - super().__init__(**kwargs) - self.blobs = blobs - self.files = files - self.estimated_scan_cost_usd = estimated_scan_cost_usd - - -class ScansV2(_serialization.Model): - """A list of vulnerability assessment scan records. - - :ivar value: List of vulnerability assessment scan records. - :vartype value: list[~azure.mgmt.security.models.ScanV2] - """ - - _attribute_map = { - "value": {"key": "value", "type": "[ScanV2]"}, - } - - def __init__(self, *, value: Optional[list["_models.ScanV2"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of vulnerability assessment scan records. - :paramtype value: list[~azure.mgmt.security.models.ScanV2] - """ - super().__init__(**kwargs) - self.value = value - - -class ScanV2(Resource): - """A vulnerability assessment scan record. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: A vulnerability assessment scan record properties. - :vartype properties: ~azure.mgmt.security.models.ScanPropertiesV2 - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "ScanPropertiesV2"}, - } - - def __init__(self, *, properties: Optional["_models.ScanPropertiesV2"] = None, **kwargs: Any) -> None: - """ - :keyword properties: A vulnerability assessment scan record properties. - :paramtype properties: ~azure.mgmt.security.models.ScanPropertiesV2 - """ - super().__init__(**kwargs) - self.properties = properties - - -class ScopeElement(_serialization.Model): - """A more specific scope used to identify the alerts to suppress. - - :ivar additional_properties: Unmatched properties from the message are deserialized to this - collection. - :vartype additional_properties: dict[str, any] - :ivar field: The alert entity type to suppress by. - :vartype field: str - """ - - _attribute_map = { - "additional_properties": {"key": "", "type": "{object}"}, - "field": {"key": "field", "type": "str"}, - } - - def __init__( - self, *, additional_properties: Optional[dict[str, Any]] = None, field: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword additional_properties: Unmatched properties from the message are deserialized to this - collection. - :paramtype additional_properties: dict[str, any] - :keyword field: The alert entity type to suppress by. - :paramtype field: str - """ - super().__init__(**kwargs) - self.additional_properties = additional_properties - self.field = field - - -class SecureScoreControlDefinitionItem(Resource): - """Information about the security control. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar display_name: User friendly display name of the control. - :vartype display_name: str - :ivar description: User friendly description of the control. - :vartype description: str - :ivar max_score: Maximum control score (0..10). - :vartype max_score: int - :ivar source: Source object from which the control was created. - :vartype source: ~azure.mgmt.security.models.SecureScoreControlDefinitionSource - :ivar assessment_definitions: Array of assessments metadata IDs that are included in this - security control. - :vartype assessment_definitions: list[~azure.mgmt.security.models.AzureResourceLink] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "display_name": {"readonly": True}, - "description": {"readonly": True, "max_length": 256}, - "max_score": {"readonly": True, "maximum": 10, "minimum": 0}, - "source": {"readonly": True}, - "assessment_definitions": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "max_score": {"key": "properties.maxScore", "type": "int"}, - "source": {"key": "properties.source", "type": "SecureScoreControlDefinitionSource"}, - "assessment_definitions": {"key": "properties.assessmentDefinitions", "type": "[AzureResourceLink]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.display_name: Optional[str] = None - self.description: Optional[str] = None - self.max_score: Optional[int] = None - self.source: Optional["_models.SecureScoreControlDefinitionSource"] = None - self.assessment_definitions: Optional[list["_models.AzureResourceLink"]] = None - - -class SecureScoreControlDefinitionList(_serialization.Model): - """List of security controls definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Collection of security controls definition in this page. - :vartype value: list[~azure.mgmt.security.models.SecureScoreControlDefinitionItem] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[SecureScoreControlDefinitionItem]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.SecureScoreControlDefinitionItem"]] = None - self.next_link: Optional[str] = None - - -class SecureScoreControlDefinitionSource(_serialization.Model): - """The type of the security control (For example, BuiltIn). - - :ivar source_type: The type of security control (for example, BuiltIn). Known values are: - "BuiltIn" and "Custom". - :vartype source_type: str or ~azure.mgmt.security.models.ControlType - """ - - _attribute_map = { - "source_type": {"key": "sourceType", "type": "str"}, - } - - def __init__(self, *, source_type: Optional[Union[str, "_models.ControlType"]] = None, **kwargs: Any) -> None: - """ - :keyword source_type: The type of security control (for example, BuiltIn). Known values are: - "BuiltIn" and "Custom". - :paramtype source_type: str or ~azure.mgmt.security.models.ControlType - """ - super().__init__(**kwargs) - self.source_type = source_type - - -class SecureScoreControlDetails(Resource): - """Details of the security control, its score, and the health status of the relevant resources. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar display_name: User friendly display name of the control. - :vartype display_name: str - :ivar healthy_resource_count: Number of healthy resources in the control. - :vartype healthy_resource_count: int - :ivar unhealthy_resource_count: Number of unhealthy resources in the control. - :vartype unhealthy_resource_count: int - :ivar not_applicable_resource_count: Number of not applicable resources in the control. - :vartype not_applicable_resource_count: int - :ivar weight: The relative weight for this specific control in each of your subscriptions. Used - when calculating an aggregated score for this control across all of your subscriptions. - :vartype weight: int - :ivar definition: Information about the security control. - :vartype definition: ~azure.mgmt.security.models.SecureScoreControlDefinitionItem - :ivar max: Maximum score available. - :vartype max: int - :ivar current: Current score. - :vartype current: float - :ivar percentage: Ratio of the current score divided by the maximum. Rounded to 4 digits after - the decimal point. - :vartype percentage: float - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "display_name": {"readonly": True}, - "healthy_resource_count": {"readonly": True}, - "unhealthy_resource_count": {"readonly": True}, - "not_applicable_resource_count": {"readonly": True}, - "weight": {"readonly": True, "minimum": 0}, - "max": {"readonly": True, "minimum": 0}, - "current": {"readonly": True, "minimum": 0}, - "percentage": {"readonly": True, "maximum": 1, "minimum": 0}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "healthy_resource_count": {"key": "properties.healthyResourceCount", "type": "int"}, - "unhealthy_resource_count": {"key": "properties.unhealthyResourceCount", "type": "int"}, - "not_applicable_resource_count": {"key": "properties.notApplicableResourceCount", "type": "int"}, - "weight": {"key": "properties.weight", "type": "int"}, - "definition": {"key": "properties.definition", "type": "SecureScoreControlDefinitionItem"}, - "max": {"key": "properties.score.max", "type": "int"}, - "current": {"key": "properties.score.current", "type": "float"}, - "percentage": {"key": "properties.score.percentage", "type": "float"}, - } - - def __init__( - self, *, definition: Optional["_models.SecureScoreControlDefinitionItem"] = None, **kwargs: Any - ) -> None: - """ - :keyword definition: Information about the security control. - :paramtype definition: ~azure.mgmt.security.models.SecureScoreControlDefinitionItem - """ - super().__init__(**kwargs) - self.display_name: Optional[str] = None - self.healthy_resource_count: Optional[int] = None - self.unhealthy_resource_count: Optional[int] = None - self.not_applicable_resource_count: Optional[int] = None - self.weight: Optional[int] = None - self.definition = definition - self.max: Optional[int] = None - self.current: Optional[float] = None - self.percentage: Optional[float] = None - - -class SecureScoreControlList(_serialization.Model): - """List of security controls. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Collection of security controls in this page. - :vartype value: list[~azure.mgmt.security.models.SecureScoreControlDetails] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[SecureScoreControlDetails]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.SecureScoreControlDetails"]] = None - self.next_link: Optional[str] = None - - -class SecureScoreControlScore(_serialization.Model): - """Calculation result data. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar max: Maximum control score (0..10). - :vartype max: int - :ivar current: Actual score for the control = (achieved points / total points) * max score. if - total points is zeroed, the return number is 0.00. - :vartype current: float - :ivar percentage: Ratio of the current score divided by the maximum. Rounded to 4 digits after - the decimal point. - :vartype percentage: float - """ - - _validation = { - "max": {"readonly": True, "maximum": 10, "minimum": 0}, - "current": {"readonly": True, "maximum": 10, "minimum": 0}, - "percentage": {"readonly": True, "maximum": 1, "minimum": 0}, - } - - _attribute_map = { - "max": {"key": "max", "type": "int"}, - "current": {"key": "current", "type": "float"}, - "percentage": {"key": "percentage", "type": "float"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.max: Optional[int] = None - self.current: Optional[float] = None - self.percentage: Optional[float] = None - - -class SecureScoreItem(Resource): - """Secure score item data model. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar display_name: The initiative’s name. - :vartype display_name: str - :ivar weight: The relative weight for each subscription. Used when calculating an aggregated - secure score for multiple subscriptions. - :vartype weight: int - :ivar max: Maximum score available. - :vartype max: int - :ivar current: Current score. - :vartype current: float - :ivar percentage: Ratio of the current score divided by the maximum. Rounded to 4 digits after - the decimal point. - :vartype percentage: float - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "display_name": {"readonly": True}, - "weight": {"readonly": True, "minimum": 0}, - "max": {"readonly": True, "minimum": 0}, - "current": {"readonly": True, "minimum": 0}, - "percentage": {"readonly": True, "maximum": 1, "minimum": 0}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "weight": {"key": "properties.weight", "type": "int"}, - "max": {"key": "properties.score.max", "type": "int"}, - "current": {"key": "properties.score.current", "type": "float"}, - "percentage": {"key": "properties.score.percentage", "type": "float"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.display_name: Optional[str] = None - self.weight: Optional[int] = None - self.max: Optional[int] = None - self.current: Optional[float] = None - self.percentage: Optional[float] = None - - -class SecureScoresList(_serialization.Model): - """List of secure scores. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Collection of secure scores in this page. - :vartype value: list[~azure.mgmt.security.models.SecureScoreItem] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[SecureScoreItem]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.SecureScoreItem"]] = None - self.next_link: Optional[str] = None - - -class SecurityAssessment(Resource): - """Security assessment on a resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar risk: External model of risk result. - :vartype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk - :ivar resource_details: Details of the resource that was assessed. - :vartype resource_details: ~azure.mgmt.security.models.ResourceDetails - :ivar display_name: User friendly display name of the assessment. - :vartype display_name: str - :ivar additional_data: Additional data regarding the assessment. - :vartype additional_data: dict[str, str] - :ivar links: Links relevant to the assessment. - :vartype links: ~azure.mgmt.security.models.AssessmentLinks - :ivar metadata: Describes properties of an assessment metadata. - :vartype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties - :ivar partners_data: Data regarding 3rd party partner integration. - :vartype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData - :ivar status: The result of the assessment. - :vartype status: ~azure.mgmt.security.models.AssessmentStatus - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "display_name": {"readonly": True}, - "links": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "risk": {"key": "properties.risk", "type": "SecurityAssessmentPropertiesBaseRisk"}, - "resource_details": {"key": "properties.resourceDetails", "type": "ResourceDetails"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "additional_data": {"key": "properties.additionalData", "type": "{str}"}, - "links": {"key": "properties.links", "type": "AssessmentLinks"}, - "metadata": {"key": "properties.metadata", "type": "SecurityAssessmentMetadataProperties"}, - "partners_data": {"key": "properties.partnersData", "type": "SecurityAssessmentPartnerData"}, - "status": {"key": "properties.status", "type": "AssessmentStatus"}, - } - - def __init__( - self, - *, - risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, - resource_details: Optional["_models.ResourceDetails"] = None, - additional_data: Optional[dict[str, str]] = None, - metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, - partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, - status: Optional["_models.AssessmentStatus"] = None, - **kwargs: Any - ) -> None: - """ - :keyword risk: External model of risk result. - :paramtype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk - :keyword resource_details: Details of the resource that was assessed. - :paramtype resource_details: ~azure.mgmt.security.models.ResourceDetails - :keyword additional_data: Additional data regarding the assessment. - :paramtype additional_data: dict[str, str] - :keyword metadata: Describes properties of an assessment metadata. - :paramtype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties - :keyword partners_data: Data regarding 3rd party partner integration. - :paramtype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData - :keyword status: The result of the assessment. - :paramtype status: ~azure.mgmt.security.models.AssessmentStatus - """ - super().__init__(**kwargs) - self.risk = risk - self.resource_details = resource_details - self.display_name: Optional[str] = None - self.additional_data = additional_data - self.links: Optional["_models.AssessmentLinks"] = None - self.metadata = metadata - self.partners_data = partners_data - self.status = status - - -class SecurityAssessmentList(_serialization.Model): - """Page of a security assessments list. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Collection of security assessments in this page. - :vartype value: list[~azure.mgmt.security.models.SecurityAssessmentResponse] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[SecurityAssessmentResponse]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.SecurityAssessmentResponse"]] = None - self.next_link: Optional[str] = None - - -class SecurityAssessmentMetadata(Resource): - """Security assessment metadata. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar display_name: User friendly display name of the assessment. - :vartype display_name: str - :ivar policy_definition_id: Azure resource ID of the policy definition that turns this - assessment calculation on. - :vartype policy_definition_id: str - :ivar description: Human readable description of the assessment. - :vartype description: str - :ivar remediation_description: Human readable description of what you should do to mitigate - this security issue. - :vartype remediation_description: str - :ivar categories: - :vartype categories: list[str or ~azure.mgmt.security.models.Categories] - :ivar severity: The severity level of the assessment. Known values are: "Low", "Medium", and - "High". - :vartype severity: str or ~azure.mgmt.security.models.Severity - :ivar user_impact: The user impact of the assessment. Known values are: "Low", "Moderate", and - "High". - :vartype user_impact: str or ~azure.mgmt.security.models.UserImpact - :ivar implementation_effort: The implementation effort required to remediate this assessment. - Known values are: "Low", "Moderate", and "High". - :vartype implementation_effort: str or ~azure.mgmt.security.models.ImplementationEffort - :ivar threats: - :vartype threats: list[str or ~azure.mgmt.security.models.Threats] - :ivar preview: True if this assessment is in preview release status. - :vartype preview: bool - :ivar assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, - Custom if the assessment based on custom Azure Policy definition. Known values are: "Unknown", - "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", - "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". - :vartype assessment_type: str or ~azure.mgmt.security.models.AssessmentType - :ivar partner_data: Describes the partner that created the assessment. - :vartype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "policy_definition_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "policy_definition_id": {"key": "properties.policyDefinitionId", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "remediation_description": {"key": "properties.remediationDescription", "type": "str"}, - "categories": {"key": "properties.categories", "type": "[str]"}, - "severity": {"key": "properties.severity", "type": "str"}, - "user_impact": {"key": "properties.userImpact", "type": "str"}, - "implementation_effort": {"key": "properties.implementationEffort", "type": "str"}, - "threats": {"key": "properties.threats", "type": "[str]"}, - "preview": {"key": "properties.preview", "type": "bool"}, - "assessment_type": {"key": "properties.assessmentType", "type": "str"}, - "partner_data": {"key": "properties.partnerData", "type": "SecurityAssessmentMetadataPartnerData"}, - } - - def __init__( - self, - *, - display_name: Optional[str] = None, - description: Optional[str] = None, - remediation_description: Optional[str] = None, - categories: Optional[list[Union[str, "_models.Categories"]]] = None, - severity: Optional[Union[str, "_models.Severity"]] = None, - user_impact: Optional[Union[str, "_models.UserImpact"]] = None, - implementation_effort: Optional[Union[str, "_models.ImplementationEffort"]] = None, - threats: Optional[list[Union[str, "_models.Threats"]]] = None, - preview: Optional[bool] = None, - assessment_type: Optional[Union[str, "_models.AssessmentType"]] = None, - partner_data: Optional["_models.SecurityAssessmentMetadataPartnerData"] = None, - **kwargs: Any - ) -> None: - """ - :keyword display_name: User friendly display name of the assessment. - :paramtype display_name: str - :keyword description: Human readable description of the assessment. - :paramtype description: str - :keyword remediation_description: Human readable description of what you should do to mitigate - this security issue. - :paramtype remediation_description: str - :keyword categories: - :paramtype categories: list[str or ~azure.mgmt.security.models.Categories] - :keyword severity: The severity level of the assessment. Known values are: "Low", "Medium", and - "High". - :paramtype severity: str or ~azure.mgmt.security.models.Severity - :keyword user_impact: The user impact of the assessment. Known values are: "Low", "Moderate", - and "High". - :paramtype user_impact: str or ~azure.mgmt.security.models.UserImpact - :keyword implementation_effort: The implementation effort required to remediate this - assessment. Known values are: "Low", "Moderate", and "High". - :paramtype implementation_effort: str or ~azure.mgmt.security.models.ImplementationEffort - :keyword threats: - :paramtype threats: list[str or ~azure.mgmt.security.models.Threats] - :keyword preview: True if this assessment is in preview release status. - :paramtype preview: bool - :keyword assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, - Custom if the assessment based on custom Azure Policy definition. Known values are: "Unknown", - "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", - "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". - :paramtype assessment_type: str or ~azure.mgmt.security.models.AssessmentType - :keyword partner_data: Describes the partner that created the assessment. - :paramtype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData - """ - super().__init__(**kwargs) - self.display_name = display_name - self.policy_definition_id: Optional[str] = None - self.description = description - self.remediation_description = remediation_description - self.categories = categories - self.severity = severity - self.user_impact = user_impact - self.implementation_effort = implementation_effort - self.threats = threats - self.preview = preview - self.assessment_type = assessment_type - self.partner_data = partner_data - - -class SecurityAssessmentMetadataPartnerData(_serialization.Model): - """Describes the partner that created the assessment. - - All required parameters must be populated in order to send to server. - - :ivar partner_name: Name of the company of the partner. Required. - :vartype partner_name: str - :ivar product_name: Name of the product of the partner that created the assessment. - :vartype product_name: str - :ivar secret: Secret to authenticate the partner and verify it created the assessment - write - only. Required. - :vartype secret: str - """ - - _validation = { - "partner_name": {"required": True}, - "secret": {"required": True}, - } - - _attribute_map = { - "partner_name": {"key": "partnerName", "type": "str"}, - "product_name": {"key": "productName", "type": "str"}, - "secret": {"key": "secret", "type": "str"}, - } - - def __init__(self, *, partner_name: str, secret: str, product_name: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword partner_name: Name of the company of the partner. Required. - :paramtype partner_name: str - :keyword product_name: Name of the product of the partner that created the assessment. - :paramtype product_name: str - :keyword secret: Secret to authenticate the partner and verify it created the assessment - - write only. Required. - :paramtype secret: str - """ - super().__init__(**kwargs) - self.partner_name = partner_name - self.product_name = product_name - self.secret = secret - - -class SecurityAssessmentMetadataProperties(_serialization.Model): - """Describes properties of an assessment metadata. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: User friendly display name of the assessment. Required. - :vartype display_name: str - :ivar policy_definition_id: Azure resource ID of the policy definition that turns this - assessment calculation on. - :vartype policy_definition_id: str - :ivar description: Human readable description of the assessment. - :vartype description: str - :ivar remediation_description: Human readable description of what you should do to mitigate - this security issue. - :vartype remediation_description: str - :ivar categories: - :vartype categories: list[str or ~azure.mgmt.security.models.Categories] - :ivar severity: The severity level of the assessment. Required. Known values are: "Low", - "Medium", and "High". - :vartype severity: str or ~azure.mgmt.security.models.Severity - :ivar user_impact: The user impact of the assessment. Known values are: "Low", "Moderate", and - "High". - :vartype user_impact: str or ~azure.mgmt.security.models.UserImpact - :ivar implementation_effort: The implementation effort required to remediate this assessment. - Known values are: "Low", "Moderate", and "High". - :vartype implementation_effort: str or ~azure.mgmt.security.models.ImplementationEffort - :ivar threats: - :vartype threats: list[str or ~azure.mgmt.security.models.Threats] - :ivar preview: True if this assessment is in preview release status. - :vartype preview: bool - :ivar assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, - Custom if the assessment based on custom Azure Policy definition. Required. Known values are: - "Unknown", "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", - "VerifiedPartner", "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and - "DynamicBuiltIn". - :vartype assessment_type: str or ~azure.mgmt.security.models.AssessmentType - :ivar partner_data: Describes the partner that created the assessment. - :vartype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData - """ - - _validation = { - "display_name": {"required": True}, - "policy_definition_id": {"readonly": True}, - "severity": {"required": True}, - "assessment_type": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "policy_definition_id": {"key": "policyDefinitionId", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "remediation_description": {"key": "remediationDescription", "type": "str"}, - "categories": {"key": "categories", "type": "[str]"}, - "severity": {"key": "severity", "type": "str"}, - "user_impact": {"key": "userImpact", "type": "str"}, - "implementation_effort": {"key": "implementationEffort", "type": "str"}, - "threats": {"key": "threats", "type": "[str]"}, - "preview": {"key": "preview", "type": "bool"}, - "assessment_type": {"key": "assessmentType", "type": "str"}, - "partner_data": {"key": "partnerData", "type": "SecurityAssessmentMetadataPartnerData"}, - } - - def __init__( - self, - *, - display_name: str, - severity: Union[str, "_models.Severity"], - assessment_type: Union[str, "_models.AssessmentType"], - description: Optional[str] = None, - remediation_description: Optional[str] = None, - categories: Optional[list[Union[str, "_models.Categories"]]] = None, - user_impact: Optional[Union[str, "_models.UserImpact"]] = None, - implementation_effort: Optional[Union[str, "_models.ImplementationEffort"]] = None, - threats: Optional[list[Union[str, "_models.Threats"]]] = None, - preview: Optional[bool] = None, - partner_data: Optional["_models.SecurityAssessmentMetadataPartnerData"] = None, - **kwargs: Any - ) -> None: - """ - :keyword display_name: User friendly display name of the assessment. Required. - :paramtype display_name: str - :keyword description: Human readable description of the assessment. - :paramtype description: str - :keyword remediation_description: Human readable description of what you should do to mitigate - this security issue. - :paramtype remediation_description: str - :keyword categories: - :paramtype categories: list[str or ~azure.mgmt.security.models.Categories] - :keyword severity: The severity level of the assessment. Required. Known values are: "Low", - "Medium", and "High". - :paramtype severity: str or ~azure.mgmt.security.models.Severity - :keyword user_impact: The user impact of the assessment. Known values are: "Low", "Moderate", - and "High". - :paramtype user_impact: str or ~azure.mgmt.security.models.UserImpact - :keyword implementation_effort: The implementation effort required to remediate this - assessment. Known values are: "Low", "Moderate", and "High". - :paramtype implementation_effort: str or ~azure.mgmt.security.models.ImplementationEffort - :keyword threats: - :paramtype threats: list[str or ~azure.mgmt.security.models.Threats] - :keyword preview: True if this assessment is in preview release status. - :paramtype preview: bool - :keyword assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, - Custom if the assessment based on custom Azure Policy definition. Required. Known values are: - "Unknown", "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", - "VerifiedPartner", "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and - "DynamicBuiltIn". - :paramtype assessment_type: str or ~azure.mgmt.security.models.AssessmentType - :keyword partner_data: Describes the partner that created the assessment. - :paramtype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData - """ - super().__init__(**kwargs) - self.display_name = display_name - self.policy_definition_id: Optional[str] = None - self.description = description - self.remediation_description = remediation_description - self.categories = categories - self.severity = severity - self.user_impact = user_impact - self.implementation_effort = implementation_effort - self.threats = threats - self.preview = preview - self.assessment_type = assessment_type - self.partner_data = partner_data - - -class SecurityAssessmentMetadataPropertiesResponse( - SecurityAssessmentMetadataProperties -): # pylint: disable=name-too-long - """Describes properties of an assessment metadata response. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: User friendly display name of the assessment. Required. - :vartype display_name: str - :ivar policy_definition_id: Azure resource ID of the policy definition that turns this - assessment calculation on. - :vartype policy_definition_id: str - :ivar description: Human readable description of the assessment. - :vartype description: str - :ivar remediation_description: Human readable description of what you should do to mitigate - this security issue. - :vartype remediation_description: str - :ivar categories: - :vartype categories: list[str or ~azure.mgmt.security.models.Categories] - :ivar severity: The severity level of the assessment. Required. Known values are: "Low", - "Medium", and "High". - :vartype severity: str or ~azure.mgmt.security.models.Severity - :ivar user_impact: The user impact of the assessment. Known values are: "Low", "Moderate", and - "High". - :vartype user_impact: str or ~azure.mgmt.security.models.UserImpact - :ivar implementation_effort: The implementation effort required to remediate this assessment. - Known values are: "Low", "Moderate", and "High". - :vartype implementation_effort: str or ~azure.mgmt.security.models.ImplementationEffort - :ivar threats: - :vartype threats: list[str or ~azure.mgmt.security.models.Threats] - :ivar preview: True if this assessment is in preview release status. - :vartype preview: bool - :ivar assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, - Custom if the assessment based on custom Azure Policy definition. Required. Known values are: - "Unknown", "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", - "VerifiedPartner", "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and - "DynamicBuiltIn". - :vartype assessment_type: str or ~azure.mgmt.security.models.AssessmentType - :ivar partner_data: Describes the partner that created the assessment. - :vartype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData - :ivar publish_dates: - :vartype publish_dates: - ~azure.mgmt.security.models.SecurityAssessmentMetadataPropertiesResponsePublishDates - :ivar planned_deprecation_date: - :vartype planned_deprecation_date: str - :ivar tactics: - :vartype tactics: list[str or ~azure.mgmt.security.models.Tactics] - :ivar techniques: - :vartype techniques: list[str or ~azure.mgmt.security.models.Techniques] - """ - - _validation = { - "display_name": {"required": True}, - "policy_definition_id": {"readonly": True}, - "severity": {"required": True}, - "assessment_type": {"required": True}, - "planned_deprecation_date": {"pattern": r"^[0-9]{2}/[0-9]{4}$"}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "policy_definition_id": {"key": "policyDefinitionId", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "remediation_description": {"key": "remediationDescription", "type": "str"}, - "categories": {"key": "categories", "type": "[str]"}, - "severity": {"key": "severity", "type": "str"}, - "user_impact": {"key": "userImpact", "type": "str"}, - "implementation_effort": {"key": "implementationEffort", "type": "str"}, - "threats": {"key": "threats", "type": "[str]"}, - "preview": {"key": "preview", "type": "bool"}, - "assessment_type": {"key": "assessmentType", "type": "str"}, - "partner_data": {"key": "partnerData", "type": "SecurityAssessmentMetadataPartnerData"}, - "publish_dates": {"key": "publishDates", "type": "SecurityAssessmentMetadataPropertiesResponsePublishDates"}, - "planned_deprecation_date": {"key": "plannedDeprecationDate", "type": "str"}, - "tactics": {"key": "tactics", "type": "[str]"}, - "techniques": {"key": "techniques", "type": "[str]"}, - } - - def __init__( - self, - *, - display_name: str, - severity: Union[str, "_models.Severity"], - assessment_type: Union[str, "_models.AssessmentType"], - description: Optional[str] = None, - remediation_description: Optional[str] = None, - categories: Optional[list[Union[str, "_models.Categories"]]] = None, - user_impact: Optional[Union[str, "_models.UserImpact"]] = None, - implementation_effort: Optional[Union[str, "_models.ImplementationEffort"]] = None, - threats: Optional[list[Union[str, "_models.Threats"]]] = None, - preview: Optional[bool] = None, - partner_data: Optional["_models.SecurityAssessmentMetadataPartnerData"] = None, - publish_dates: Optional["_models.SecurityAssessmentMetadataPropertiesResponsePublishDates"] = None, - planned_deprecation_date: Optional[str] = None, - tactics: Optional[list[Union[str, "_models.Tactics"]]] = None, - techniques: Optional[list[Union[str, "_models.Techniques"]]] = None, - **kwargs: Any - ) -> None: - """ - :keyword display_name: User friendly display name of the assessment. Required. - :paramtype display_name: str - :keyword description: Human readable description of the assessment. - :paramtype description: str - :keyword remediation_description: Human readable description of what you should do to mitigate - this security issue. - :paramtype remediation_description: str - :keyword categories: - :paramtype categories: list[str or ~azure.mgmt.security.models.Categories] - :keyword severity: The severity level of the assessment. Required. Known values are: "Low", - "Medium", and "High". - :paramtype severity: str or ~azure.mgmt.security.models.Severity - :keyword user_impact: The user impact of the assessment. Known values are: "Low", "Moderate", - and "High". - :paramtype user_impact: str or ~azure.mgmt.security.models.UserImpact - :keyword implementation_effort: The implementation effort required to remediate this - assessment. Known values are: "Low", "Moderate", and "High". - :paramtype implementation_effort: str or ~azure.mgmt.security.models.ImplementationEffort - :keyword threats: - :paramtype threats: list[str or ~azure.mgmt.security.models.Threats] - :keyword preview: True if this assessment is in preview release status. - :paramtype preview: bool - :keyword assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, - Custom if the assessment based on custom Azure Policy definition. Required. Known values are: - "Unknown", "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", - "VerifiedPartner", "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and - "DynamicBuiltIn". - :paramtype assessment_type: str or ~azure.mgmt.security.models.AssessmentType - :keyword partner_data: Describes the partner that created the assessment. - :paramtype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData - :keyword publish_dates: - :paramtype publish_dates: - ~azure.mgmt.security.models.SecurityAssessmentMetadataPropertiesResponsePublishDates - :keyword planned_deprecation_date: - :paramtype planned_deprecation_date: str - :keyword tactics: - :paramtype tactics: list[str or ~azure.mgmt.security.models.Tactics] - :keyword techniques: - :paramtype techniques: list[str or ~azure.mgmt.security.models.Techniques] - """ - super().__init__( - display_name=display_name, - description=description, - remediation_description=remediation_description, - categories=categories, - severity=severity, - user_impact=user_impact, - implementation_effort=implementation_effort, - threats=threats, - preview=preview, - assessment_type=assessment_type, - partner_data=partner_data, - **kwargs - ) - self.publish_dates = publish_dates - self.planned_deprecation_date = planned_deprecation_date - self.tactics = tactics - self.techniques = techniques - - -class SecurityAssessmentMetadataPropertiesResponsePublishDates(_serialization.Model): # pylint: disable=name-too-long - """SecurityAssessmentMetadataPropertiesResponsePublishDates. - - All required parameters must be populated in order to send to server. - - :ivar ga: - :vartype ga: str - :ivar public: Required. - :vartype public: str - """ - - _validation = { - "ga": {"pattern": r"^([0-9]{2}/){2}[0-9]{4}$"}, - "public": {"required": True, "pattern": r"^([0-9]{2}/){2}[0-9]{4}$"}, - } - - _attribute_map = { - "ga": {"key": "GA", "type": "str"}, - "public": {"key": "public", "type": "str"}, - } - - def __init__(self, *, public: str, ga: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword ga: - :paramtype ga: str - :keyword public: Required. - :paramtype public: str - """ - super().__init__(**kwargs) - self.ga = ga - self.public = public - - -class SecurityAssessmentMetadataResponse(Resource): - """Security assessment metadata response. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar display_name: User friendly display name of the assessment. - :vartype display_name: str - :ivar policy_definition_id: Azure resource ID of the policy definition that turns this - assessment calculation on. - :vartype policy_definition_id: str - :ivar description: Human readable description of the assessment. - :vartype description: str - :ivar remediation_description: Human readable description of what you should do to mitigate - this security issue. - :vartype remediation_description: str - :ivar categories: - :vartype categories: list[str or ~azure.mgmt.security.models.Categories] - :ivar severity: The severity level of the assessment. Known values are: "Low", "Medium", and - "High". - :vartype severity: str or ~azure.mgmt.security.models.Severity - :ivar user_impact: The user impact of the assessment. Known values are: "Low", "Moderate", and - "High". - :vartype user_impact: str or ~azure.mgmt.security.models.UserImpact - :ivar implementation_effort: The implementation effort required to remediate this assessment. - Known values are: "Low", "Moderate", and "High". - :vartype implementation_effort: str or ~azure.mgmt.security.models.ImplementationEffort - :ivar threats: - :vartype threats: list[str or ~azure.mgmt.security.models.Threats] - :ivar preview: True if this assessment is in preview release status. - :vartype preview: bool - :ivar assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, - Custom if the assessment based on custom Azure Policy definition. Known values are: "Unknown", - "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", - "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". - :vartype assessment_type: str or ~azure.mgmt.security.models.AssessmentType - :ivar partner_data: Describes the partner that created the assessment. - :vartype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData - :ivar publish_dates: - :vartype publish_dates: - ~azure.mgmt.security.models.SecurityAssessmentMetadataPropertiesResponsePublishDates - :ivar planned_deprecation_date: - :vartype planned_deprecation_date: str - :ivar tactics: - :vartype tactics: list[str or ~azure.mgmt.security.models.Tactics] - :ivar techniques: - :vartype techniques: list[str or ~azure.mgmt.security.models.Techniques] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "policy_definition_id": {"readonly": True}, - "planned_deprecation_date": {"pattern": r"^[0-9]{2}/[0-9]{4}$"}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "policy_definition_id": {"key": "properties.policyDefinitionId", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "remediation_description": {"key": "properties.remediationDescription", "type": "str"}, - "categories": {"key": "properties.categories", "type": "[str]"}, - "severity": {"key": "properties.severity", "type": "str"}, - "user_impact": {"key": "properties.userImpact", "type": "str"}, - "implementation_effort": {"key": "properties.implementationEffort", "type": "str"}, - "threats": {"key": "properties.threats", "type": "[str]"}, - "preview": {"key": "properties.preview", "type": "bool"}, - "assessment_type": {"key": "properties.assessmentType", "type": "str"}, - "partner_data": {"key": "properties.partnerData", "type": "SecurityAssessmentMetadataPartnerData"}, - "publish_dates": { - "key": "properties.publishDates", - "type": "SecurityAssessmentMetadataPropertiesResponsePublishDates", - }, - "planned_deprecation_date": {"key": "properties.plannedDeprecationDate", "type": "str"}, - "tactics": {"key": "properties.tactics", "type": "[str]"}, - "techniques": {"key": "properties.techniques", "type": "[str]"}, - } - - def __init__( - self, - *, - display_name: Optional[str] = None, - description: Optional[str] = None, - remediation_description: Optional[str] = None, - categories: Optional[list[Union[str, "_models.Categories"]]] = None, - severity: Optional[Union[str, "_models.Severity"]] = None, - user_impact: Optional[Union[str, "_models.UserImpact"]] = None, - implementation_effort: Optional[Union[str, "_models.ImplementationEffort"]] = None, - threats: Optional[list[Union[str, "_models.Threats"]]] = None, - preview: Optional[bool] = None, - assessment_type: Optional[Union[str, "_models.AssessmentType"]] = None, - partner_data: Optional["_models.SecurityAssessmentMetadataPartnerData"] = None, - publish_dates: Optional["_models.SecurityAssessmentMetadataPropertiesResponsePublishDates"] = None, - planned_deprecation_date: Optional[str] = None, - tactics: Optional[list[Union[str, "_models.Tactics"]]] = None, - techniques: Optional[list[Union[str, "_models.Techniques"]]] = None, - **kwargs: Any - ) -> None: - """ - :keyword display_name: User friendly display name of the assessment. - :paramtype display_name: str - :keyword description: Human readable description of the assessment. - :paramtype description: str - :keyword remediation_description: Human readable description of what you should do to mitigate - this security issue. - :paramtype remediation_description: str - :keyword categories: - :paramtype categories: list[str or ~azure.mgmt.security.models.Categories] - :keyword severity: The severity level of the assessment. Known values are: "Low", "Medium", and - "High". - :paramtype severity: str or ~azure.mgmt.security.models.Severity - :keyword user_impact: The user impact of the assessment. Known values are: "Low", "Moderate", - and "High". - :paramtype user_impact: str or ~azure.mgmt.security.models.UserImpact - :keyword implementation_effort: The implementation effort required to remediate this - assessment. Known values are: "Low", "Moderate", and "High". - :paramtype implementation_effort: str or ~azure.mgmt.security.models.ImplementationEffort - :keyword threats: - :paramtype threats: list[str or ~azure.mgmt.security.models.Threats] - :keyword preview: True if this assessment is in preview release status. - :paramtype preview: bool - :keyword assessment_type: BuiltIn if the assessment based on built-in Azure Policy definition, - Custom if the assessment based on custom Azure Policy definition. Known values are: "Unknown", - "BuiltIn", "Custom", "CustomPolicy", "CustomerManaged", "BuiltInPolicy", "VerifiedPartner", - "ManualBuiltInPolicy", "ManualBuiltIn", "ManualCustomPolicy", and "DynamicBuiltIn". - :paramtype assessment_type: str or ~azure.mgmt.security.models.AssessmentType - :keyword partner_data: Describes the partner that created the assessment. - :paramtype partner_data: ~azure.mgmt.security.models.SecurityAssessmentMetadataPartnerData - :keyword publish_dates: - :paramtype publish_dates: - ~azure.mgmt.security.models.SecurityAssessmentMetadataPropertiesResponsePublishDates - :keyword planned_deprecation_date: - :paramtype planned_deprecation_date: str - :keyword tactics: - :paramtype tactics: list[str or ~azure.mgmt.security.models.Tactics] - :keyword techniques: - :paramtype techniques: list[str or ~azure.mgmt.security.models.Techniques] - """ - super().__init__(**kwargs) - self.display_name = display_name - self.policy_definition_id: Optional[str] = None - self.description = description - self.remediation_description = remediation_description - self.categories = categories - self.severity = severity - self.user_impact = user_impact - self.implementation_effort = implementation_effort - self.threats = threats - self.preview = preview - self.assessment_type = assessment_type - self.partner_data = partner_data - self.publish_dates = publish_dates - self.planned_deprecation_date = planned_deprecation_date - self.tactics = tactics - self.techniques = techniques - - -class SecurityAssessmentMetadataResponseList(_serialization.Model): - """List of security assessment metadata. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.SecurityAssessmentMetadataResponse] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[SecurityAssessmentMetadataResponse]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.SecurityAssessmentMetadataResponse"]] = None - self.next_link: Optional[str] = None - - -class SecurityAssessmentPartnerData(_serialization.Model): - """Data regarding 3rd party partner integration. - - All required parameters must be populated in order to send to server. - - :ivar partner_name: Name of the company of the partner. Required. - :vartype partner_name: str - :ivar secret: secret to authenticate the partner - write only. Required. - :vartype secret: str - """ - - _validation = { - "partner_name": {"required": True}, - "secret": {"required": True}, - } - - _attribute_map = { - "partner_name": {"key": "partnerName", "type": "str"}, - "secret": {"key": "secret", "type": "str"}, - } - - def __init__(self, *, partner_name: str, secret: str, **kwargs: Any) -> None: - """ - :keyword partner_name: Name of the company of the partner. Required. - :paramtype partner_name: str - :keyword secret: secret to authenticate the partner - write only. Required. - :paramtype secret: str - """ - super().__init__(**kwargs) - self.partner_name = partner_name - self.secret = secret - - -class SecurityAssessmentPropertiesBase(_serialization.Model): - """Describes properties of an assessment. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar risk: External model of risk result. - :vartype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk - :ivar resource_details: Details of the resource that was assessed. Required. - :vartype resource_details: ~azure.mgmt.security.models.ResourceDetails - :ivar display_name: User friendly display name of the assessment. - :vartype display_name: str - :ivar additional_data: Additional data regarding the assessment. - :vartype additional_data: dict[str, str] - :ivar links: Links relevant to the assessment. - :vartype links: ~azure.mgmt.security.models.AssessmentLinks - :ivar metadata: Describes properties of an assessment metadata. - :vartype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties - :ivar partners_data: Data regarding 3rd party partner integration. - :vartype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData - """ - - _validation = { - "resource_details": {"required": True}, - "display_name": {"readonly": True}, - "links": {"readonly": True}, - } - - _attribute_map = { - "risk": {"key": "risk", "type": "SecurityAssessmentPropertiesBaseRisk"}, - "resource_details": {"key": "resourceDetails", "type": "ResourceDetails"}, - "display_name": {"key": "displayName", "type": "str"}, - "additional_data": {"key": "additionalData", "type": "{str}"}, - "links": {"key": "links", "type": "AssessmentLinks"}, - "metadata": {"key": "metadata", "type": "SecurityAssessmentMetadataProperties"}, - "partners_data": {"key": "partnersData", "type": "SecurityAssessmentPartnerData"}, - } - - def __init__( - self, - *, - resource_details: "_models.ResourceDetails", - risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, - additional_data: Optional[dict[str, str]] = None, - metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, - partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, - **kwargs: Any - ) -> None: - """ - :keyword risk: External model of risk result. - :paramtype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk - :keyword resource_details: Details of the resource that was assessed. Required. - :paramtype resource_details: ~azure.mgmt.security.models.ResourceDetails - :keyword additional_data: Additional data regarding the assessment. - :paramtype additional_data: dict[str, str] - :keyword metadata: Describes properties of an assessment metadata. - :paramtype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties - :keyword partners_data: Data regarding 3rd party partner integration. - :paramtype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData - """ - super().__init__(**kwargs) - self.risk = risk - self.resource_details = resource_details - self.display_name: Optional[str] = None - self.additional_data = additional_data - self.links: Optional["_models.AssessmentLinks"] = None - self.metadata = metadata - self.partners_data = partners_data - - -class SecurityAssessmentProperties(SecurityAssessmentPropertiesBase): - """Describes properties of an assessment. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar risk: External model of risk result. - :vartype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk - :ivar resource_details: Details of the resource that was assessed. Required. - :vartype resource_details: ~azure.mgmt.security.models.ResourceDetails - :ivar display_name: User friendly display name of the assessment. - :vartype display_name: str - :ivar additional_data: Additional data regarding the assessment. - :vartype additional_data: dict[str, str] - :ivar links: Links relevant to the assessment. - :vartype links: ~azure.mgmt.security.models.AssessmentLinks - :ivar metadata: Describes properties of an assessment metadata. - :vartype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties - :ivar partners_data: Data regarding 3rd party partner integration. - :vartype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData - :ivar status: The result of the assessment. Required. - :vartype status: ~azure.mgmt.security.models.AssessmentStatus - """ - - _validation = { - "resource_details": {"required": True}, - "display_name": {"readonly": True}, - "links": {"readonly": True}, - "status": {"required": True}, - } - - _attribute_map = { - "risk": {"key": "risk", "type": "SecurityAssessmentPropertiesBaseRisk"}, - "resource_details": {"key": "resourceDetails", "type": "ResourceDetails"}, - "display_name": {"key": "displayName", "type": "str"}, - "additional_data": {"key": "additionalData", "type": "{str}"}, - "links": {"key": "links", "type": "AssessmentLinks"}, - "metadata": {"key": "metadata", "type": "SecurityAssessmentMetadataProperties"}, - "partners_data": {"key": "partnersData", "type": "SecurityAssessmentPartnerData"}, - "status": {"key": "status", "type": "AssessmentStatus"}, - } - - def __init__( - self, - *, - resource_details: "_models.ResourceDetails", - status: "_models.AssessmentStatus", - risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, - additional_data: Optional[dict[str, str]] = None, - metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, - partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, - **kwargs: Any - ) -> None: - """ - :keyword risk: External model of risk result. - :paramtype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk - :keyword resource_details: Details of the resource that was assessed. Required. - :paramtype resource_details: ~azure.mgmt.security.models.ResourceDetails - :keyword additional_data: Additional data regarding the assessment. - :paramtype additional_data: dict[str, str] - :keyword metadata: Describes properties of an assessment metadata. - :paramtype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties - :keyword partners_data: Data regarding 3rd party partner integration. - :paramtype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData - :keyword status: The result of the assessment. Required. - :paramtype status: ~azure.mgmt.security.models.AssessmentStatus - """ - super().__init__( - risk=risk, - resource_details=resource_details, - additional_data=additional_data, - metadata=metadata, - partners_data=partners_data, - **kwargs - ) - self.status = status - - -class SecurityAssessmentPropertiesBaseRisk(_serialization.Model): - """External model of risk result. - - :ivar risk_factors: The factors of the risk adding base factor. - :vartype risk_factors: list[str] - :ivar level: The risk level. Known values are: "None", "Low", "Medium", "High", and "Critical". - :vartype level: str or ~azure.mgmt.security.models.RiskLevel - :ivar attack_paths_references: The attack paths references of the risk. - :vartype attack_paths_references: list[str] - :ivar paths: - :vartype paths: list[~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRiskPathsItem] - :ivar is_contextual_risk: Indicates if the risk is contextual or static. - :vartype is_contextual_risk: bool - """ - - _validation = { - "risk_factors": {"unique": True}, - } - - _attribute_map = { - "risk_factors": {"key": "riskFactors", "type": "[str]"}, - "level": {"key": "level", "type": "str"}, - "attack_paths_references": {"key": "attackPathsReferences", "type": "[str]"}, - "paths": {"key": "paths", "type": "[SecurityAssessmentPropertiesBaseRiskPathsItem]"}, - "is_contextual_risk": {"key": "isContextualRisk", "type": "bool"}, - } - - def __init__( - self, - *, - risk_factors: Optional[list[str]] = None, - level: Optional[Union[str, "_models.RiskLevel"]] = None, - attack_paths_references: Optional[list[str]] = None, - paths: Optional[list["_models.SecurityAssessmentPropertiesBaseRiskPathsItem"]] = None, - is_contextual_risk: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword risk_factors: The factors of the risk adding base factor. - :paramtype risk_factors: list[str] - :keyword level: The risk level. Known values are: "None", "Low", "Medium", "High", and - "Critical". - :paramtype level: str or ~azure.mgmt.security.models.RiskLevel - :keyword attack_paths_references: The attack paths references of the risk. - :paramtype attack_paths_references: list[str] - :keyword paths: - :paramtype paths: - list[~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRiskPathsItem] - :keyword is_contextual_risk: Indicates if the risk is contextual or static. - :paramtype is_contextual_risk: bool - """ - super().__init__(**kwargs) - self.risk_factors = risk_factors - self.level = level - self.attack_paths_references = attack_paths_references - self.paths = paths - self.is_contextual_risk = is_contextual_risk - - -class SecurityAssessmentPropertiesBaseRiskPathsItem(_serialization.Model): # pylint: disable=name-too-long - """SecurityAssessmentPropertiesBaseRiskPathsItem. - - :ivar id: Unique identifier for the path. - :vartype id: str - :ivar nodes: - :vartype nodes: - list[~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem] - :ivar edges: Connections between nodes. - :vartype edges: - list[~azure.mgmt.security.models.Components1Uu4J47SchemasSecurityassessmentpropertiesbasePropertiesRiskPropertiesPathsItemsPropertiesEdgesItems] - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "nodes": {"key": "nodes", "type": "[SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem]"}, - "edges": { - "key": "edges", - "type": "[Components1Uu4J47SchemasSecurityassessmentpropertiesbasePropertiesRiskPropertiesPathsItemsPropertiesEdgesItems]", - }, - } - - def __init__( - self, - *, - id: Optional[str] = None, # pylint: disable=redefined-builtin - nodes: Optional[list["_models.SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem"]] = None, - edges: Optional[ - list[ - "_models.Components1Uu4J47SchemasSecurityassessmentpropertiesbasePropertiesRiskPropertiesPathsItemsPropertiesEdgesItems" - ] - ] = None, - **kwargs: Any - ) -> None: - """ - :keyword id: Unique identifier for the path. - :paramtype id: str - :keyword nodes: - :paramtype nodes: - list[~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem] - :keyword edges: Connections between nodes. - :paramtype edges: - list[~azure.mgmt.security.models.Components1Uu4J47SchemasSecurityassessmentpropertiesbasePropertiesRiskPropertiesPathsItemsPropertiesEdgesItems] - """ - super().__init__(**kwargs) - self.id = id - self.nodes = nodes - self.edges = edges - - -class SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem( - _serialization.Model -): # pylint: disable=name-too-long - """SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem. - - :ivar id: Node identifier. - :vartype id: str - :ivar node_properties_label: Properties associated with the node. - :vartype node_properties_label: list[str] - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "node_properties_label": {"key": "nodePropertiesLabel", "type": "[str]"}, - } - - def __init__( - self, - *, - id: Optional[str] = None, # pylint: disable=redefined-builtin - node_properties_label: Optional[list[str]] = None, - **kwargs: Any - ) -> None: - """ - :keyword id: Node identifier. - :paramtype id: str - :keyword node_properties_label: Properties associated with the node. - :paramtype node_properties_label: list[str] - """ - super().__init__(**kwargs) - self.id = id - self.node_properties_label = node_properties_label - - -class SecurityAssessmentPropertiesResponse(SecurityAssessmentPropertiesBase): - """Describes properties of an assessment. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar risk: External model of risk result. - :vartype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk - :ivar resource_details: Details of the resource that was assessed. Required. - :vartype resource_details: ~azure.mgmt.security.models.ResourceDetails - :ivar display_name: User friendly display name of the assessment. - :vartype display_name: str - :ivar additional_data: Additional data regarding the assessment. - :vartype additional_data: dict[str, str] - :ivar links: Links relevant to the assessment. - :vartype links: ~azure.mgmt.security.models.AssessmentLinks - :ivar metadata: Describes properties of an assessment metadata. - :vartype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties - :ivar partners_data: Data regarding 3rd party partner integration. - :vartype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData - :ivar status: The result of the assessment. Required. - :vartype status: ~azure.mgmt.security.models.AssessmentStatusResponse - """ - - _validation = { - "resource_details": {"required": True}, - "display_name": {"readonly": True}, - "links": {"readonly": True}, - "status": {"required": True}, - } - - _attribute_map = { - "risk": {"key": "risk", "type": "SecurityAssessmentPropertiesBaseRisk"}, - "resource_details": {"key": "resourceDetails", "type": "ResourceDetails"}, - "display_name": {"key": "displayName", "type": "str"}, - "additional_data": {"key": "additionalData", "type": "{str}"}, - "links": {"key": "links", "type": "AssessmentLinks"}, - "metadata": {"key": "metadata", "type": "SecurityAssessmentMetadataProperties"}, - "partners_data": {"key": "partnersData", "type": "SecurityAssessmentPartnerData"}, - "status": {"key": "status", "type": "AssessmentStatusResponse"}, - } - - def __init__( - self, - *, - resource_details: "_models.ResourceDetails", - status: "_models.AssessmentStatusResponse", - risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, - additional_data: Optional[dict[str, str]] = None, - metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, - partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, - **kwargs: Any - ) -> None: - """ - :keyword risk: External model of risk result. - :paramtype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk - :keyword resource_details: Details of the resource that was assessed. Required. - :paramtype resource_details: ~azure.mgmt.security.models.ResourceDetails - :keyword additional_data: Additional data regarding the assessment. - :paramtype additional_data: dict[str, str] - :keyword metadata: Describes properties of an assessment metadata. - :paramtype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties - :keyword partners_data: Data regarding 3rd party partner integration. - :paramtype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData - :keyword status: The result of the assessment. Required. - :paramtype status: ~azure.mgmt.security.models.AssessmentStatusResponse - """ - super().__init__( - risk=risk, - resource_details=resource_details, - additional_data=additional_data, - metadata=metadata, - partners_data=partners_data, - **kwargs - ) - self.status = status - - -class SecurityAssessmentResponse(Resource): - """Security assessment on a resource - response format. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar risk: External model of risk result. - :vartype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk - :ivar resource_details: Details of the resource that was assessed. - :vartype resource_details: ~azure.mgmt.security.models.ResourceDetails - :ivar display_name: User friendly display name of the assessment. - :vartype display_name: str - :ivar additional_data: Additional data regarding the assessment. - :vartype additional_data: dict[str, str] - :ivar links: Links relevant to the assessment. - :vartype links: ~azure.mgmt.security.models.AssessmentLinks - :ivar metadata: Describes properties of an assessment metadata. - :vartype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties - :ivar partners_data: Data regarding 3rd party partner integration. - :vartype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData - :ivar status: The result of the assessment. - :vartype status: ~azure.mgmt.security.models.AssessmentStatusResponse - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "display_name": {"readonly": True}, - "links": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "risk": {"key": "properties.risk", "type": "SecurityAssessmentPropertiesBaseRisk"}, - "resource_details": {"key": "properties.resourceDetails", "type": "ResourceDetails"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "additional_data": {"key": "properties.additionalData", "type": "{str}"}, - "links": {"key": "properties.links", "type": "AssessmentLinks"}, - "metadata": {"key": "properties.metadata", "type": "SecurityAssessmentMetadataProperties"}, - "partners_data": {"key": "properties.partnersData", "type": "SecurityAssessmentPartnerData"}, - "status": {"key": "properties.status", "type": "AssessmentStatusResponse"}, - } - - def __init__( - self, - *, - risk: Optional["_models.SecurityAssessmentPropertiesBaseRisk"] = None, - resource_details: Optional["_models.ResourceDetails"] = None, - additional_data: Optional[dict[str, str]] = None, - metadata: Optional["_models.SecurityAssessmentMetadataProperties"] = None, - partners_data: Optional["_models.SecurityAssessmentPartnerData"] = None, - status: Optional["_models.AssessmentStatusResponse"] = None, - **kwargs: Any - ) -> None: - """ - :keyword risk: External model of risk result. - :paramtype risk: ~azure.mgmt.security.models.SecurityAssessmentPropertiesBaseRisk - :keyword resource_details: Details of the resource that was assessed. - :paramtype resource_details: ~azure.mgmt.security.models.ResourceDetails - :keyword additional_data: Additional data regarding the assessment. - :paramtype additional_data: dict[str, str] - :keyword metadata: Describes properties of an assessment metadata. - :paramtype metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataProperties - :keyword partners_data: Data regarding 3rd party partner integration. - :paramtype partners_data: ~azure.mgmt.security.models.SecurityAssessmentPartnerData - :keyword status: The result of the assessment. - :paramtype status: ~azure.mgmt.security.models.AssessmentStatusResponse - """ - super().__init__(**kwargs) - self.risk = risk - self.resource_details = resource_details - self.display_name: Optional[str] = None - self.additional_data = additional_data - self.links: Optional["_models.AssessmentLinks"] = None - self.metadata = metadata - self.partners_data = partners_data - self.status = status - - -class SecurityConnector(TrackedResource): - """The security connector resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar tags: A list of key value pairs that describe the resource. - :vartype tags: dict[str, str] - :ivar etag: Entity tag is used for comparing two or more entities from the same requested - resource. - :vartype etag: str - :ivar kind: Kind of the resource. - :vartype kind: str - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar hierarchy_identifier: The multi cloud resource identifier (account id in case of AWS - connector, project number in case of GCP connector). - :vartype hierarchy_identifier: str - :ivar hierarchy_identifier_trial_end_date: The date on which the trial period will end, if - applicable. Trial period exists for 30 days after upgrading to payed offerings. - :vartype hierarchy_identifier_trial_end_date: ~datetime.datetime - :ivar environment_name: The multi cloud resource's cloud name. Known values are: "Azure", - "AWS", "GCP", "Github", "AzureDevOps", "GitLab", "DockerHub", and "JFrog". - :vartype environment_name: str or ~azure.mgmt.security.models.CloudName - :ivar offerings: A collection of offerings for the security connector. - :vartype offerings: list[~azure.mgmt.security.models.CloudOffering] - :ivar environment_data: The security connector environment data. - :vartype environment_data: ~azure.mgmt.security.models.EnvironmentData - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "hierarchy_identifier_trial_end_date": {"readonly": True}, - } - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - "etag": {"key": "etag", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "hierarchy_identifier": {"key": "properties.hierarchyIdentifier", "type": "str"}, - "hierarchy_identifier_trial_end_date": { - "key": "properties.hierarchyIdentifierTrialEndDate", - "type": "iso-8601", - }, - "environment_name": {"key": "properties.environmentName", "type": "str"}, - "offerings": {"key": "properties.offerings", "type": "[CloudOffering]"}, - "environment_data": {"key": "properties.environmentData", "type": "EnvironmentData"}, - } - - def __init__( - self, - *, - tags: Optional[dict[str, str]] = None, - etag: Optional[str] = None, - kind: Optional[str] = None, - location: Optional[str] = None, - hierarchy_identifier: Optional[str] = None, - environment_name: Optional[Union[str, "_models.CloudName"]] = None, - offerings: Optional[list["_models.CloudOffering"]] = None, - environment_data: Optional["_models.EnvironmentData"] = None, - **kwargs: Any - ) -> None: - """ - :keyword tags: A list of key value pairs that describe the resource. - :paramtype tags: dict[str, str] - :keyword etag: Entity tag is used for comparing two or more entities from the same requested - resource. - :paramtype etag: str - :keyword kind: Kind of the resource. - :paramtype kind: str - :keyword location: Location where the resource is stored. - :paramtype location: str - :keyword hierarchy_identifier: The multi cloud resource identifier (account id in case of AWS - connector, project number in case of GCP connector). - :paramtype hierarchy_identifier: str - :keyword environment_name: The multi cloud resource's cloud name. Known values are: "Azure", - "AWS", "GCP", "Github", "AzureDevOps", "GitLab", "DockerHub", and "JFrog". - :paramtype environment_name: str or ~azure.mgmt.security.models.CloudName - :keyword offerings: A collection of offerings for the security connector. - :paramtype offerings: list[~azure.mgmt.security.models.CloudOffering] - :keyword environment_data: The security connector environment data. - :paramtype environment_data: ~azure.mgmt.security.models.EnvironmentData - """ - super().__init__(tags=tags, etag=etag, kind=kind, location=location, **kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.hierarchy_identifier = hierarchy_identifier - self.hierarchy_identifier_trial_end_date: Optional[datetime.datetime] = None - self.environment_name = environment_name - self.offerings = offerings - self.environment_data = environment_data - - -class SecurityConnectorsList(_serialization.Model): - """List of security connectors response. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: The list of security connectors under the given scope. Required. - :vartype value: list[~azure.mgmt.security.models.SecurityConnector] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[SecurityConnector]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: list["_models.SecurityConnector"], **kwargs: Any) -> None: - """ - :keyword value: The list of security connectors under the given scope. Required. - :paramtype value: list[~azure.mgmt.security.models.SecurityConnector] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class SecurityOperator(Resource): - """Security operator under a given subscription and pricing. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar identity: Identity for the resource. - :vartype identity: ~azure.mgmt.security.models.Identity - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "identity": {"key": "identity", "type": "Identity"}, - } - - def __init__(self, *, identity: Optional["_models.Identity"] = None, **kwargs: Any) -> None: - """ - :keyword identity: Identity for the resource. - :paramtype identity: ~azure.mgmt.security.models.Identity - """ - super().__init__(**kwargs) - self.identity = identity - - -class SecurityOperatorList(_serialization.Model): - """List of SecurityOperator response. - - All required parameters must be populated in order to send to server. - - :ivar value: List of SecurityOperator configurations. Required. - :vartype value: list[~azure.mgmt.security.models.SecurityOperator] - """ - - _validation = { - "value": {"required": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[SecurityOperator]"}, - } - - def __init__(self, *, value: list["_models.SecurityOperator"], **kwargs: Any) -> None: - """ - :keyword value: List of SecurityOperator configurations. Required. - :paramtype value: list[~azure.mgmt.security.models.SecurityOperator] - """ - super().__init__(**kwargs) - self.value = value - - -class SecuritySolution(Resource, Location): - """SecuritySolution. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar security_family: The security family of the security solution. Known values are: "Waf", - "Ngfw", "SaasWaf", and "Va". - :vartype security_family: str or ~azure.mgmt.security.models.SecurityFamily - :ivar provisioning_state: The security family provisioning State. Known values are: - "Succeeded", "Failed", and "Updating". - :vartype provisioning_state: str or ~azure.mgmt.security.models.ProvisioningState - :ivar template: The security solutions' template. - :vartype template: str - :ivar protection_status: The security solutions' status. - :vartype protection_status: str - """ - - _validation = { - "location": {"readonly": True}, - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "security_family": {"key": "properties.securityFamily", "type": "str"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "template": {"key": "properties.template", "type": "str"}, - "protection_status": {"key": "properties.protectionStatus", "type": "str"}, - } - - def __init__( - self, - *, - security_family: Optional[Union[str, "_models.SecurityFamily"]] = None, - provisioning_state: Optional[Union[str, "_models.ProvisioningState"]] = None, - template: Optional[str] = None, - protection_status: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword security_family: The security family of the security solution. Known values are: - "Waf", "Ngfw", "SaasWaf", and "Va". - :paramtype security_family: str or ~azure.mgmt.security.models.SecurityFamily - :keyword provisioning_state: The security family provisioning State. Known values are: - "Succeeded", "Failed", and "Updating". - :paramtype provisioning_state: str or ~azure.mgmt.security.models.ProvisioningState - :keyword template: The security solutions' template. - :paramtype template: str - :keyword protection_status: The security solutions' status. - :paramtype protection_status: str - """ - super().__init__(**kwargs) - self.location: Optional[str] = None - self.security_family = security_family - self.provisioning_state = provisioning_state - self.template = template - self.protection_status = protection_status - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class SecuritySolutionList(_serialization.Model): - """SecuritySolutionList. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.SecuritySolution] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[SecuritySolution]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[list["_models.SecuritySolution"]] = None, **kwargs: Any) -> None: - """ - :keyword value: - :paramtype value: list[~azure.mgmt.security.models.SecuritySolution] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class SecuritySolutionsReferenceData(Resource, Location): - """SecuritySolutionsReferenceData. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar security_family: The security family of the security solution. Required. Known values - are: "Waf", "Ngfw", "SaasWaf", and "Va". - :vartype security_family: str or ~azure.mgmt.security.models.SecurityFamily - :ivar alert_vendor_name: The security solutions' vendor name. Required. - :vartype alert_vendor_name: str - :ivar package_info_url: The security solutions' package info url. Required. - :vartype package_info_url: str - :ivar product_name: The security solutions' product name. Required. - :vartype product_name: str - :ivar publisher: The security solutions' publisher. Required. - :vartype publisher: str - :ivar publisher_display_name: The security solutions' publisher display name. Required. - :vartype publisher_display_name: str - :ivar template: The security solutions' template. Required. - :vartype template: str - """ - - _validation = { - "location": {"readonly": True}, - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "security_family": {"required": True}, - "alert_vendor_name": {"required": True}, - "package_info_url": {"required": True}, - "product_name": {"required": True}, - "publisher": {"required": True}, - "publisher_display_name": {"required": True}, - "template": {"required": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "security_family": {"key": "properties.securityFamily", "type": "str"}, - "alert_vendor_name": {"key": "properties.alertVendorName", "type": "str"}, - "package_info_url": {"key": "properties.packageInfoUrl", "type": "str"}, - "product_name": {"key": "properties.productName", "type": "str"}, - "publisher": {"key": "properties.publisher", "type": "str"}, - "publisher_display_name": {"key": "properties.publisherDisplayName", "type": "str"}, - "template": {"key": "properties.template", "type": "str"}, - } - - def __init__( - self, - *, - security_family: Union[str, "_models.SecurityFamily"], - alert_vendor_name: str, - package_info_url: str, - product_name: str, - publisher: str, - publisher_display_name: str, - template: str, - **kwargs: Any - ) -> None: - """ - :keyword security_family: The security family of the security solution. Required. Known values - are: "Waf", "Ngfw", "SaasWaf", and "Va". - :paramtype security_family: str or ~azure.mgmt.security.models.SecurityFamily - :keyword alert_vendor_name: The security solutions' vendor name. Required. - :paramtype alert_vendor_name: str - :keyword package_info_url: The security solutions' package info url. Required. - :paramtype package_info_url: str - :keyword product_name: The security solutions' product name. Required. - :paramtype product_name: str - :keyword publisher: The security solutions' publisher. Required. - :paramtype publisher: str - :keyword publisher_display_name: The security solutions' publisher display name. Required. - :paramtype publisher_display_name: str - :keyword template: The security solutions' template. Required. - :paramtype template: str - """ - super().__init__(**kwargs) - self.location: Optional[str] = None - self.security_family = security_family - self.alert_vendor_name = alert_vendor_name - self.package_info_url = package_info_url - self.product_name = product_name - self.publisher = publisher - self.publisher_display_name = publisher_display_name - self.template = template - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class SecuritySolutionsReferenceDataList(_serialization.Model): - """SecuritySolutionsReferenceDataList. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.SecuritySolutionsReferenceData] - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SecuritySolutionsReferenceData]"}, - } - - def __init__( - self, *, value: Optional[list["_models.SecuritySolutionsReferenceData"]] = None, **kwargs: Any - ) -> None: - """ - :keyword value: - :paramtype value: list[~azure.mgmt.security.models.SecuritySolutionsReferenceData] - """ - super().__init__(**kwargs) - self.value = value - - -class SecurityStandard(Resource): - """Security Standard on a resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar display_name: Display name of the standard, equivalent to the standardId. - :vartype display_name: str - :ivar standard_type: Standard type (Custom or Default or Compliance only currently). Known - values are: "Custom", "Default", and "Compliance". - :vartype standard_type: str or ~azure.mgmt.security.models.StandardType - :ivar description: Description of the standard. - :vartype description: str - :ivar assessments: List of assessment keys to apply to standard scope. - :vartype assessments: list[~azure.mgmt.security.models.PartialAssessmentProperties] - :ivar cloud_providers: List of all standard supported clouds. - :vartype cloud_providers: list[str or ~azure.mgmt.security.models.StandardSupportedCloud] - :ivar policy_set_definition_id: The policy set definition id associated with the standard. - :vartype policy_set_definition_id: str - :ivar metadata: The security standard metadata. - :vartype metadata: ~azure.mgmt.security.models.StandardMetadata - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "standard_type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "standard_type": {"key": "properties.standardType", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "assessments": {"key": "properties.assessments", "type": "[PartialAssessmentProperties]"}, - "cloud_providers": {"key": "properties.cloudProviders", "type": "[str]"}, - "policy_set_definition_id": {"key": "properties.policySetDefinitionId", "type": "str"}, - "metadata": {"key": "properties.metadata", "type": "StandardMetadata"}, - } - - def __init__( - self, - *, - display_name: Optional[str] = None, - description: Optional[str] = None, - assessments: Optional[list["_models.PartialAssessmentProperties"]] = None, - cloud_providers: Optional[list[Union[str, "_models.StandardSupportedCloud"]]] = None, - policy_set_definition_id: Optional[str] = None, - metadata: Optional["_models.StandardMetadata"] = None, - **kwargs: Any - ) -> None: - """ - :keyword display_name: Display name of the standard, equivalent to the standardId. - :paramtype display_name: str - :keyword description: Description of the standard. - :paramtype description: str - :keyword assessments: List of assessment keys to apply to standard scope. - :paramtype assessments: list[~azure.mgmt.security.models.PartialAssessmentProperties] - :keyword cloud_providers: List of all standard supported clouds. - :paramtype cloud_providers: list[str or ~azure.mgmt.security.models.StandardSupportedCloud] - :keyword policy_set_definition_id: The policy set definition id associated with the standard. - :paramtype policy_set_definition_id: str - :keyword metadata: The security standard metadata. - :paramtype metadata: ~azure.mgmt.security.models.StandardMetadata - """ - super().__init__(**kwargs) - self.display_name = display_name - self.standard_type: Optional[Union[str, "_models.StandardType"]] = None - self.description = description - self.assessments = assessments - self.cloud_providers = cloud_providers - self.policy_set_definition_id = policy_set_definition_id - self.metadata = metadata - - -class SecurityStandardList(_serialization.Model): - """Page of a Standard list. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: Collection of standards in this page. Required. - :vartype value: list[~azure.mgmt.security.models.SecurityStandard] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True, "readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[SecurityStandard]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.SecurityStandard"]] = None - self.next_link: Optional[str] = None - - -class SecuritySubAssessment(Resource): - """Security sub-assessment on a resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar id_properties_id: Vulnerability ID. - :vartype id_properties_id: str - :ivar display_name: User friendly display name of the sub-assessment. - :vartype display_name: str - :ivar status: Status of the sub-assessment. - :vartype status: ~azure.mgmt.security.models.SubAssessmentStatus - :ivar remediation: Information on how to remediate this sub-assessment. - :vartype remediation: str - :ivar impact: Description of the impact of this sub-assessment. - :vartype impact: str - :ivar category: Category of the sub-assessment. - :vartype category: str - :ivar description: Human readable description of the assessment status. - :vartype description: str - :ivar time_generated: The date and time the sub-assessment was generated. - :vartype time_generated: ~datetime.datetime - :ivar resource_details: Details of the resource that was assessed. - :vartype resource_details: ~azure.mgmt.security.models.ResourceDetails - :ivar additional_data: Details of the sub-assessment. - :vartype additional_data: ~azure.mgmt.security.models.AdditionalData - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "id_properties_id": {"readonly": True}, - "display_name": {"readonly": True}, - "remediation": {"readonly": True}, - "impact": {"readonly": True}, - "category": {"readonly": True}, - "description": {"readonly": True}, - "time_generated": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "id_properties_id": {"key": "properties.id", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "status": {"key": "properties.status", "type": "SubAssessmentStatus"}, - "remediation": {"key": "properties.remediation", "type": "str"}, - "impact": {"key": "properties.impact", "type": "str"}, - "category": {"key": "properties.category", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "time_generated": {"key": "properties.timeGenerated", "type": "iso-8601"}, - "resource_details": {"key": "properties.resourceDetails", "type": "ResourceDetails"}, - "additional_data": {"key": "properties.additionalData", "type": "AdditionalData"}, - } - - def __init__( - self, - *, - status: Optional["_models.SubAssessmentStatus"] = None, - resource_details: Optional["_models.ResourceDetails"] = None, - additional_data: Optional["_models.AdditionalData"] = None, - **kwargs: Any - ) -> None: - """ - :keyword status: Status of the sub-assessment. - :paramtype status: ~azure.mgmt.security.models.SubAssessmentStatus - :keyword resource_details: Details of the resource that was assessed. - :paramtype resource_details: ~azure.mgmt.security.models.ResourceDetails - :keyword additional_data: Details of the sub-assessment. - :paramtype additional_data: ~azure.mgmt.security.models.AdditionalData - """ - super().__init__(**kwargs) - self.id_properties_id: Optional[str] = None - self.display_name: Optional[str] = None - self.status = status - self.remediation: Optional[str] = None - self.impact: Optional[str] = None - self.category: Optional[str] = None - self.description: Optional[str] = None - self.time_generated: Optional[datetime.datetime] = None - self.resource_details = resource_details - self.additional_data = additional_data - - -class SecuritySubAssessmentList(_serialization.Model): - """List of security sub-assessments. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.SecuritySubAssessment] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[SecuritySubAssessment]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.SecuritySubAssessment"]] = None - self.next_link: Optional[str] = None - - -class SecurityTask(Resource): - """Security task that we recommend to do in order to strengthen security. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar state: State of the task (Active, Resolved etc.). - :vartype state: str - :ivar creation_time_utc: The time this task was discovered in UTC. - :vartype creation_time_utc: ~datetime.datetime - :ivar security_task_parameters: Changing set of properties, depending on the task type that is - derived from the name field. - :vartype security_task_parameters: ~azure.mgmt.security.models.SecurityTaskParameters - :ivar last_state_change_time_utc: The time this task's details were last changed in UTC. - :vartype last_state_change_time_utc: ~datetime.datetime - :ivar sub_state: Additional data on the state of the task. - :vartype sub_state: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "state": {"readonly": True}, - "creation_time_utc": {"readonly": True}, - "last_state_change_time_utc": {"readonly": True}, - "sub_state": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "state": {"key": "properties.state", "type": "str"}, - "creation_time_utc": {"key": "properties.creationTimeUtc", "type": "iso-8601"}, - "security_task_parameters": {"key": "properties.securityTaskParameters", "type": "SecurityTaskParameters"}, - "last_state_change_time_utc": {"key": "properties.lastStateChangeTimeUtc", "type": "iso-8601"}, - "sub_state": {"key": "properties.subState", "type": "str"}, - } - - def __init__( - self, *, security_task_parameters: Optional["_models.SecurityTaskParameters"] = None, **kwargs: Any - ) -> None: - """ - :keyword security_task_parameters: Changing set of properties, depending on the task type that - is derived from the name field. - :paramtype security_task_parameters: ~azure.mgmt.security.models.SecurityTaskParameters - """ - super().__init__(**kwargs) - self.state: Optional[str] = None - self.creation_time_utc: Optional[datetime.datetime] = None - self.security_task_parameters = security_task_parameters - self.last_state_change_time_utc: Optional[datetime.datetime] = None - self.sub_state: Optional[str] = None - - -class SecurityTaskList(_serialization.Model): - """List of security task recommendations. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.SecurityTask] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[SecurityTask]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.SecurityTask"]] = None - self.next_link: Optional[str] = None - - -class SecurityTaskParameters(_serialization.Model): - """Changing set of properties, depending on the task type that is derived from the name field. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar additional_properties: Unmatched properties from the message are deserialized to this - collection. - :vartype additional_properties: dict[str, any] - :ivar name: Name of the task type. - :vartype name: str - """ - - _validation = { - "name": {"readonly": True}, - } - - _attribute_map = { - "additional_properties": {"key": "", "type": "{object}"}, - "name": {"key": "name", "type": "str"}, - } - - def __init__(self, *, additional_properties: Optional[dict[str, Any]] = None, **kwargs: Any) -> None: - """ - :keyword additional_properties: Unmatched properties from the message are deserialized to this - collection. - :paramtype additional_properties: dict[str, any] - """ - super().__init__(**kwargs) - self.additional_properties = additional_properties - self.name: Optional[str] = None - - -class SensitiveDataDiscoveryProperties(_serialization.Model): - """Properties of Sensitive Data Discovery. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar is_enabled: Indicates whether Sensitive Data Discovery should be enabled. - :vartype is_enabled: bool - :ivar operation_status: Upon failure or partial success. Additional data describing Sensitive - Data Discovery enable/disable operation. - :vartype operation_status: ~azure.mgmt.security.models.OperationStatusAutoGenerated - """ - - _validation = { - "operation_status": {"readonly": True}, - } - - _attribute_map = { - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "operation_status": {"key": "operationStatus", "type": "OperationStatusAutoGenerated"}, - } - - def __init__(self, *, is_enabled: Optional[bool] = None, **kwargs: Any) -> None: - """ - :keyword is_enabled: Indicates whether Sensitive Data Discovery should be enabled. - :paramtype is_enabled: bool - """ - super().__init__(**kwargs) - self.is_enabled = is_enabled - self.operation_status: Optional["_models.OperationStatusAutoGenerated"] = None - - -class SensitivityLabel(_serialization.Model): - """The sensitivity label. - - :ivar display_name: The name of the sensitivity label. - :vartype display_name: str - :ivar description: The description of the sensitivity label. - :vartype description: str - :ivar rank: The rank of the sensitivity label. Known values are: "None", "Low", "Medium", - "High", and "Critical". - :vartype rank: str or ~azure.mgmt.security.models.Rank - :ivar order: The order of the sensitivity label. - :vartype order: int - :ivar enabled: Indicates whether the label is enabled or not. - :vartype enabled: bool - """ - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "rank": {"key": "rank", "type": "str"}, - "order": {"key": "order", "type": "int"}, - "enabled": {"key": "enabled", "type": "bool"}, - } - - def __init__( - self, - *, - display_name: Optional[str] = None, - description: Optional[str] = None, - rank: Optional[Union[str, "_models.Rank"]] = None, - order: Optional[int] = None, - enabled: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword display_name: The name of the sensitivity label. - :paramtype display_name: str - :keyword description: The description of the sensitivity label. - :paramtype description: str - :keyword rank: The rank of the sensitivity label. Known values are: "None", "Low", "Medium", - "High", and "Critical". - :paramtype rank: str or ~azure.mgmt.security.models.Rank - :keyword order: The order of the sensitivity label. - :paramtype order: int - :keyword enabled: Indicates whether the label is enabled or not. - :paramtype enabled: bool - """ - super().__init__(**kwargs) - self.display_name = display_name - self.description = description - self.rank = rank - self.order = order - self.enabled = enabled - - -class ServerVulnerabilityAssessment(Resource): - """Describes the server vulnerability assessment details on a resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar provisioning_state: The provisioningState of the vulnerability assessment capability on - the VM. Known values are: "Succeeded", "Failed", "Canceled", "Provisioning", and - "Deprovisioning". - :vartype provisioning_state: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentPropertiesProvisioningState - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.provisioning_state: Optional[ - Union[str, "_models.ServerVulnerabilityAssessmentPropertiesProvisioningState"] - ] = None - - -class ServerVulnerabilityAssessmentsList(_serialization.Model): - """List of server vulnerability assessments. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.ServerVulnerabilityAssessment] - """ - - _attribute_map = { - "value": {"key": "value", "type": "[ServerVulnerabilityAssessment]"}, - } - - def __init__(self, *, value: Optional[list["_models.ServerVulnerabilityAssessment"]] = None, **kwargs: Any) -> None: - """ - :keyword value: - :paramtype value: list[~azure.mgmt.security.models.ServerVulnerabilityAssessment] - """ - super().__init__(**kwargs) - self.value = value - - -class ServerVulnerabilityAssessmentsSettingsList(_serialization.Model): # pylint: disable=name-too-long - """A page of a server vulnerability assessments settings list. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: A collection of server vulnerability assessments settings in this page. - :vartype value: list[~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[ServerVulnerabilityAssessmentsSetting]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.ServerVulnerabilityAssessmentsSetting"]] = None - self.next_link: Optional[str] = None - - -class ServerVulnerabilityProperties(AdditionalData): - """Additional context fields for server vulnerability assessment. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar assessed_resource_type: Sub-assessment resource type. Required. Known values are: - "SqlServerVulnerability", "ContainerRegistryVulnerability", and "ServerVulnerability". - :vartype assessed_resource_type: str or ~azure.mgmt.security.models.AssessedResourceType - :ivar type: Vulnerability Type. e.g: Vulnerability, Potential Vulnerability, Information - Gathered. - :vartype type: str - :ivar cvss: Dictionary from cvss version to cvss details object. - :vartype cvss: dict[str, ~azure.mgmt.security.models.CVSS] - :ivar patchable: Indicates whether a patch is available or not. - :vartype patchable: bool - :ivar cve: List of CVEs. - :vartype cve: list[~azure.mgmt.security.models.CVE] - :ivar threat: Threat name. - :vartype threat: str - :ivar published_time: Published time. - :vartype published_time: ~datetime.datetime - :ivar vendor_references: - :vartype vendor_references: list[~azure.mgmt.security.models.VendorReference] - """ - - _validation = { - "assessed_resource_type": {"required": True}, - "type": {"readonly": True}, - "cvss": {"readonly": True}, - "patchable": {"readonly": True}, - "cve": {"readonly": True}, - "threat": {"readonly": True}, - "published_time": {"readonly": True}, - "vendor_references": {"readonly": True}, - } - - _attribute_map = { - "assessed_resource_type": {"key": "assessedResourceType", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "cvss": {"key": "cvss", "type": "{CVSS}"}, - "patchable": {"key": "patchable", "type": "bool"}, - "cve": {"key": "cve", "type": "[CVE]"}, - "threat": {"key": "threat", "type": "str"}, - "published_time": {"key": "publishedTime", "type": "iso-8601"}, - "vendor_references": {"key": "vendorReferences", "type": "[VendorReference]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.assessed_resource_type: str = "ServerVulnerabilityAssessment" - self.type: Optional[str] = None - self.cvss: Optional[dict[str, "_models.CVSS"]] = None - self.patchable: Optional[bool] = None - self.cve: Optional[list["_models.CVE"]] = None - self.threat: Optional[str] = None - self.published_time: Optional[datetime.datetime] = None - self.vendor_references: Optional[list["_models.VendorReference"]] = None - - -class SettingsList(_serialization.Model): - """Subscription settings list. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: The settings list. - :vartype value: list[~azure.mgmt.security.models.Setting] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Setting]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[list["_models.Setting"]] = None, **kwargs: Any) -> None: - """ - :keyword value: The settings list. - :paramtype value: list[~azure.mgmt.security.models.Setting] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None - - -class SqlServerVulnerabilityProperties(AdditionalData): - """Details of the resource that was assessed. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar assessed_resource_type: Sub-assessment resource type. Required. Known values are: - "SqlServerVulnerability", "ContainerRegistryVulnerability", and "ServerVulnerability". - :vartype assessed_resource_type: str or ~azure.mgmt.security.models.AssessedResourceType - :ivar type: The resource type the sub assessment refers to in its resource details. - :vartype type: str - :ivar query: The T-SQL query that runs on your SQL database to perform the particular check. - :vartype query: str - """ - - _validation = { - "assessed_resource_type": {"required": True}, - "type": {"readonly": True}, - "query": {"readonly": True}, - } - - _attribute_map = { - "assessed_resource_type": {"key": "assessedResourceType", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "query": {"key": "query", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.assessed_resource_type: str = "SqlServerVulnerability" - self.type: Optional[str] = None - self.query: Optional[str] = None - - -class SqlVulnerabilityAssessmentScanOperationResult(Resource): # pylint: disable=name-too-long - """Represents the result of a SQL Vulnerability Assessment scan operation, wrapped in the ARM - resource envelope. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: Represents the properties of a SQL Vulnerability Assessment scan operation - result. - :vartype properties: - ~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResultProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "SqlVulnerabilityAssessmentScanOperationResultProperties"}, - } - - def __init__( - self, - *, - properties: Optional["_models.SqlVulnerabilityAssessmentScanOperationResultProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword properties: Represents the properties of a SQL Vulnerability Assessment scan operation - result. - :paramtype properties: - ~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResultProperties - """ - super().__init__(**kwargs) - self.properties = properties - - -class SqlVulnerabilityAssessmentScanOperationResultProperties(_serialization.Model): # pylint: disable=name-too-long - """Represents the properties of a SQL Vulnerability Assessment scan operation result. - - :ivar operation_id: Gets or sets the operation id. - :vartype operation_id: str - :ivar scan_status: The scan operation status. Known values are: "Passed", "Failed", - "FailedToRun", and "InProgress". - :vartype scan_status: str or ~azure.mgmt.security.models.ScanOperationStatus - """ - - _attribute_map = { - "operation_id": {"key": "operationId", "type": "str"}, - "scan_status": {"key": "scanStatus", "type": "str"}, - } - - def __init__( - self, - *, - operation_id: Optional[str] = None, - scan_status: Optional[Union[str, "_models.ScanOperationStatus"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword operation_id: Gets or sets the operation id. - :paramtype operation_id: str - :keyword scan_status: The scan operation status. Known values are: "Passed", "Failed", - "FailedToRun", and "InProgress". - :paramtype scan_status: str or ~azure.mgmt.security.models.ScanOperationStatus - """ - super().__init__(**kwargs) - self.operation_id = operation_id - self.scan_status = scan_status - - -class SqlVulnerabilityAssessmentSettings(Resource): - """SQL Vulnerability Assessment settings resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar properties: SQL Vulnerability Assessment settings properties. - :vartype properties: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettingsProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "properties": {"key": "properties", "type": "SqlVulnerabilityAssessmentSettingsProperties"}, - } - - def __init__( - self, *, properties: Optional["_models.SqlVulnerabilityAssessmentSettingsProperties"] = None, **kwargs: Any - ) -> None: - """ - :keyword properties: SQL Vulnerability Assessment settings properties. - :paramtype properties: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettingsProperties - """ - super().__init__(**kwargs) - self.properties = properties - - -class SqlVulnerabilityAssessmentSettingsProperties(_serialization.Model): # pylint: disable=name-too-long - """SQL Vulnerability Assessment settings properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar creation_time: The creation time of the SQL Vulnerability Assessment settings. - :vartype creation_time: ~datetime.datetime - :ivar state: Represents the state of a SQL Vulnerability Assessment. Known values are: - "Enabled" and "Disabled". - :vartype state: str or ~azure.mgmt.security.models.SqlVulnerabilityAssessmentState - """ - - _validation = { - "creation_time": {"readonly": True}, - } - - _attribute_map = { - "creation_time": {"key": "creationTime", "type": "iso-8601"}, - "state": {"key": "state", "type": "str"}, - } - - def __init__( - self, *, state: Optional[Union[str, "_models.SqlVulnerabilityAssessmentState"]] = None, **kwargs: Any - ) -> None: - """ - :keyword state: Represents the state of a SQL Vulnerability Assessment. Known values are: - "Enabled" and "Disabled". - :paramtype state: str or ~azure.mgmt.security.models.SqlVulnerabilityAssessmentState - """ - super().__init__(**kwargs) - self.creation_time: Optional[datetime.datetime] = None - self.state = state - - -class Standard(TrackedResource): - """Security Standard on a resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar tags: A list of key value pairs that describe the resource. - :vartype tags: dict[str, str] - :ivar etag: Entity tag is used for comparing two or more entities from the same requested - resource. - :vartype etag: str - :ivar kind: Kind of the resource. - :vartype kind: str - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.security.models.SystemData - :ivar display_name: display name of the standard, equivalent to the standardId. - :vartype display_name: str - :ivar standard_type: standard type (Custom or BuiltIn only currently). - :vartype standard_type: str - :ivar description: description of the standard. - :vartype description: str - :ivar category: category of the standard provided. - :vartype category: str - :ivar components: List of component objects containing component unique keys (such as - assessment keys) to apply to standard scope. Currently only supports assessment keys. - :vartype components: list[~azure.mgmt.security.models.StandardComponentProperties] - :ivar supported_clouds: List of all standard supported clouds. - :vartype supported_clouds: list[str or ~azure.mgmt.security.models.StandardSupportedClouds] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "standard_type": {"readonly": True}, - } - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - "etag": {"key": "etag", "type": "str"}, - "kind": {"key": "kind", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "standard_type": {"key": "properties.standardType", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "category": {"key": "properties.category", "type": "str"}, - "components": {"key": "properties.components", "type": "[StandardComponentProperties]"}, - "supported_clouds": {"key": "properties.supportedClouds", "type": "[str]"}, - } - - def __init__( - self, - *, - tags: Optional[dict[str, str]] = None, - etag: Optional[str] = None, - kind: Optional[str] = None, - location: Optional[str] = None, - display_name: Optional[str] = None, - description: Optional[str] = None, - category: Optional[str] = None, - components: Optional[list["_models.StandardComponentProperties"]] = None, - supported_clouds: Optional[list[Union[str, "_models.StandardSupportedClouds"]]] = None, - **kwargs: Any - ) -> None: - """ - :keyword tags: A list of key value pairs that describe the resource. - :paramtype tags: dict[str, str] - :keyword etag: Entity tag is used for comparing two or more entities from the same requested - resource. - :paramtype etag: str - :keyword kind: Kind of the resource. - :paramtype kind: str - :keyword location: Location where the resource is stored. - :paramtype location: str - :keyword display_name: display name of the standard, equivalent to the standardId. - :paramtype display_name: str - :keyword description: description of the standard. - :paramtype description: str - :keyword category: category of the standard provided. - :paramtype category: str - :keyword components: List of component objects containing component unique keys (such as - assessment keys) to apply to standard scope. Currently only supports assessment keys. - :paramtype components: list[~azure.mgmt.security.models.StandardComponentProperties] - :keyword supported_clouds: List of all standard supported clouds. - :paramtype supported_clouds: list[str or ~azure.mgmt.security.models.StandardSupportedClouds] - """ - super().__init__(tags=tags, etag=etag, kind=kind, location=location, **kwargs) - self.system_data: Optional["_models.SystemData"] = None - self.display_name = display_name - self.standard_type: Optional[str] = None - self.description = description - self.category = category - self.components = components - self.supported_clouds = supported_clouds - - -class StandardAssignment(Resource): - """Security Assignment on a resource group over a given scope. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar display_name: Display name of the standardAssignment. - :vartype display_name: str - :ivar description: Description of the standardAssignment. - :vartype description: str - :ivar assigned_standard: Standard item with key as applied to this standard assignment over the - given scope. - :vartype assigned_standard: ~azure.mgmt.security.models.AssignedStandardItem - :ivar effect: Expected effect of this assignment (Audit/Exempt/Attest). Known values are: - "Audit", "Exempt", and "Attest". - :vartype effect: str or ~azure.mgmt.security.models.Effect - :ivar excluded_scopes: Excluded scopes, filter out the descendants of the scope (on management - scopes). - :vartype excluded_scopes: list[str] - :ivar expires_on: Expiration date of this assignment as a full ISO date. - :vartype expires_on: ~datetime.datetime - :ivar exemption_data: Additional data about assignment that has Exempt effect. - :vartype exemption_data: ~azure.mgmt.security.models.StandardAssignmentPropertiesExemptionData - :ivar attestation_data: Additional data about assignment that has Attest effect. - :vartype attestation_data: - ~azure.mgmt.security.models.StandardAssignmentPropertiesAttestationData - :ivar metadata: The standard assignment metadata. - :vartype metadata: ~azure.mgmt.security.models.StandardAssignmentMetadata - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "display_name": {"key": "properties.displayName", "type": "str"}, - "description": {"key": "properties.description", "type": "str"}, - "assigned_standard": {"key": "properties.assignedStandard", "type": "AssignedStandardItem"}, - "effect": {"key": "properties.effect", "type": "str"}, - "excluded_scopes": {"key": "properties.excludedScopes", "type": "[str]"}, - "expires_on": {"key": "properties.expiresOn", "type": "iso-8601"}, - "exemption_data": {"key": "properties.exemptionData", "type": "StandardAssignmentPropertiesExemptionData"}, - "attestation_data": { - "key": "properties.attestationData", - "type": "StandardAssignmentPropertiesAttestationData", - }, - "metadata": {"key": "properties.metadata", "type": "StandardAssignmentMetadata"}, - } - - def __init__( - self, - *, - display_name: Optional[str] = None, - description: Optional[str] = None, - assigned_standard: Optional["_models.AssignedStandardItem"] = None, - effect: Optional[Union[str, "_models.Effect"]] = None, - excluded_scopes: Optional[list[str]] = None, - expires_on: Optional[datetime.datetime] = None, - exemption_data: Optional["_models.StandardAssignmentPropertiesExemptionData"] = None, - attestation_data: Optional["_models.StandardAssignmentPropertiesAttestationData"] = None, - metadata: Optional["_models.StandardAssignmentMetadata"] = None, - **kwargs: Any - ) -> None: - """ - :keyword display_name: Display name of the standardAssignment. - :paramtype display_name: str - :keyword description: Description of the standardAssignment. - :paramtype description: str - :keyword assigned_standard: Standard item with key as applied to this standard assignment over - the given scope. - :paramtype assigned_standard: ~azure.mgmt.security.models.AssignedStandardItem - :keyword effect: Expected effect of this assignment (Audit/Exempt/Attest). Known values are: - "Audit", "Exempt", and "Attest". - :paramtype effect: str or ~azure.mgmt.security.models.Effect - :keyword excluded_scopes: Excluded scopes, filter out the descendants of the scope (on - management scopes). - :paramtype excluded_scopes: list[str] - :keyword expires_on: Expiration date of this assignment as a full ISO date. - :paramtype expires_on: ~datetime.datetime - :keyword exemption_data: Additional data about assignment that has Exempt effect. - :paramtype exemption_data: - ~azure.mgmt.security.models.StandardAssignmentPropertiesExemptionData - :keyword attestation_data: Additional data about assignment that has Attest effect. - :paramtype attestation_data: - ~azure.mgmt.security.models.StandardAssignmentPropertiesAttestationData - :keyword metadata: The standard assignment metadata. - :paramtype metadata: ~azure.mgmt.security.models.StandardAssignmentMetadata - """ - super().__init__(**kwargs) - self.display_name = display_name - self.description = description - self.assigned_standard = assigned_standard - self.effect = effect - self.excluded_scopes = excluded_scopes - self.expires_on = expires_on - self.exemption_data = exemption_data - self.attestation_data = attestation_data - self.metadata = metadata - - -class StandardAssignmentMetadata(_serialization.Model): - """The standard assignment metadata. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar created_by: Standard assignment Created by object id (GUID). - :vartype created_by: str - :ivar created_on: Standard assignment creation date. - :vartype created_on: ~datetime.datetime - :ivar last_updated_by: Standard assignment last updated by object id (GUID). - :vartype last_updated_by: str - :ivar last_updated_on: Standard assignment last update date. - :vartype last_updated_on: ~datetime.datetime - """ - - _validation = { - "created_by": {"readonly": True}, - "created_on": {"readonly": True}, - "last_updated_by": {"readonly": True}, - "last_updated_on": {"readonly": True}, - } - - _attribute_map = { - "created_by": {"key": "createdBy", "type": "str"}, - "created_on": {"key": "createdOn", "type": "iso-8601"}, - "last_updated_by": {"key": "lastUpdatedBy", "type": "str"}, - "last_updated_on": {"key": "lastUpdatedOn", "type": "iso-8601"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.created_by: Optional[str] = None - self.created_on: Optional[datetime.datetime] = None - self.last_updated_by: Optional[str] = None - self.last_updated_on: Optional[datetime.datetime] = None - - -class StandardAssignmentPropertiesAttestationData(_serialization.Model): # pylint: disable=name-too-long - """Additional data about assignment that has Attest effect. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar compliance_state: Attest category of this assignment. Known values are: "unknown", - "compliant", and "nonCompliant". - :vartype compliance_state: str or ~azure.mgmt.security.models.AttestationComplianceState - :ivar assigned_assessment: Component item with key as applied to this standard assignment over - the given scope. - :vartype assigned_assessment: ~azure.mgmt.security.models.AssignedAssessmentItem - :ivar compliance_date: Attestation compliance date. - :vartype compliance_date: ~datetime.datetime - :ivar evidence: Array of links to attestation evidence. - :vartype evidence: list[~azure.mgmt.security.models.AttestationEvidence] - """ - - _validation = { - "compliance_date": {"readonly": True}, - } - - _attribute_map = { - "compliance_state": {"key": "complianceState", "type": "str"}, - "assigned_assessment": {"key": "assignedAssessment", "type": "AssignedAssessmentItem"}, - "compliance_date": {"key": "complianceDate", "type": "iso-8601"}, - "evidence": {"key": "evidence", "type": "[AttestationEvidence]"}, - } - - def __init__( - self, - *, - compliance_state: Optional[Union[str, "_models.AttestationComplianceState"]] = None, - assigned_assessment: Optional["_models.AssignedAssessmentItem"] = None, - evidence: Optional[list["_models.AttestationEvidence"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword compliance_state: Attest category of this assignment. Known values are: "unknown", - "compliant", and "nonCompliant". - :paramtype compliance_state: str or ~azure.mgmt.security.models.AttestationComplianceState - :keyword assigned_assessment: Component item with key as applied to this standard assignment - over the given scope. - :paramtype assigned_assessment: ~azure.mgmt.security.models.AssignedAssessmentItem - :keyword evidence: Array of links to attestation evidence. - :paramtype evidence: list[~azure.mgmt.security.models.AttestationEvidence] - """ - super().__init__(**kwargs) - self.compliance_state = compliance_state - self.assigned_assessment = assigned_assessment - self.compliance_date: Optional[datetime.datetime] = None - self.evidence = evidence - - -class StandardAssignmentPropertiesExemptionData(_serialization.Model): # pylint: disable=name-too-long - """Additional data about assignment that has Exempt effect. - - :ivar exemption_category: Exemption category of this assignment. Known values are: "waiver" and - "mitigated". - :vartype exemption_category: str or ~azure.mgmt.security.models.ExemptionCategory - :ivar assigned_assessment: Component item with key as applied to this standard assignment over - the given scope. - :vartype assigned_assessment: ~azure.mgmt.security.models.AssignedAssessmentItem - """ - - _attribute_map = { - "exemption_category": {"key": "exemptionCategory", "type": "str"}, - "assigned_assessment": {"key": "assignedAssessment", "type": "AssignedAssessmentItem"}, - } - - def __init__( - self, - *, - exemption_category: Optional[Union[str, "_models.ExemptionCategory"]] = None, - assigned_assessment: Optional["_models.AssignedAssessmentItem"] = None, - **kwargs: Any - ) -> None: - """ - :keyword exemption_category: Exemption category of this assignment. Known values are: "waiver" - and "mitigated". - :paramtype exemption_category: str or ~azure.mgmt.security.models.ExemptionCategory - :keyword assigned_assessment: Component item with key as applied to this standard assignment - over the given scope. - :paramtype assigned_assessment: ~azure.mgmt.security.models.AssignedAssessmentItem - """ - super().__init__(**kwargs) - self.exemption_category = exemption_category - self.assigned_assessment = assigned_assessment - - -class StandardAssignmentsList(_serialization.Model): - """Page of a standard assignment list. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: Collection of standardAssignments in this page. Required. - :vartype value: list[~azure.mgmt.security.models.StandardAssignment] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True, "readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[StandardAssignment]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.StandardAssignment"]] = None - self.next_link: Optional[str] = None - - -class StandardComponentProperties(_serialization.Model): - """Describes properties of an component as related to the standard. - - :ivar key: Component Key matching componentMetadata. - :vartype key: str - """ - - _attribute_map = { - "key": {"key": "key", "type": "str"}, - } - - def __init__(self, *, key: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword key: Component Key matching componentMetadata. - :paramtype key: str - """ - super().__init__(**kwargs) - self.key = key - - -class StandardList(_serialization.Model): - """Page of a Standard list. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Collection of standards in this page. - :vartype value: list[~azure.mgmt.security.models.Standard] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Standard]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.Standard"]] = None - self.next_link: Optional[str] = None - - -class StandardMetadata(_serialization.Model): - """The standard metadata. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar created_by: Standard Created by object id (GUID). - :vartype created_by: str - :ivar created_on: Standard creation date. - :vartype created_on: ~datetime.datetime - :ivar last_updated_by: Standard last updated by object id (GUID). - :vartype last_updated_by: str - :ivar last_updated_on: Standard last update date. - :vartype last_updated_on: ~datetime.datetime - """ - - _validation = { - "created_by": {"readonly": True}, - "created_on": {"readonly": True}, - "last_updated_by": {"readonly": True}, - "last_updated_on": {"readonly": True}, - } - - _attribute_map = { - "created_by": {"key": "createdBy", "type": "str"}, - "created_on": {"key": "createdOn", "type": "iso-8601"}, - "last_updated_by": {"key": "lastUpdatedBy", "type": "str"}, - "last_updated_on": {"key": "lastUpdatedOn", "type": "iso-8601"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.created_by: Optional[str] = None - self.created_on: Optional[datetime.datetime] = None - self.last_updated_by: Optional[str] = None - self.last_updated_on: Optional[datetime.datetime] = None - - -class StatusAutoGenerated(_serialization.Model): - """The status of the health report. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The status of the health report. Known values are: "Healthy", "NotHealthy", and - "NotApplicable". - :vartype code: str or ~azure.mgmt.security.models.StatusName - :ivar reason: The reason of the given status. - :vartype reason: str - :ivar last_scanned_date: The date of when the resource was scanned in the last time. - :vartype last_scanned_date: ~datetime.datetime - :ivar status_change_date: The date of when the status of the health report was changed in the - last time. - :vartype status_change_date: ~datetime.datetime - :ivar first_evaluation_date: The date of when the resource of the health report was scanned in - the first time. - :vartype first_evaluation_date: ~datetime.datetime - """ - - _validation = { - "reason": {"readonly": True}, - "last_scanned_date": {"readonly": True}, - "status_change_date": {"readonly": True}, - "first_evaluation_date": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "reason": {"key": "reason", "type": "str"}, - "last_scanned_date": {"key": "lastScannedDate", "type": "iso-8601"}, - "status_change_date": {"key": "statusChangeDate", "type": "iso-8601"}, - "first_evaluation_date": {"key": "firstEvaluationDate", "type": "iso-8601"}, - } - - def __init__(self, *, code: Optional[Union[str, "_models.StatusName"]] = None, **kwargs: Any) -> None: - """ - :keyword code: The status of the health report. Known values are: "Healthy", "NotHealthy", and - "NotApplicable". - :paramtype code: str or ~azure.mgmt.security.models.StatusName - """ - super().__init__(**kwargs) - self.code = code - self.reason: Optional[str] = None - self.last_scanned_date: Optional[datetime.datetime] = None - self.status_change_date: Optional[datetime.datetime] = None - self.first_evaluation_date: Optional[datetime.datetime] = None - - -class SubAssessmentStatus(_serialization.Model): - """Status of the sub-assessment. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: Programmatic code for the status of the assessment. Known values are: "Healthy", - "Unhealthy", and "NotApplicable". - :vartype code: str or ~azure.mgmt.security.models.SubAssessmentStatusCode - :ivar cause: Programmatic code for the cause of the assessment status. - :vartype cause: str - :ivar description: Human readable description of the assessment status. - :vartype description: str - :ivar severity: The sub-assessment severity level. Known values are: "Low", "Medium", and - "High". - :vartype severity: str or ~azure.mgmt.security.models.Severity - """ - - _validation = { - "code": {"readonly": True}, - "cause": {"readonly": True}, - "description": {"readonly": True}, - "severity": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "cause": {"key": "cause", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "severity": {"key": "severity", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code: Optional[Union[str, "_models.SubAssessmentStatusCode"]] = None - self.cause: Optional[str] = None - self.description: Optional[str] = None - self.severity: Optional[Union[str, "_models.Severity"]] = None - - -class SuppressionAlertsScope(_serialization.Model): - """SuppressionAlertsScope. - - All required parameters must be populated in order to send to server. - - :ivar all_of: All the conditions inside need to be true in order to suppress the alert. - Required. - :vartype all_of: list[~azure.mgmt.security.models.ScopeElement] - """ - - _validation = { - "all_of": {"required": True}, - } - - _attribute_map = { - "all_of": {"key": "allOf", "type": "[ScopeElement]"}, - } - - def __init__(self, *, all_of: list["_models.ScopeElement"], **kwargs: Any) -> None: - """ - :keyword all_of: All the conditions inside need to be true in order to suppress the alert. - Required. - :paramtype all_of: list[~azure.mgmt.security.models.ScopeElement] - """ - super().__init__(**kwargs) - self.all_of = all_of - - -class SystemData(_serialization.Model): - """Metadata pertaining to creation and last modification of the resource. - - :ivar created_by: The identity that created the resource. - :vartype created_by: str - :ivar created_by_type: The type of identity that created the resource. Known values are: - "User", "Application", "ManagedIdentity", and "Key". - :vartype created_by_type: str or ~azure.mgmt.security.models.CreatedByType - :ivar created_at: The timestamp of resource creation (UTC). - :vartype created_at: ~datetime.datetime - :ivar last_modified_by: The identity that last modified the resource. - :vartype last_modified_by: str - :ivar last_modified_by_type: The type of identity that last modified the resource. Known values - are: "User", "Application", "ManagedIdentity", and "Key". - :vartype last_modified_by_type: str or ~azure.mgmt.security.models.CreatedByType - :ivar last_modified_at: The timestamp of resource last modification (UTC). - :vartype last_modified_at: ~datetime.datetime - """ - - _attribute_map = { - "created_by": {"key": "createdBy", "type": "str"}, - "created_by_type": {"key": "createdByType", "type": "str"}, - "created_at": {"key": "createdAt", "type": "iso-8601"}, - "last_modified_by": {"key": "lastModifiedBy", "type": "str"}, - "last_modified_by_type": {"key": "lastModifiedByType", "type": "str"}, - "last_modified_at": {"key": "lastModifiedAt", "type": "iso-8601"}, - } - - def __init__( - self, - *, - created_by: Optional[str] = None, - created_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, - created_at: Optional[datetime.datetime] = None, - last_modified_by: Optional[str] = None, - last_modified_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, - last_modified_at: Optional[datetime.datetime] = None, - **kwargs: Any - ) -> None: - """ - :keyword created_by: The identity that created the resource. - :paramtype created_by: str - :keyword created_by_type: The type of identity that created the resource. Known values are: - "User", "Application", "ManagedIdentity", and "Key". - :paramtype created_by_type: str or ~azure.mgmt.security.models.CreatedByType - :keyword created_at: The timestamp of resource creation (UTC). - :paramtype created_at: ~datetime.datetime - :keyword last_modified_by: The identity that last modified the resource. - :paramtype last_modified_by: str - :keyword last_modified_by_type: The type of identity that last modified the resource. Known - values are: "User", "Application", "ManagedIdentity", and "Key". - :paramtype last_modified_by_type: str or ~azure.mgmt.security.models.CreatedByType - :keyword last_modified_at: The timestamp of resource last modification (UTC). - :paramtype last_modified_at: ~datetime.datetime - """ - super().__init__(**kwargs) - self.created_by = created_by - self.created_by_type = created_by_type - self.created_at = created_at - self.last_modified_by = last_modified_by - self.last_modified_by_type = last_modified_by_type - self.last_modified_at = last_modified_at - - -class TargetBranchConfiguration(_serialization.Model): - """Repository branch configuration for PR Annotations. - - :ivar branch_names: Gets or sets branches that should have annotations. - :vartype branch_names: list[str] - :ivar annotate_default_branch: Configuration of PR Annotations on default branch. - - Enabled - PR Annotations are enabled on the resource's default branch. - Disabled - PR Annotations are disabled on the resource's default branch. Known values are: - "Disabled" and "Enabled". - :vartype annotate_default_branch: str or ~azure.mgmt.security.models.AnnotateDefaultBranchState - """ - - _attribute_map = { - "branch_names": {"key": "branchNames", "type": "[str]"}, - "annotate_default_branch": {"key": "annotateDefaultBranch", "type": "str"}, - } - - def __init__( - self, - *, - branch_names: Optional[list[str]] = None, - annotate_default_branch: Optional[Union[str, "_models.AnnotateDefaultBranchState"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword branch_names: Gets or sets branches that should have annotations. - :paramtype branch_names: list[str] - :keyword annotate_default_branch: Configuration of PR Annotations on default branch. - - Enabled - PR Annotations are enabled on the resource's default branch. - Disabled - PR Annotations are disabled on the resource's default branch. Known values are: - "Disabled" and "Enabled". - :paramtype annotate_default_branch: str or - ~azure.mgmt.security.models.AnnotateDefaultBranchState - """ - super().__init__(**kwargs) - self.branch_names = branch_names - self.annotate_default_branch = annotate_default_branch - - -class TopologyList(_serialization.Model): - """TopologyList. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: - :vartype value: list[~azure.mgmt.security.models.TopologyResource] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[TopologyResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value: Optional[list["_models.TopologyResource"]] = None - self.next_link: Optional[str] = None - - -class TopologyResource(Resource, Location): - """TopologyResource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar location: Location where the resource is stored. - :vartype location: str - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar calculated_date_time: The UTC time on which the topology was calculated. - :vartype calculated_date_time: ~datetime.datetime - :ivar topology_resources: Azure resources which are part of this topology resource. - :vartype topology_resources: list[~azure.mgmt.security.models.TopologySingleResource] - """ - - _validation = { - "location": {"readonly": True}, - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "calculated_date_time": {"readonly": True}, - "topology_resources": {"readonly": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "calculated_date_time": {"key": "properties.calculatedDateTime", "type": "iso-8601"}, - "topology_resources": {"key": "properties.topologyResources", "type": "[TopologySingleResource]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.location: Optional[str] = None - self.calculated_date_time: Optional[datetime.datetime] = None - self.topology_resources: Optional[list["_models.TopologySingleResource"]] = None - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - - -class TopologySingleResource(_serialization.Model): - """TopologySingleResource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar resource_id: Azure resource id. - :vartype resource_id: str - :ivar severity: The security severity of the resource. - :vartype severity: str - :ivar recommendations_exist: Indicates if the resource has security recommendations. - :vartype recommendations_exist: bool - :ivar network_zones: Indicates the resource connectivity level to the Internet (InternetFacing, - Internal ,etc.). - :vartype network_zones: str - :ivar topology_score: Score of the resource based on its security severity. - :vartype topology_score: int - :ivar location: The location of this resource. - :vartype location: str - :ivar parents: Azure resources connected to this resource which are in higher level in the - topology view. - :vartype parents: list[~azure.mgmt.security.models.TopologySingleResourceParent] - :ivar children: Azure resources connected to this resource which are in lower level in the - topology view. - :vartype children: list[~azure.mgmt.security.models.TopologySingleResourceChild] - """ - - _validation = { - "resource_id": {"readonly": True}, - "severity": {"readonly": True}, - "recommendations_exist": {"readonly": True}, - "network_zones": {"readonly": True}, - "topology_score": {"readonly": True}, - "location": {"readonly": True}, - "parents": {"readonly": True}, - "children": {"readonly": True}, - } - - _attribute_map = { - "resource_id": {"key": "resourceId", "type": "str"}, - "severity": {"key": "severity", "type": "str"}, - "recommendations_exist": {"key": "recommendationsExist", "type": "bool"}, - "network_zones": {"key": "networkZones", "type": "str"}, - "topology_score": {"key": "topologyScore", "type": "int"}, - "location": {"key": "location", "type": "str"}, - "parents": {"key": "parents", "type": "[TopologySingleResourceParent]"}, - "children": {"key": "children", "type": "[TopologySingleResourceChild]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.resource_id: Optional[str] = None - self.severity: Optional[str] = None - self.recommendations_exist: Optional[bool] = None - self.network_zones: Optional[str] = None - self.topology_score: Optional[int] = None - self.location: Optional[str] = None - self.parents: Optional[list["_models.TopologySingleResourceParent"]] = None - self.children: Optional[list["_models.TopologySingleResourceChild"]] = None - - -class TopologySingleResourceChild(_serialization.Model): - """TopologySingleResourceChild. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar resource_id: Azure resource id which serves as child resource in topology view. - :vartype resource_id: str - """ - - _validation = { - "resource_id": {"readonly": True}, - } - - _attribute_map = { - "resource_id": {"key": "resourceId", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.resource_id: Optional[str] = None - - -class TopologySingleResourceParent(_serialization.Model): - """TopologySingleResourceParent. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar resource_id: Azure resource id which serves as parent resource in topology view. - :vartype resource_id: str - """ - - _validation = { - "resource_id": {"readonly": True}, - } - - _attribute_map = { - "resource_id": {"key": "resourceId", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.resource_id: Optional[str] = None - - -class TwinUpdatesNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of twin updates is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "TwinUpdatesNotInAllowedRange" - - -class UnauthorizedOperationsNotInAllowedRange(TimeWindowCustomAlertRule): - """Number of unauthorized operations is not in allowed range. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar display_name: The display name of the custom alert. - :vartype display_name: str - :ivar description: The description of the custom alert. - :vartype description: str - :ivar is_enabled: Status of the custom alert. Required. - :vartype is_enabled: bool - :ivar rule_type: The type of the custom alert rule. Required. - :vartype rule_type: str - :ivar min_threshold: The minimum threshold. Required. - :vartype min_threshold: int - :ivar max_threshold: The maximum threshold. Required. - :vartype max_threshold: int - :ivar time_window_size: The time window size in iso8601 format. Required. - :vartype time_window_size: ~datetime.timedelta - """ - - _validation = { - "display_name": {"readonly": True}, - "description": {"readonly": True}, - "is_enabled": {"required": True}, - "rule_type": {"required": True}, - "min_threshold": {"required": True}, - "max_threshold": {"required": True}, - "time_window_size": {"required": True}, - } - - _attribute_map = { - "display_name": {"key": "displayName", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "is_enabled": {"key": "isEnabled", "type": "bool"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "min_threshold": {"key": "minThreshold", "type": "int"}, - "max_threshold": {"key": "maxThreshold", "type": "int"}, - "time_window_size": {"key": "timeWindowSize", "type": "duration"}, - } - - def __init__( - self, - *, - is_enabled: bool, - min_threshold: int, - max_threshold: int, - time_window_size: datetime.timedelta, - **kwargs: Any - ) -> None: - """ - :keyword is_enabled: Status of the custom alert. Required. - :paramtype is_enabled: bool - :keyword min_threshold: The minimum threshold. Required. - :paramtype min_threshold: int - :keyword max_threshold: The maximum threshold. Required. - :paramtype max_threshold: int - :keyword time_window_size: The time window size in iso8601 format. Required. - :paramtype time_window_size: ~datetime.timedelta - """ - super().__init__( - is_enabled=is_enabled, - min_threshold=min_threshold, - max_threshold=max_threshold, - time_window_size=time_window_size, - **kwargs - ) - self.rule_type: str = "UnauthorizedOperationsNotInAllowedRange" - - -class UpdateIotSecuritySolutionData(TagsResource): - """UpdateIotSecuritySolutionData. - - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar user_defined_resources: Properties of the IoT Security solution's user defined resources. - :vartype user_defined_resources: ~azure.mgmt.security.models.UserDefinedResourcesProperties - :ivar recommendations_configuration: List of the configuration status for each recommendation - type. - :vartype recommendations_configuration: - list[~azure.mgmt.security.models.RecommendationConfigurationProperties] - """ - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - "user_defined_resources": {"key": "properties.userDefinedResources", "type": "UserDefinedResourcesProperties"}, - "recommendations_configuration": { - "key": "properties.recommendationsConfiguration", - "type": "[RecommendationConfigurationProperties]", - }, - } - - def __init__( - self, - *, - tags: Optional[dict[str, str]] = None, - user_defined_resources: Optional["_models.UserDefinedResourcesProperties"] = None, - recommendations_configuration: Optional[list["_models.RecommendationConfigurationProperties"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword user_defined_resources: Properties of the IoT Security solution's user defined - resources. - :paramtype user_defined_resources: ~azure.mgmt.security.models.UserDefinedResourcesProperties - :keyword recommendations_configuration: List of the configuration status for each - recommendation type. - :paramtype recommendations_configuration: - list[~azure.mgmt.security.models.RecommendationConfigurationProperties] - """ - super().__init__(tags=tags, **kwargs) - self.user_defined_resources = user_defined_resources - self.recommendations_configuration = recommendations_configuration - - -class UpdateSensitivitySettingsRequest(_serialization.Model): - """Request to update data sensitivity settings for sensitive data discovery. - - All required parameters must be populated in order to send to server. - - :ivar sensitive_info_types_ids: List of selected sensitive info types' IDs. Required. - :vartype sensitive_info_types_ids: list[str] - :ivar sensitivity_threshold_label_order: The order of the sensitivity threshold label. Any - label at or above this order will be considered sensitive. If set to -1, sensitivity by labels - is turned off. - :vartype sensitivity_threshold_label_order: float - :ivar sensitivity_threshold_label_id: The id of the sensitivity threshold label. Any label at - or above this rank will be considered sensitive. - :vartype sensitivity_threshold_label_id: str - """ - - _validation = { - "sensitive_info_types_ids": {"required": True}, - } - - _attribute_map = { - "sensitive_info_types_ids": {"key": "sensitiveInfoTypesIds", "type": "[str]"}, - "sensitivity_threshold_label_order": {"key": "sensitivityThresholdLabelOrder", "type": "float"}, - "sensitivity_threshold_label_id": {"key": "sensitivityThresholdLabelId", "type": "str"}, - } - - def __init__( - self, - *, - sensitive_info_types_ids: list[str], - sensitivity_threshold_label_order: Optional[float] = None, - sensitivity_threshold_label_id: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword sensitive_info_types_ids: List of selected sensitive info types' IDs. Required. - :paramtype sensitive_info_types_ids: list[str] - :keyword sensitivity_threshold_label_order: The order of the sensitivity threshold label. Any - label at or above this order will be considered sensitive. If set to -1, sensitivity by labels - is turned off. - :paramtype sensitivity_threshold_label_order: float - :keyword sensitivity_threshold_label_id: The id of the sensitivity threshold label. Any label - at or above this rank will be considered sensitive. - :paramtype sensitivity_threshold_label_id: str - """ - super().__init__(**kwargs) - self.sensitive_info_types_ids = sensitive_info_types_ids - self.sensitivity_threshold_label_order = sensitivity_threshold_label_order - self.sensitivity_threshold_label_id = sensitivity_threshold_label_id - - -class UserDefinedResourcesProperties(_serialization.Model): - """Properties of the IoT Security solution's user defined resources. - - All required parameters must be populated in order to send to server. - - :ivar query: Azure Resource Graph query which represents the security solution's user defined - resources. Required to start with "where type != "Microsoft.Devices/IotHubs"". Required. - :vartype query: str - :ivar query_subscriptions: List of Azure subscription ids on which the user defined resources - query should be executed. Required. - :vartype query_subscriptions: list[str] - """ - - _validation = { - "query": {"required": True}, - "query_subscriptions": {"required": True}, - } - - _attribute_map = { - "query": {"key": "query", "type": "str"}, - "query_subscriptions": {"key": "querySubscriptions", "type": "[str]"}, - } - - def __init__(self, *, query: str, query_subscriptions: list[str], **kwargs: Any) -> None: - """ - :keyword query: Azure Resource Graph query which represents the security solution's user - defined resources. Required to start with "where type != "Microsoft.Devices/IotHubs"". - Required. - :paramtype query: str - :keyword query_subscriptions: List of Azure subscription ids on which the user defined - resources query should be executed. Required. - :paramtype query_subscriptions: list[str] - """ - super().__init__(**kwargs) - self.query = query - self.query_subscriptions = query_subscriptions - - -class VaRule(_serialization.Model): - """vulnerability assessment rule metadata details. - - :ivar rule_id: The rule Id. - :vartype rule_id: str - :ivar severity: The rule severity. Known values are: "High", "Medium", "Low", "Informational", - and "Obsolete". - :vartype severity: str or ~azure.mgmt.security.models.RuleSeverity - :ivar category: The rule category. - :vartype category: str - :ivar rule_type: The rule type. Known values are: "Binary", "BaselineExpected", "PositiveList", - and "NegativeList". - :vartype rule_type: str or ~azure.mgmt.security.models.RuleType - :ivar title: The rule title. - :vartype title: str - :ivar description: The rule description. - :vartype description: str - :ivar rationale: The rule rationale. - :vartype rationale: str - :ivar query_check: The rule query details. - :vartype query_check: ~azure.mgmt.security.models.QueryCheck - :ivar benchmark_references: The benchmark references. - :vartype benchmark_references: list[~azure.mgmt.security.models.BenchmarkReference] - """ - - _attribute_map = { - "rule_id": {"key": "ruleId", "type": "str"}, - "severity": {"key": "severity", "type": "str"}, - "category": {"key": "category", "type": "str"}, - "rule_type": {"key": "ruleType", "type": "str"}, - "title": {"key": "title", "type": "str"}, - "description": {"key": "description", "type": "str"}, - "rationale": {"key": "rationale", "type": "str"}, - "query_check": {"key": "queryCheck", "type": "QueryCheck"}, - "benchmark_references": {"key": "benchmarkReferences", "type": "[BenchmarkReference]"}, - } - - def __init__( - self, - *, - rule_id: Optional[str] = None, - severity: Optional[Union[str, "_models.RuleSeverity"]] = None, - category: Optional[str] = None, - rule_type: Optional[Union[str, "_models.RuleType"]] = None, - title: Optional[str] = None, - description: Optional[str] = None, - rationale: Optional[str] = None, - query_check: Optional["_models.QueryCheck"] = None, - benchmark_references: Optional[list["_models.BenchmarkReference"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword rule_id: The rule Id. - :paramtype rule_id: str - :keyword severity: The rule severity. Known values are: "High", "Medium", "Low", - "Informational", and "Obsolete". - :paramtype severity: str or ~azure.mgmt.security.models.RuleSeverity - :keyword category: The rule category. - :paramtype category: str - :keyword rule_type: The rule type. Known values are: "Binary", "BaselineExpected", - "PositiveList", and "NegativeList". - :paramtype rule_type: str or ~azure.mgmt.security.models.RuleType - :keyword title: The rule title. - :paramtype title: str - :keyword description: The rule description. - :paramtype description: str - :keyword rationale: The rule rationale. - :paramtype rationale: str - :keyword query_check: The rule query details. - :paramtype query_check: ~azure.mgmt.security.models.QueryCheck - :keyword benchmark_references: The benchmark references. - :paramtype benchmark_references: list[~azure.mgmt.security.models.BenchmarkReference] - """ - super().__init__(**kwargs) - self.rule_id = rule_id - self.severity = severity - self.category = category - self.rule_type = rule_type - self.title = title - self.description = description - self.rationale = rationale - self.query_check = query_check - self.benchmark_references = benchmark_references - - -class VendorReference(_serialization.Model): - """Vendor reference. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar title: Link title. - :vartype title: str - :ivar link: Link url. - :vartype link: str - """ - - _validation = { - "title": {"readonly": True}, - "link": {"readonly": True}, - } - - _attribute_map = { - "title": {"key": "title", "type": "str"}, - "link": {"key": "link", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.title: Optional[str] = None - self.link: Optional[str] = None - - -class VmScannersBaseConfiguration(_serialization.Model): - """Configuration for VM scanning. - - :ivar scanning_mode: The scanning mode for the VM scan. "Default" - :vartype scanning_mode: str or ~azure.mgmt.security.models.ScanningMode - :ivar exclusion_tags: Tags that indicates that a resource should not be scanned. - :vartype exclusion_tags: dict[str, str] - """ - - _attribute_map = { - "scanning_mode": {"key": "scanningMode", "type": "str"}, - "exclusion_tags": {"key": "exclusionTags", "type": "{str}"}, - } - - def __init__( - self, - *, - scanning_mode: Optional[Union[str, "_models.ScanningMode"]] = None, - exclusion_tags: Optional[dict[str, str]] = None, - **kwargs: Any - ) -> None: - """ - :keyword scanning_mode: The scanning mode for the VM scan. "Default" - :paramtype scanning_mode: str or ~azure.mgmt.security.models.ScanningMode - :keyword exclusion_tags: Tags that indicates that a resource should not be scanned. - :paramtype exclusion_tags: dict[str, str] - """ - super().__init__(**kwargs) - self.scanning_mode = scanning_mode - self.exclusion_tags = exclusion_tags - - -class WorkspaceSetting(Resource): - """Configures where to store the OMS agent data for workspaces under a scope. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar workspace_id: The full Azure ID of the workspace to save the data in. - :vartype workspace_id: str - :ivar scope: All the VMs in this scope will send their security data to the mentioned workspace - unless overridden by a setting with more specific scope. - :vartype scope: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "workspace_id": {"key": "properties.workspaceId", "type": "str"}, - "scope": {"key": "properties.scope", "type": "str"}, - } - - def __init__(self, *, workspace_id: Optional[str] = None, scope: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword workspace_id: The full Azure ID of the workspace to save the data in. - :paramtype workspace_id: str - :keyword scope: All the VMs in this scope will send their security data to the mentioned - workspace unless overridden by a setting with more specific scope. - :paramtype scope: str - """ - super().__init__(**kwargs) - self.workspace_id = workspace_id - self.scope = scope - - -class WorkspaceSettingList(_serialization.Model): - """List of workspace settings response. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar value: List of workspace settings. Required. - :vartype value: list[~azure.mgmt.security.models.WorkspaceSetting] - :ivar next_link: The URI to fetch the next page. - :vartype next_link: str - """ - - _validation = { - "value": {"required": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[WorkspaceSetting]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: list["_models.WorkspaceSetting"], **kwargs: Any) -> None: - """ - :keyword value: List of workspace settings. Required. - :paramtype value: list[~azure.mgmt.security.models.WorkspaceSetting] - """ - super().__init__(**kwargs) - self.value = value - self.next_link: Optional[str] = None diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_patch.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_patch.py index 8bcb627aa475..87676c65a8f0 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_patch.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/models/_patch.py @@ -7,9 +7,9 @@ Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize """ -from typing import List -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level + +__all__: list[str] = [] # Add all objects you want publicly available to users at this package level def patch_sdk(): diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/__init__.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/__init__.py index c6ccdcb6b3c4..1ef4abd8acbf 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/__init__.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/__init__.py @@ -1,9 +1,8 @@ -# pylint: disable=line-too-long,useless-suppression # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- # pylint: disable=wrong-import-position @@ -13,162 +12,164 @@ if TYPE_CHECKING: from ._patch import * # pylint: disable=unused-wildcard-import -from ._locations_operations import LocationsOperations # type: ignore -from ._tasks_operations import TasksOperations # type: ignore -from ._auto_provisioning_settings_operations import AutoProvisioningSettingsOperations # type: ignore -from ._compliances_operations import CompliancesOperations # type: ignore -from ._information_protection_policies_operations import InformationProtectionPoliciesOperations # type: ignore -from ._workspace_settings_operations import WorkspaceSettingsOperations # type: ignore -from ._alerts_suppression_rules_operations import AlertsSuppressionRulesOperations # type: ignore -from ._regulatory_compliance_standards_operations import RegulatoryComplianceStandardsOperations # type: ignore -from ._regulatory_compliance_controls_operations import RegulatoryComplianceControlsOperations # type: ignore -from ._regulatory_compliance_assessments_operations import RegulatoryComplianceAssessmentsOperations # type: ignore -from ._sub_assessments_operations import SubAssessmentsOperations # type: ignore -from ._mde_onboardings_operations import MdeOnboardingsOperations # type: ignore -from ._governance_assignments_operations import GovernanceAssignmentsOperations # type: ignore -from ._governance_rules_operations import GovernanceRulesOperations # type: ignore -from ._applications_operations import ApplicationsOperations # type: ignore -from ._application_operations import ApplicationOperations # type: ignore -from ._security_connector_applications_operations import SecurityConnectorApplicationsOperations # type: ignore -from ._security_connector_application_operations import SecurityConnectorApplicationOperations # type: ignore -from ._security_operators_operations import SecurityOperatorsOperations # type: ignore -from ._sql_vulnerability_assessment_baseline_rules_operations import SqlVulnerabilityAssessmentBaselineRulesOperations # type: ignore -from ._sql_vulnerability_assessment_scans_operations import SqlVulnerabilityAssessmentScansOperations # type: ignore -from ._sql_vulnerability_assessment_scan_results_operations import SqlVulnerabilityAssessmentScanResultsOperations # type: ignore -from ._sql_vulnerability_assessment_settings_operations import SqlVulnerabilityAssessmentSettingsOperations # type: ignore -from ._sensitivity_settings_operations import SensitivitySettingsOperations # type: ignore -from ._health_reports_operations import HealthReportsOperations # type: ignore -from ._automations_operations import AutomationsOperations # type: ignore -from ._security_connectors_operations import SecurityConnectorsOperations # type: ignore -from ._azure_dev_ops_orgs_operations import AzureDevOpsOrgsOperations # type: ignore -from ._azure_dev_ops_projects_operations import AzureDevOpsProjectsOperations # type: ignore -from ._azure_dev_ops_repos_operations import AzureDevOpsReposOperations # type: ignore -from ._dev_ops_configurations_operations import DevOpsConfigurationsOperations # type: ignore -from ._git_hub_owners_operations import GitHubOwnersOperations # type: ignore -from ._git_hub_repos_operations import GitHubReposOperations # type: ignore -from ._git_hub_issues_operations import GitHubIssuesOperations # type: ignore -from ._git_lab_groups_operations import GitLabGroupsOperations # type: ignore -from ._git_lab_subgroups_operations import GitLabSubgroupsOperations # type: ignore -from ._git_lab_projects_operations import GitLabProjectsOperations # type: ignore -from ._dev_ops_operation_results_operations import DevOpsOperationResultsOperations # type: ignore +from ._operations import AlertsOperations # type: ignore +from ._operations import AlertsSuppressionRulesOperations # type: ignore +from ._operations import ApplicationsOperations # type: ignore +from ._operations import SecurityConnectorApplicationOperations # type: ignore +from ._operations import AssessmentsMetadataOperations # type: ignore +from ._operations import AutomationsOperations # type: ignore +from ._operations import SecurityContactsOperations # type: ignore +from ._operations import ComplianceResultsOperations # type: ignore +from ._operations import GovernanceAssignmentsOperations # type: ignore +from ._operations import GovernanceRulesOperations # type: ignore +from ._operations import HealthReportsOperations # type: ignore +from ._operations import DeviceSecurityGroupsOperations # type: ignore +from ._operations import AutoProvisioningSettingsOperations # type: ignore +from ._operations import CompliancesOperations # type: ignore +from ._operations import InformationProtectionPoliciesOperations # type: ignore +from ._operations import WorkspaceSettingsOperations # type: ignore +from ._operations import MdeOnboardingsOperations # type: ignore from ._operations import Operations # type: ignore -from ._operation_results_operations import OperationResultsOperations # type: ignore -from ._operation_statuses_operations import OperationStatusesOperations # type: ignore -from ._assessments_metadata_operations import AssessmentsMetadataOperations # type: ignore -from ._assessments_operations import AssessmentsOperations # type: ignore -from ._compliance_results_operations import ComplianceResultsOperations # type: ignore -from ._advanced_threat_protection_operations import AdvancedThreatProtectionOperations # type: ignore -from ._device_security_groups_operations import DeviceSecurityGroupsOperations # type: ignore -from ._iot_security_solution_analytics_operations import IotSecuritySolutionAnalyticsOperations # type: ignore -from ._iot_security_solutions_analytics_aggregated_alert_operations import IotSecuritySolutionsAnalyticsAggregatedAlertOperations # type: ignore -from ._iot_security_solutions_analytics_recommendation_operations import IotSecuritySolutionsAnalyticsRecommendationOperations # type: ignore -from ._iot_security_solution_operations import IotSecuritySolutionOperations # type: ignore -from ._allowed_connections_operations import AllowedConnectionsOperations # type: ignore -from ._discovered_security_solutions_operations import DiscoveredSecuritySolutionsOperations # type: ignore -from ._external_security_solutions_operations import ExternalSecuritySolutionsOperations # type: ignore -from ._jit_network_access_policies_operations import JitNetworkAccessPoliciesOperations # type: ignore -from ._security_solutions_operations import SecuritySolutionsOperations # type: ignore -from ._security_solutions_reference_data_operations import SecuritySolutionsReferenceDataOperations # type: ignore -from ._server_vulnerability_assessment_operations import ServerVulnerabilityAssessmentOperations # type: ignore -from ._topology_operations import TopologyOperations # type: ignore -from ._alerts_operations import AlertsOperations # type: ignore -from ._settings_operations import SettingsOperations # type: ignore -from ._server_vulnerability_assessments_settings_operations import ServerVulnerabilityAssessmentsSettingsOperations # type: ignore -from ._api_collections_operations import APICollectionsOperations # type: ignore -from ._pricings_operations import PricingsOperations # type: ignore -from ._security_standards_operations import SecurityStandardsOperations # type: ignore -from ._standard_assignments_operations import StandardAssignmentsOperations # type: ignore -from ._custom_recommendations_operations import CustomRecommendationsOperations # type: ignore -from ._standards_operations import StandardsOperations # type: ignore -from ._assignments_operations import AssignmentsOperations # type: ignore -from ._defender_for_storage_operations import DefenderForStorageOperations # type: ignore -from ._private_links_operations import PrivateLinksOperations # type: ignore -from ._private_link_resources_operations import PrivateLinkResourcesOperations # type: ignore -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations # type: ignore -from ._secure_scores_operations import SecureScoresOperations # type: ignore -from ._secure_score_controls_operations import SecureScoreControlsOperations # type: ignore -from ._secure_score_control_definitions_operations import SecureScoreControlDefinitionsOperations # type: ignore +from ._operations import PricingsOperations # type: ignore +from ._operations import PrivateLinkResourcesOperations # type: ignore +from ._operations import PrivateEndpointConnectionsOperations # type: ignore +from ._operations import RegulatoryComplianceStandardsOperations # type: ignore +from ._operations import RegulatoryComplianceControlsOperations # type: ignore +from ._operations import RegulatoryComplianceAssessmentsOperations # type: ignore +from ._operations import SecurityConnectorsOperations # type: ignore +from ._operations import AzureDevOpsOrgsOperations # type: ignore +from ._operations import GitHubOwnersOperations # type: ignore +from ._operations import GitLabGroupsOperations # type: ignore +from ._operations import DevOpsConfigurationsOperations # type: ignore +from ._operations import AzureDevOpsProjectsOperations # type: ignore +from ._operations import GitLabProjectsOperations # type: ignore +from ._operations import SecurityOperatorsOperations # type: ignore +from ._operations import DiscoveredSecuritySolutionsOperations # type: ignore +from ._operations import ExternalSecuritySolutionsOperations # type: ignore +from ._operations import JitNetworkAccessPoliciesOperations # type: ignore +from ._operations import SecuritySolutionsOperations # type: ignore +from ._operations import SecurityStandardsOperations # type: ignore +from ._operations import StandardAssignmentsOperations # type: ignore +from ._operations import CustomRecommendationsOperations # type: ignore +from ._operations import ServerVulnerabilityAssessmentsSettingsOperations # type: ignore +from ._operations import SettingsOperations # type: ignore +from ._operations import SqlVulnerabilityAssessmentBaselineRulesOperations # type: ignore +from ._operations import SqlVulnerabilityAssessmentScanResultsOperations # type: ignore +from ._operations import StandardsOperations # type: ignore +from ._operations import AssignmentsOperations # type: ignore +from ._operations import TasksOperations # type: ignore +from ._operations import APICollectionsOperations # type: ignore +from ._operations import ApplicationOperations # type: ignore +from ._operations import SecurityConnectorApplicationsOperations # type: ignore +from ._operations import AssessmentsOperations # type: ignore +from ._operations import AdvancedThreatProtectionOperations # type: ignore +from ._operations import DefenderForStorageOperations # type: ignore +from ._operations import IotSecuritySolutionAnalyticsOperations # type: ignore +from ._operations import IotSecuritySolutionOperations # type: ignore +from ._operations import IotSecuritySolutionsAnalyticsAggregatedAlertOperations # type: ignore +from ._operations import IotSecuritySolutionsAnalyticsRecommendationOperations # type: ignore +from ._operations import LocationsOperations # type: ignore +from ._operations import OperationResultsOperations # type: ignore +from ._operations import OperationStatusesOperations # type: ignore +from ._operations import PrivateLinksOperations # type: ignore +from ._operations import SecureScoresOperations # type: ignore +from ._operations import SecureScoreControlsOperations # type: ignore +from ._operations import SecureScoreControlDefinitionsOperations # type: ignore +from ._operations import GitLabSubgroupsOperations # type: ignore +from ._operations import DevOpsOperationResultsOperations # type: ignore +from ._operations import AzureDevOpsReposOperations # type: ignore +from ._operations import GitHubReposOperations # type: ignore +from ._operations import GitHubIssuesOperations # type: ignore +from ._operations import AllowedConnectionsOperations # type: ignore +from ._operations import ServerVulnerabilityAssessmentOperations # type: ignore +from ._operations import TopologyOperations # type: ignore +from ._operations import SecuritySolutionsReferenceDataOperations # type: ignore +from ._operations import SensitivitySettingsOperations # type: ignore +from ._operations import SqlVulnerabilityAssessmentSettingsOperations # type: ignore +from ._operations import SqlVulnerabilityAssessmentScansOperations # type: ignore +from ._operations import SubAssessmentsOperations # type: ignore from ._patch import __all__ as _patch_all from ._patch import * from ._patch import patch_sdk as _patch_sdk __all__ = [ - "LocationsOperations", - "TasksOperations", + "AlertsOperations", + "AlertsSuppressionRulesOperations", + "ApplicationsOperations", + "SecurityConnectorApplicationOperations", + "AssessmentsMetadataOperations", + "AutomationsOperations", + "SecurityContactsOperations", + "ComplianceResultsOperations", + "GovernanceAssignmentsOperations", + "GovernanceRulesOperations", + "HealthReportsOperations", + "DeviceSecurityGroupsOperations", "AutoProvisioningSettingsOperations", "CompliancesOperations", "InformationProtectionPoliciesOperations", "WorkspaceSettingsOperations", - "AlertsSuppressionRulesOperations", + "MdeOnboardingsOperations", + "Operations", + "PricingsOperations", + "PrivateLinkResourcesOperations", + "PrivateEndpointConnectionsOperations", "RegulatoryComplianceStandardsOperations", "RegulatoryComplianceControlsOperations", "RegulatoryComplianceAssessmentsOperations", - "SubAssessmentsOperations", - "MdeOnboardingsOperations", - "GovernanceAssignmentsOperations", - "GovernanceRulesOperations", - "ApplicationsOperations", - "ApplicationOperations", - "SecurityConnectorApplicationsOperations", - "SecurityConnectorApplicationOperations", - "SecurityOperatorsOperations", - "SqlVulnerabilityAssessmentBaselineRulesOperations", - "SqlVulnerabilityAssessmentScansOperations", - "SqlVulnerabilityAssessmentScanResultsOperations", - "SqlVulnerabilityAssessmentSettingsOperations", - "SensitivitySettingsOperations", - "HealthReportsOperations", - "AutomationsOperations", "SecurityConnectorsOperations", "AzureDevOpsOrgsOperations", - "AzureDevOpsProjectsOperations", - "AzureDevOpsReposOperations", - "DevOpsConfigurationsOperations", "GitHubOwnersOperations", - "GitHubReposOperations", - "GitHubIssuesOperations", "GitLabGroupsOperations", - "GitLabSubgroupsOperations", + "DevOpsConfigurationsOperations", + "AzureDevOpsProjectsOperations", "GitLabProjectsOperations", - "DevOpsOperationResultsOperations", - "Operations", - "OperationResultsOperations", - "OperationStatusesOperations", - "AssessmentsMetadataOperations", - "AssessmentsOperations", - "ComplianceResultsOperations", - "AdvancedThreatProtectionOperations", - "DeviceSecurityGroupsOperations", - "IotSecuritySolutionAnalyticsOperations", - "IotSecuritySolutionsAnalyticsAggregatedAlertOperations", - "IotSecuritySolutionsAnalyticsRecommendationOperations", - "IotSecuritySolutionOperations", - "AllowedConnectionsOperations", + "SecurityOperatorsOperations", "DiscoveredSecuritySolutionsOperations", "ExternalSecuritySolutionsOperations", "JitNetworkAccessPoliciesOperations", "SecuritySolutionsOperations", - "SecuritySolutionsReferenceDataOperations", - "ServerVulnerabilityAssessmentOperations", - "TopologyOperations", - "AlertsOperations", - "SettingsOperations", - "ServerVulnerabilityAssessmentsSettingsOperations", - "APICollectionsOperations", - "PricingsOperations", "SecurityStandardsOperations", "StandardAssignmentsOperations", "CustomRecommendationsOperations", + "ServerVulnerabilityAssessmentsSettingsOperations", + "SettingsOperations", + "SqlVulnerabilityAssessmentBaselineRulesOperations", + "SqlVulnerabilityAssessmentScanResultsOperations", "StandardsOperations", "AssignmentsOperations", + "TasksOperations", + "APICollectionsOperations", + "ApplicationOperations", + "SecurityConnectorApplicationsOperations", + "AssessmentsOperations", + "AdvancedThreatProtectionOperations", "DefenderForStorageOperations", + "IotSecuritySolutionAnalyticsOperations", + "IotSecuritySolutionOperations", + "IotSecuritySolutionsAnalyticsAggregatedAlertOperations", + "IotSecuritySolutionsAnalyticsRecommendationOperations", + "LocationsOperations", + "OperationResultsOperations", + "OperationStatusesOperations", "PrivateLinksOperations", - "PrivateLinkResourcesOperations", - "PrivateEndpointConnectionsOperations", "SecureScoresOperations", "SecureScoreControlsOperations", "SecureScoreControlDefinitionsOperations", + "GitLabSubgroupsOperations", + "DevOpsOperationResultsOperations", + "AzureDevOpsReposOperations", + "GitHubReposOperations", + "GitHubIssuesOperations", + "AllowedConnectionsOperations", + "ServerVulnerabilityAssessmentOperations", + "TopologyOperations", + "SecuritySolutionsReferenceDataOperations", + "SensitivitySettingsOperations", + "SqlVulnerabilityAssessmentSettingsOperations", + "SqlVulnerabilityAssessmentScansOperations", + "SubAssessmentsOperations", ] __all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore _patch_sdk() diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_advanced_threat_protection_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_advanced_threat_protection_operations.py deleted file mode 100644 index a6cf251a9b2f..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_advanced_threat_protection_operations.py +++ /dev/null @@ -1,295 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Literal, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request(resource_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01")) - setting_name: Literal["current"] = kwargs.pop("setting_name", "current") - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/advancedThreatProtectionSettings/{settingName}" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_request(resource_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01")) - setting_name: Literal["current"] = kwargs.pop("setting_name", "current") - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/advancedThreatProtectionSettings/{settingName}" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -class AdvancedThreatProtectionOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`advanced_threat_protection` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get(self, resource_id: str, **kwargs: Any) -> _models.AdvancedThreatProtectionSetting: - """Gets the Advanced Threat Protection settings for the specified resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :return: AdvancedThreatProtectionSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01")) - setting_name: Literal["current"] = kwargs.pop("setting_name", "current") - cls: ClsType[_models.AdvancedThreatProtectionSetting] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - api_version=api_version, - setting_name=setting_name, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated13, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AdvancedThreatProtectionSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create( - self, - resource_id: str, - advanced_threat_protection_setting: _models.AdvancedThreatProtectionSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AdvancedThreatProtectionSetting: - """Creates or updates the Advanced Threat Protection settings on a specified resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Required. - :type advanced_threat_protection_setting: - ~azure.mgmt.security.models.AdvancedThreatProtectionSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AdvancedThreatProtectionSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create( - self, - resource_id: str, - advanced_threat_protection_setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AdvancedThreatProtectionSetting: - """Creates or updates the Advanced Threat Protection settings on a specified resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Required. - :type advanced_threat_protection_setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AdvancedThreatProtectionSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create( - self, - resource_id: str, - advanced_threat_protection_setting: Union[_models.AdvancedThreatProtectionSetting, IO[bytes]], - **kwargs: Any - ) -> _models.AdvancedThreatProtectionSetting: - """Creates or updates the Advanced Threat Protection settings on a specified resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Is either a - AdvancedThreatProtectionSetting type or a IO[bytes] type. Required. - :type advanced_threat_protection_setting: - ~azure.mgmt.security.models.AdvancedThreatProtectionSetting or IO[bytes] - :return: AdvancedThreatProtectionSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01")) - setting_name: Literal["current"] = kwargs.pop("setting_name", "current") - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AdvancedThreatProtectionSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(advanced_threat_protection_setting, (IOBase, bytes)): - _content = advanced_threat_protection_setting - else: - _json = self._serialize.body(advanced_threat_protection_setting, "AdvancedThreatProtectionSetting") - - _request = build_create_request( - resource_id=resource_id, - api_version=api_version, - setting_name=setting_name, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated13, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AdvancedThreatProtectionSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_operations.py deleted file mode 100644 index 910aff93cffe..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_operations.py +++ /dev/null @@ -1,1628 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression,too-many-lines -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alerts") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/alerts", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_subscription_level_by_region_request( # pylint: disable=name-too-long - asc_location: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_resource_group_level_by_region_request( # pylint: disable=name-too-long - asc_location: str, resource_group_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_subscription_level_request( - asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_resource_group_level_request( - resource_group_name: str, asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_subscription_level_state_to_dismiss_request( # pylint: disable=name-too-long - asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/dismiss", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_subscription_level_state_to_resolve_request( # pylint: disable=name-too-long - asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/resolve", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_subscription_level_state_to_activate_request( # pylint: disable=name-too-long - asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/activate", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_subscription_level_state_to_in_progress_request( # pylint: disable=name-too-long - asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/inProgress", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_resource_group_level_state_to_resolve_request( # pylint: disable=name-too-long - resource_group_name: str, asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/resolve", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_resource_group_level_state_to_dismiss_request( # pylint: disable=name-too-long - resource_group_name: str, asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/dismiss", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_resource_group_level_state_to_activate_request( # pylint: disable=name-too-long - resource_group_name: str, asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/activate", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_resource_group_level_state_to_in_progress_request( # pylint: disable=name-too-long - resource_group_name: str, asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/inProgress", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_simulate_request(asc_location: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/default/simulate", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class AlertsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`alerts` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.Alert"]: - """List all the alerts that are associated with the subscription. - - :return: An iterator like instance of either Alert or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Alert] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[_models.AlertList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AlertList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.Alert"]: - """List all the alerts that are associated with the resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either Alert or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Alert] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[_models.AlertList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AlertList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_subscription_level_by_region(self, asc_location: str, **kwargs: Any) -> ItemPaged["_models.Alert"]: - """List all the alerts that are associated with the subscription that are stored in a specific - location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either Alert or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Alert] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[_models.AlertList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_subscription_level_by_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AlertList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_resource_group_level_by_region( - self, asc_location: str, resource_group_name: str, **kwargs: Any - ) -> ItemPaged["_models.Alert"]: - """List all the alerts that are associated with the resource group that are stored in a specific - location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either Alert or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Alert] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[_models.AlertList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_resource_group_level_by_region_request( - asc_location=asc_location, - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AlertList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get_subscription_level(self, asc_location: str, alert_name: str, **kwargs: Any) -> _models.Alert: - """Get an alert that is associated with a subscription. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: Alert or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Alert - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[_models.Alert] = kwargs.pop("cls", None) - - _request = build_get_subscription_level_request( - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Alert", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_resource_group_level( - self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any - ) -> _models.Alert: - """Get an alert that is associated a resource group or a resource in a resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: Alert or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Alert - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[_models.Alert] = kwargs.pop("cls", None) - - _request = build_get_resource_group_level_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Alert", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def update_subscription_level_state_to_dismiss( # pylint: disable=inconsistent-return-statements,name-too-long - self, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_subscription_level_state_to_dismiss_request( - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def update_subscription_level_state_to_resolve( # pylint: disable=inconsistent-return-statements,name-too-long - self, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_subscription_level_state_to_resolve_request( - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def update_subscription_level_state_to_activate( # pylint: disable=inconsistent-return-statements,name-too-long - self, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_subscription_level_state_to_activate_request( - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def update_subscription_level_state_to_in_progress( # pylint: disable=inconsistent-return-statements,name-too-long - self, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_subscription_level_state_to_in_progress_request( - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def update_resource_group_level_state_to_resolve( # pylint: disable=inconsistent-return-statements,name-too-long - self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_resource_group_level_state_to_resolve_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def update_resource_group_level_state_to_dismiss( # pylint: disable=inconsistent-return-statements,name-too-long - self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_resource_group_level_state_to_dismiss_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def update_resource_group_level_state_to_activate( # pylint: disable=inconsistent-return-statements,name-too-long - self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_resource_group_level_state_to_activate_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def update_resource_group_level_state_to_in_progress( # pylint: disable=inconsistent-return-statements,name-too-long - self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any - ) -> None: - """Update the alert's state. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_name: Name of the alert object. Required. - :type alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_resource_group_level_state_to_in_progress_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - alert_name=alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - def _simulate_initial( - self, - asc_location: str, - alert_simulator_request_body: Union[_models.AlertSimulatorRequestBody, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(alert_simulator_request_body, (IOBase, bytes)): - _content = alert_simulator_request_body - else: - _json = self._serialize.body(alert_simulator_request_body, "AlertSimulatorRequestBody") - - _request = build_simulate_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated16, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_simulate( - self, - asc_location: str, - alert_simulator_request_body: _models.AlertSimulatorRequestBody, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[None]: - """Simulate security alerts. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_simulator_request_body: Alert Simulator Request Properties. Required. - :type alert_simulator_request_body: ~azure.mgmt.security.models.AlertSimulatorRequestBody - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_simulate( - self, - asc_location: str, - alert_simulator_request_body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[None]: - """Simulate security alerts. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_simulator_request_body: Alert Simulator Request Properties. Required. - :type alert_simulator_request_body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_simulate( - self, - asc_location: str, - alert_simulator_request_body: Union[_models.AlertSimulatorRequestBody, IO[bytes]], - **kwargs: Any - ) -> LROPoller[None]: - """Simulate security alerts. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param alert_simulator_request_body: Alert Simulator Request Properties. Is either a - AlertSimulatorRequestBody type or a IO[bytes] type. Required. - :type alert_simulator_request_body: ~azure.mgmt.security.models.AlertSimulatorRequestBody or - IO[bytes] - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._simulate_initial( - asc_location=asc_location, - alert_simulator_request_body=alert_simulator_request_body, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "original-uri"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_suppression_rules_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_suppression_rules_operations.py deleted file mode 100644 index 59b5187f9a6b..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_alerts_suppression_rules_operations.py +++ /dev/null @@ -1,487 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, *, alert_type: Optional[str] = None, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alertsSuppressionRules" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if alert_type is not None: - _params["AlertType"] = _SERIALIZER.query("alert_type", alert_type, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(alerts_suppression_rule_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alertsSuppressionRules/{alertsSuppressionRuleName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "alertsSuppressionRuleName": _SERIALIZER.url( - "alerts_suppression_rule_name", alerts_suppression_rule_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request(alerts_suppression_rule_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alertsSuppressionRules/{alertsSuppressionRuleName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "alertsSuppressionRuleName": _SERIALIZER.url( - "alerts_suppression_rule_name", alerts_suppression_rule_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(alerts_suppression_rule_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alertsSuppressionRules/{alertsSuppressionRuleName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "alertsSuppressionRuleName": _SERIALIZER.url( - "alerts_suppression_rule_name", alerts_suppression_rule_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class AlertsSuppressionRulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`alerts_suppression_rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, alert_type: Optional[str] = None, **kwargs: Any) -> ItemPaged["_models.AlertsSuppressionRule"]: - """List of all the dismiss rules for the given subscription. - - :param alert_type: Type of the alert to get rules for. Default value is None. - :type alert_type: str - :return: An iterator like instance of either AlertsSuppressionRule or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AlertsSuppressionRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.AlertsSuppressionRulesList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - alert_type=alert_type, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AlertsSuppressionRulesList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, alerts_suppression_rule_name: str, **kwargs: Any) -> _models.AlertsSuppressionRule: - """Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription. - - :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. - :type alerts_suppression_rule_name: str - :return: AlertsSuppressionRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.AlertsSuppressionRule] = kwargs.pop("cls", None) - - _request = build_get_request( - alerts_suppression_rule_name=alerts_suppression_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AlertsSuppressionRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - alerts_suppression_rule_name: str, - alerts_suppression_rule: _models.AlertsSuppressionRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AlertsSuppressionRule: - """Update existing rule or create new rule if it doesn't exist. - - :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. - :type alerts_suppression_rule_name: str - :param alerts_suppression_rule: Suppression rule object. Required. - :type alerts_suppression_rule: ~azure.mgmt.security.models.AlertsSuppressionRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AlertsSuppressionRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - alerts_suppression_rule_name: str, - alerts_suppression_rule: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AlertsSuppressionRule: - """Update existing rule or create new rule if it doesn't exist. - - :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. - :type alerts_suppression_rule_name: str - :param alerts_suppression_rule: Suppression rule object. Required. - :type alerts_suppression_rule: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AlertsSuppressionRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - alerts_suppression_rule_name: str, - alerts_suppression_rule: Union[_models.AlertsSuppressionRule, IO[bytes]], - **kwargs: Any - ) -> _models.AlertsSuppressionRule: - """Update existing rule or create new rule if it doesn't exist. - - :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. - :type alerts_suppression_rule_name: str - :param alerts_suppression_rule: Suppression rule object. Is either a AlertsSuppressionRule type - or a IO[bytes] type. Required. - :type alerts_suppression_rule: ~azure.mgmt.security.models.AlertsSuppressionRule or IO[bytes] - :return: AlertsSuppressionRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AlertsSuppressionRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(alerts_suppression_rule, (IOBase, bytes)): - _content = alerts_suppression_rule - else: - _json = self._serialize.body(alerts_suppression_rule, "AlertsSuppressionRule") - - _request = build_update_request( - alerts_suppression_rule_name=alerts_suppression_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AlertsSuppressionRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, alerts_suppression_rule_name: str, **kwargs: Any - ) -> None: - """Delete dismiss alert rule for this subscription. - - :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. - :type alerts_suppression_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - alerts_suppression_rule_name=alerts_suppression_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_allowed_connections_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_allowed_connections_operations.py deleted file mode 100644 index 31ec44946731..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_allowed_connections_operations.py +++ /dev/null @@ -1,364 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar, Union - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/allowedConnections") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_home_region_request(asc_location: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/allowedConnections", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - asc_location: str, - connection_type: Union[str, _models.ConnectionType], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/allowedConnections/{connectionType}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "connectionType": _SERIALIZER.url("connection_type", connection_type, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class AllowedConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`allowed_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.AllowedConnectionsResource"]: - """Gets the list of all possible traffic between resources for the subscription. - - :return: An iterator like instance of either AllowedConnectionsResource or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AllowedConnectionsResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.AllowedConnectionsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AllowedConnectionsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_home_region(self, asc_location: str, **kwargs: Any) -> ItemPaged["_models.AllowedConnectionsResource"]: - """Gets the list of all possible traffic between resources for the subscription and location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either AllowedConnectionsResource or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AllowedConnectionsResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.AllowedConnectionsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_home_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AllowedConnectionsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, - resource_group_name: str, - asc_location: str, - connection_type: Union[str, _models.ConnectionType], - **kwargs: Any - ) -> _models.AllowedConnectionsResource: - """Gets the list of all possible traffic between resources for the subscription and location, - based on connection type. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param connection_type: The type of allowed connections (Internal, External). Known values are: - "Internal" and "External". Required. - :type connection_type: str or ~azure.mgmt.security.models.ConnectionType - :return: AllowedConnectionsResource or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AllowedConnectionsResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.AllowedConnectionsResource] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - connection_type=connection_type, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AllowedConnectionsResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_api_collections_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_api_collections_operations.py deleted file mode 100644 index f9f135c2cd7a..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_api_collections_operations.py +++ /dev/null @@ -1,778 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Iterator, Optional, TypeVar, Union, cast - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/apiCollections") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/apiCollections", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_azure_api_management_service_request( # pylint: disable=name-too-long - resource_group_name: str, service_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "serviceName": _SERIALIZER.url( - "service_name", - service_name, - "str", - max_length=50, - min_length=1, - pattern=r"^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_by_azure_api_management_service_request( # pylint: disable=name-too-long - resource_group_name: str, service_name: str, api_id: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "serviceName": _SERIALIZER.url( - "service_name", - service_name, - "str", - max_length=50, - min_length=1, - pattern=r"^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$", - ), - "apiId": _SERIALIZER.url("api_id", api_id, "str", max_length=256, min_length=1, pattern=r"^[^*#&+:<>?]+$"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_onboard_azure_api_management_api_request( # pylint: disable=name-too-long - resource_group_name: str, service_name: str, api_id: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "serviceName": _SERIALIZER.url( - "service_name", - service_name, - "str", - max_length=50, - min_length=1, - pattern=r"^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$", - ), - "apiId": _SERIALIZER.url("api_id", api_id, "str", max_length=256, min_length=1, pattern=r"^[^*#&+:<>?]+$"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_offboard_azure_api_management_api_request( # pylint: disable=name-too-long - resource_group_name: str, service_name: str, api_id: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "serviceName": _SERIALIZER.url( - "service_name", - service_name, - "str", - max_length=50, - min_length=1, - pattern=r"^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$", - ), - "apiId": _SERIALIZER.url("api_id", api_id, "str", max_length=256, min_length=1, pattern=r"^[^*#&+:<>?]+$"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class APICollectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`api_collections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.ApiCollection"]: - """Gets a list of API collections within a subscription. - - Gets a list of API collections within a subscription that have been onboarded to Microsoft - Defender for APIs. - - :return: An iterator like instance of either ApiCollection or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ApiCollection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[_models.ApiCollectionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ApiCollectionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.ApiCollection"]: - """Gets a list of API collections within a resource group. - - Gets a list of API collections within a resource group that have been onboarded to Microsoft - Defender for APIs. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :return: An iterator like instance of either ApiCollection or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ApiCollection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[_models.ApiCollectionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ApiCollectionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_azure_api_management_service( - self, resource_group_name: str, service_name: str, **kwargs: Any - ) -> ItemPaged["_models.ApiCollection"]: - """Gets a list of onboarded Azure API Management APIs. - - Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for - APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system - will monitor the operations within the Azure API Management API for intrusive behaviors and - provide alerts for attacks that have been detected. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param service_name: The name of the API Management service. Required. - :type service_name: str - :return: An iterator like instance of either ApiCollection or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ApiCollection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[_models.ApiCollectionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_azure_api_management_service_request( - resource_group_name=resource_group_name, - service_name=service_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ApiCollectionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get_by_azure_api_management_service( - self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any - ) -> _models.ApiCollection: - """Gets an onboarded Azure API Management API. - - Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an - Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor - the operations within the Azure API Management API for intrusive behaviors and provide alerts - for attacks that have been detected. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param service_name: The name of the API Management service. Required. - :type service_name: str - :param api_id: API revision identifier. Must be unique in the API Management service instance. - Non-current revision has ;rev=n as a suffix where n is the revision number. Required. - :type api_id: str - :return: ApiCollection or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ApiCollection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[_models.ApiCollection] = kwargs.pop("cls", None) - - _request = build_get_by_azure_api_management_service_request( - resource_group_name=resource_group_name, - service_name=service_name, - api_id=api_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ApiCollection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _onboard_azure_api_management_api_initial( # pylint: disable=name-too-long - self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_onboard_azure_api_management_api_request( - resource_group_name=resource_group_name, - service_name=service_name, - api_id=api_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 201: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_onboard_azure_api_management_api( - self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any - ) -> LROPoller[_models.ApiCollection]: - """Onboard an Azure API Management API to Microsoft Defender for APIs. - - Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start - monitoring the operations within the Azure Management API for intrusive behaviors and provide - alerts for attacks that have been detected. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param service_name: The name of the API Management service. Required. - :type service_name: str - :param api_id: API revision identifier. Must be unique in the API Management service instance. - Non-current revision has ;rev=n as a suffix where n is the revision number. Required. - :type api_id: str - :return: An instance of LROPoller that returns either ApiCollection or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.ApiCollection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[_models.ApiCollection] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._onboard_azure_api_management_api_initial( - resource_group_name=resource_group_name, - service_name=service_name, - api_id=api_id, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("ApiCollection", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.ApiCollection].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.ApiCollection]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace - def offboard_azure_api_management_api( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any - ) -> None: - """Offboard an Azure API Management API from Microsoft Defender for APIs. - - Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop - monitoring the operations within the Azure API Management API for intrusive behaviors. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param service_name: The name of the API Management service. Required. - :type service_name: str - :param api_id: API revision identifier. Must be unique in the API Management service instance. - Non-current revision has ;rev=n as a suffix where n is the revision number. Required. - :type api_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_offboard_azure_api_management_api_request( - resource_group_name=resource_group_name, - service_name=service_name, - api_id=api_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_application_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_application_operations.py deleted file mode 100644 index 0582c2612186..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_application_operations.py +++ /dev/null @@ -1,360 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request(application_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications/{applicationId}" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "applicationId": _SERIALIZER.url("application_id", application_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request(application_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications/{applicationId}" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "applicationId": _SERIALIZER.url("application_id", application_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(application_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications/{applicationId}" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "applicationId": _SERIALIZER.url("application_id", application_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - - -class ApplicationOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`application` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get(self, application_id: str, **kwargs: Any) -> _models.Application: - """Get a specific application for the requested scope by applicationId. - - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - cls: ClsType[_models.Application] = kwargs.pop("cls", None) - - _request = build_get_request( - application_id=application_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated5, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Application", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - application_id: str, - application: _models.Application, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Application: - """Creates or update a security application on the given subscription. - - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :param application: Application over a subscription scope. Required. - :type application: ~azure.mgmt.security.models.Application - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, application_id: str, application: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.Application: - """Creates or update a security application on the given subscription. - - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :param application: Application over a subscription scope. Required. - :type application: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, application_id: str, application: Union[_models.Application, IO[bytes]], **kwargs: Any - ) -> _models.Application: - """Creates or update a security application on the given subscription. - - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :param application: Application over a subscription scope. Is either a Application type or a - IO[bytes] type. Required. - :type application: ~azure.mgmt.security.models.Application or IO[bytes] - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Application] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(application, (IOBase, bytes)): - _content = application - else: - _json = self._serialize.body(application, "Application") - - _request = build_create_or_update_request( - application_id=application_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated5, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Application", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete(self, application_id: str, **kwargs: Any) -> None: # pylint: disable=inconsistent-return-statements - """Delete an Application over a given scope. - - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - application_id=application_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_applications_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_applications_operations.py deleted file mode 100644 index 29a236efb461..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_applications_operations.py +++ /dev/null @@ -1,149 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class ApplicationsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`applications` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.Application"]: - """Get a list of all relevant applications over a subscription level scope. - - :return: An iterator like instance of either Application or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Application] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - cls: ClsType[_models.ApplicationsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ApplicationsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated5, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_metadata_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_metadata_operations.py deleted file mode 100644 index fbc97dfa30cc..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_metadata_operations.py +++ /dev/null @@ -1,655 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.Security/assessmentMetadata") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(assessment_metadata_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}") - path_format_arguments = { - "assessmentMetadataName": _SERIALIZER.url("assessment_metadata_name", assessment_metadata_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_in_subscription_request( - assessment_metadata_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}", - ) - path_format_arguments = { - "assessmentMetadataName": _SERIALIZER.url("assessment_metadata_name", assessment_metadata_name, "str"), - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_in_subscription_request( - assessment_metadata_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}", - ) - path_format_arguments = { - "assessmentMetadataName": _SERIALIZER.url("assessment_metadata_name", assessment_metadata_name, "str"), - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_in_subscription_request( - assessment_metadata_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}", - ) - path_format_arguments = { - "assessmentMetadataName": _SERIALIZER.url("assessment_metadata_name", assessment_metadata_name, "str"), - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class AssessmentsMetadataOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`assessments_metadata` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.SecurityAssessmentMetadataResponse"]: - """Get metadata information on all assessment types. - - :return: An iterator like instance of either SecurityAssessmentMetadataResponse or the result - of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityAssessmentMetadataResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[_models.SecurityAssessmentMetadataResponseList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityAssessmentMetadataResponseList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, assessment_metadata_name: str, **kwargs: Any) -> _models.SecurityAssessmentMetadataResponse: - """Get metadata information on an assessment type. - - :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. - Required. - :type assessment_metadata_name: str - :return: SecurityAssessmentMetadataResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) - - _request = build_get_request( - assessment_metadata_name=assessment_metadata_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityAssessmentMetadataResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.SecurityAssessmentMetadataResponse"]: - """Get metadata information on all assessment types in a specific subscription. - - :return: An iterator like instance of either SecurityAssessmentMetadataResponse or the result - of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityAssessmentMetadataResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[_models.SecurityAssessmentMetadataResponseList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityAssessmentMetadataResponseList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get_in_subscription( - self, assessment_metadata_name: str, **kwargs: Any - ) -> _models.SecurityAssessmentMetadataResponse: - """Get metadata information on an assessment type in a specific subscription. - - :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. - Required. - :type assessment_metadata_name: str - :return: SecurityAssessmentMetadataResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) - - _request = build_get_in_subscription_request( - assessment_metadata_name=assessment_metadata_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityAssessmentMetadataResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_in_subscription( - self, - assessment_metadata_name: str, - assessment_metadata: _models.SecurityAssessmentMetadataResponse, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityAssessmentMetadataResponse: - """Create metadata information on an assessment type in a specific subscription. - - :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. - Required. - :type assessment_metadata_name: str - :param assessment_metadata: AssessmentMetadata object. Required. - :type assessment_metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityAssessmentMetadataResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_in_subscription( - self, - assessment_metadata_name: str, - assessment_metadata: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityAssessmentMetadataResponse: - """Create metadata information on an assessment type in a specific subscription. - - :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. - Required. - :type assessment_metadata_name: str - :param assessment_metadata: AssessmentMetadata object. Required. - :type assessment_metadata: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityAssessmentMetadataResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_in_subscription( - self, - assessment_metadata_name: str, - assessment_metadata: Union[_models.SecurityAssessmentMetadataResponse, IO[bytes]], - **kwargs: Any - ) -> _models.SecurityAssessmentMetadataResponse: - """Create metadata information on an assessment type in a specific subscription. - - :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. - Required. - :type assessment_metadata_name: str - :param assessment_metadata: AssessmentMetadata object. Is either a - SecurityAssessmentMetadataResponse type or a IO[bytes] type. Required. - :type assessment_metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse or - IO[bytes] - :return: SecurityAssessmentMetadataResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(assessment_metadata, (IOBase, bytes)): - _content = assessment_metadata - else: - _json = self._serialize.body(assessment_metadata, "SecurityAssessmentMetadataResponse") - - _request = build_create_in_subscription_request( - assessment_metadata_name=assessment_metadata_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityAssessmentMetadataResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_in_subscription( # pylint: disable=inconsistent-return-statements - self, assessment_metadata_name: str, **kwargs: Any - ) -> None: - """Delete metadata information on an assessment type in a specific subscription, will cause the - deletion of all the assessments of that type in that subscription. - - :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. - Required. - :type assessment_metadata_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_in_subscription_request( - assessment_metadata_name=assessment_metadata_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_operations.py deleted file mode 100644 index 5c2eef0050ee..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assessments_operations.py +++ /dev/null @@ -1,491 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(scope: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/assessments") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_id: str, assessment_name: str, *, expand: Optional[Union[str, _models.ExpandEnum]] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/assessments/{assessmentName}") - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if expand is not None: - _params["$expand"] = _SERIALIZER.query("expand", expand, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request(resource_id: str, assessment_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/assessments/{assessmentName}") - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(resource_id: str, assessment_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/assessments/{assessmentName}") - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class AssessmentsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`assessments` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.SecurityAssessmentResponse"]: - """Get security assessments on all your scanned resources inside a scope. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :return: An iterator like instance of either SecurityAssessmentResponse or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityAssessmentResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[_models.SecurityAssessmentList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityAssessmentList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, - resource_id: str, - assessment_name: str, - expand: Optional[Union[str, _models.ExpandEnum]] = None, - **kwargs: Any - ) -> _models.SecurityAssessmentResponse: - """Get a security assessment on your scanned resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :param expand: OData expand. Optional. Known values are: "links" and "metadata". Default value - is None. - :type expand: str or ~azure.mgmt.security.models.ExpandEnum - :return: SecurityAssessmentResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[_models.SecurityAssessmentResponse] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - assessment_name=assessment_name, - expand=expand, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityAssessmentResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - resource_id: str, - assessment_name: str, - assessment: _models.SecurityAssessment, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityAssessmentResponse: - """Create a security assessment on your resource. An assessment metadata that describes this - assessment must be predefined with the same name before inserting the assessment result. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :param assessment: Calculated assessment on a pre-defined assessment metadata. Required. - :type assessment: ~azure.mgmt.security.models.SecurityAssessment - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityAssessmentResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_id: str, - assessment_name: str, - assessment: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityAssessmentResponse: - """Create a security assessment on your resource. An assessment metadata that describes this - assessment must be predefined with the same name before inserting the assessment result. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :param assessment: Calculated assessment on a pre-defined assessment metadata. Required. - :type assessment: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityAssessmentResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_id: str, - assessment_name: str, - assessment: Union[_models.SecurityAssessment, IO[bytes]], - **kwargs: Any - ) -> _models.SecurityAssessmentResponse: - """Create a security assessment on your resource. An assessment metadata that describes this - assessment must be predefined with the same name before inserting the assessment result. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :param assessment: Calculated assessment on a pre-defined assessment metadata. Is either a - SecurityAssessment type or a IO[bytes] type. Required. - :type assessment: ~azure.mgmt.security.models.SecurityAssessment or IO[bytes] - :return: SecurityAssessmentResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SecurityAssessmentResponse] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(assessment, (IOBase, bytes)): - _content = assessment - else: - _json = self._serialize.body(assessment, "SecurityAssessment") - - _request = build_create_or_update_request( - resource_id=resource_id, - assessment_name=assessment_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityAssessmentResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_id: str, assessment_name: str, **kwargs: Any - ) -> None: - """Delete a security assessment on your resource. An assessment metadata that describes this - assessment must be predefined with the same name before inserting the assessment result. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_id=resource_id, - assessment_name=assessment_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated11, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assignments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assignments_operations.py deleted file mode 100644 index 2657716c00e2..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_assignments_operations.py +++ /dev/null @@ -1,608 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assignments") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(resource_group_name: str, assignment_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments/{assignmentId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "assignmentId": _SERIALIZER.url("assignment_id", assignment_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, assignment_id: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments/{assignmentId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "assignmentId": _SERIALIZER.url("assignment_id", assignment_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, assignment_id: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments/{assignmentId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "assignmentId": _SERIALIZER.url("assignment_id", assignment_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - - -class AssignmentsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`assignments` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.Assignment"]: - """Get a list of all relevant standardAssignments over a subscription level scope. - - :return: An iterator like instance of either Assignment or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Assignment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[_models.AssignmentList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AssignmentList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.Assignment"]: - """Get a list of all relevant standardAssignments available for scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either Assignment or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Assignment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[_models.AssignmentList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AssignmentList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, resource_group_name: str, assignment_id: str, **kwargs: Any) -> _models.Assignment: - """Get a specific standard assignment for the requested scope by resourceId. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param assignment_id: The security assignment key - unique key for the standard assignment. - Required. - :type assignment_id: str - :return: Assignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Assignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[_models.Assignment] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - assignment_id=assignment_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Assignment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - resource_group_name: str, - assignment_id: str, - assignment: _models.Assignment, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Assignment: - """Create a security assignment on the given scope. Will create/update the required standard - assignment. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param assignment_id: The security assignment key - unique key for the standard assignment. - Required. - :type assignment_id: str - :param assignment: Custom standard assignment over a pre-defined scope. Required. - :type assignment: ~azure.mgmt.security.models.Assignment - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Assignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Assignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - assignment_id: str, - assignment: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Assignment: - """Create a security assignment on the given scope. Will create/update the required standard - assignment. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param assignment_id: The security assignment key - unique key for the standard assignment. - Required. - :type assignment_id: str - :param assignment: Custom standard assignment over a pre-defined scope. Required. - :type assignment: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Assignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Assignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - assignment_id: str, - assignment: Union[_models.Assignment, IO[bytes]], - **kwargs: Any - ) -> _models.Assignment: - """Create a security assignment on the given scope. Will create/update the required standard - assignment. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param assignment_id: The security assignment key - unique key for the standard assignment. - Required. - :type assignment_id: str - :param assignment: Custom standard assignment over a pre-defined scope. Is either a Assignment - type or a IO[bytes] type. Required. - :type assignment: ~azure.mgmt.security.models.Assignment or IO[bytes] - :return: Assignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Assignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Assignment] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(assignment, (IOBase, bytes)): - _content = assignment - else: - _json = self._serialize.body(assignment, "Assignment") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - assignment_id=assignment_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Assignment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, assignment_id: str, **kwargs: Any - ) -> None: - """Delete a standard assignment over a given scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param assignment_id: The security assignment key - unique key for the standard assignment. - Required. - :type assignment_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - assignment_id=assignment_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_auto_provisioning_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_auto_provisioning_settings_operations.py deleted file mode 100644 index 1c235aa4aeeb..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_auto_provisioning_settings_operations.py +++ /dev/null @@ -1,384 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/autoProvisioningSettings" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(setting_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/autoProvisioningSettings/{settingName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_request(setting_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/autoProvisioningSettings/{settingName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -class AutoProvisioningSettingsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`auto_provisioning_settings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.AutoProvisioningSetting"]: - """Exposes the auto provisioning settings of the subscriptions. - - :return: An iterator like instance of either AutoProvisioningSetting or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AutoProvisioningSetting] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.AutoProvisioningSettingList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AutoProvisioningSettingList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, setting_name: str, **kwargs: Any) -> _models.AutoProvisioningSetting: - """Details of a specific setting. - - :param setting_name: Auto provisioning setting key. Required. - :type setting_name: str - :return: AutoProvisioningSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.AutoProvisioningSetting] = kwargs.pop("cls", None) - - _request = build_get_request( - setting_name=setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AutoProvisioningSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create( - self, - setting_name: str, - setting: _models.AutoProvisioningSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AutoProvisioningSetting: - """Details of a specific setting. - - :param setting_name: Auto provisioning setting key. Required. - :type setting_name: str - :param setting: Auto provisioning setting key. Required. - :type setting: ~azure.mgmt.security.models.AutoProvisioningSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AutoProvisioningSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create( - self, setting_name: str, setting: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.AutoProvisioningSetting: - """Details of a specific setting. - - :param setting_name: Auto provisioning setting key. Required. - :type setting_name: str - :param setting: Auto provisioning setting key. Required. - :type setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AutoProvisioningSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create( - self, setting_name: str, setting: Union[_models.AutoProvisioningSetting, IO[bytes]], **kwargs: Any - ) -> _models.AutoProvisioningSetting: - """Details of a specific setting. - - :param setting_name: Auto provisioning setting key. Required. - :type setting_name: str - :param setting: Auto provisioning setting key. Is either a AutoProvisioningSetting type or a - IO[bytes] type. Required. - :type setting: ~azure.mgmt.security.models.AutoProvisioningSetting or IO[bytes] - :return: AutoProvisioningSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutoProvisioningSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(setting, (IOBase, bytes)): - _content = setting - else: - _json = self._serialize.body(setting, "AutoProvisioningSetting") - - _request = build_create_request( - setting_name=setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AutoProvisioningSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_automations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_automations_operations.py deleted file mode 100644 index e858100d3cf7..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_automations_operations.py +++ /dev/null @@ -1,964 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/automations") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, automation_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "automationName": _SERIALIZER.url("automation_name", automation_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, automation_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "automationName": _SERIALIZER.url("automation_name", automation_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, automation_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "automationName": _SERIALIZER.url("automation_name", automation_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, automation_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "automationName": _SERIALIZER.url("automation_name", automation_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_validate_request( - resource_group_name: str, automation_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}/validate", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "automationName": _SERIALIZER.url("automation_name", automation_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class AutomationsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`automations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.Automation"]: - """Lists all the security automations in the specified subscription. Use the 'nextLink' property - in the response to get the next page of security automations for the specified subscription. - - :return: An iterator like instance of either Automation or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Automation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[_models.AutomationList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AutomationList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.Automation"]: - """Lists all the security automations in the specified resource group. Use the 'nextLink' property - in the response to get the next page of security automations for the specified resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either Automation or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Automation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[_models.AutomationList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AutomationList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, resource_group_name: str, automation_name: str, **kwargs: Any) -> _models.Automation: - """Retrieves information about the model of a security automation. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[_models.Automation] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - automation_name=automation_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Automation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - resource_group_name: str, - automation_name: str, - automation: _models.Automation, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Automation: - """Creates or updates a security automation. If a security automation is already created and a - subsequent request is issued for the same automation id, then it will be updated. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The security automation resource. Required. - :type automation: ~azure.mgmt.security.models.Automation - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - automation_name: str, - automation: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Automation: - """Creates or updates a security automation. If a security automation is already created and a - subsequent request is issued for the same automation id, then it will be updated. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The security automation resource. Required. - :type automation: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - automation_name: str, - automation: Union[_models.Automation, IO[bytes]], - **kwargs: Any - ) -> _models.Automation: - """Creates or updates a security automation. If a security automation is already created and a - subsequent request is issued for the same automation id, then it will be updated. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The security automation resource. Is either a Automation type or a IO[bytes] - type. Required. - :type automation: ~azure.mgmt.security.models.Automation or IO[bytes] - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Automation] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(automation, (IOBase, bytes)): - _content = automation - else: - _json = self._serialize.body(automation, "Automation") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - automation_name=automation_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Automation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - resource_group_name: str, - automation_name: str, - automation: _models.AutomationUpdateModel, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Automation: - """Updates a security automation. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The update model of security automation resource. Required. - :type automation: ~azure.mgmt.security.models.AutomationUpdateModel - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - resource_group_name: str, - automation_name: str, - automation: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Automation: - """Updates a security automation. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The update model of security automation resource. Required. - :type automation: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - resource_group_name: str, - automation_name: str, - automation: Union[_models.AutomationUpdateModel, IO[bytes]], - **kwargs: Any - ) -> _models.Automation: - """Updates a security automation. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The update model of security automation resource. Is either a - AutomationUpdateModel type or a IO[bytes] type. Required. - :type automation: ~azure.mgmt.security.models.AutomationUpdateModel or IO[bytes] - :return: Automation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Automation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Automation] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(automation, (IOBase, bytes)): - _content = automation - else: - _json = self._serialize.body(automation, "AutomationUpdateModel") - - _request = build_update_request( - resource_group_name=resource_group_name, - automation_name=automation_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Automation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, automation_name: str, **kwargs: Any - ) -> None: - """Deletes a security automation. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - automation_name=automation_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - def validate( - self, - resource_group_name: str, - automation_name: str, - automation: _models.Automation, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AutomationValidationStatus: - """Validates the security automation model before create or update. Any validation errors are - returned to the client. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The security automation resource. Required. - :type automation: ~azure.mgmt.security.models.Automation - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AutomationValidationStatus or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutomationValidationStatus - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def validate( - self, - resource_group_name: str, - automation_name: str, - automation: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AutomationValidationStatus: - """Validates the security automation model before create or update. Any validation errors are - returned to the client. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The security automation resource. Required. - :type automation: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AutomationValidationStatus or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutomationValidationStatus - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def validate( - self, - resource_group_name: str, - automation_name: str, - automation: Union[_models.Automation, IO[bytes]], - **kwargs: Any - ) -> _models.AutomationValidationStatus: - """Validates the security automation model before create or update. Any validation errors are - returned to the client. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param automation_name: The security automation name. Required. - :type automation_name: str - :param automation: The security automation resource. Is either a Automation type or a IO[bytes] - type. Required. - :type automation: ~azure.mgmt.security.models.Automation or IO[bytes] - :return: AutomationValidationStatus or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AutomationValidationStatus - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutomationValidationStatus] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(automation, (IOBase, bytes)): - _content = automation - else: - _json = self._serialize.body(automation, "Automation") - - _request = build_validate_request( - resource_group_name=resource_group_name, - automation_name=automation_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated9, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AutomationValidationStatus", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_orgs_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_orgs_operations.py deleted file mode 100644 index 7c39bb489d4a..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_orgs_operations.py +++ /dev/null @@ -1,887 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_available_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/listAvailableAzureDevOpsOrgs", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, security_connector_name: str, org_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "orgName": _SERIALIZER.url("org_name", org_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, security_connector_name: str, org_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "orgName": _SERIALIZER.url("org_name", org_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, security_connector_name: str, org_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "orgName": _SERIALIZER.url("org_name", org_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -class AzureDevOpsOrgsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`azure_dev_ops_orgs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_available( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> _models.AzureDevOpsOrgListResponse: - """Returns a list of all Azure DevOps organizations accessible by the user token consumed by the - connector. - - Returns a list of all Azure DevOps organizations accessible by the user token consumed by the - connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: AzureDevOpsOrgListResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AzureDevOpsOrgListResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsOrgListResponse] = kwargs.pop("cls", None) - - _request = build_list_available_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AzureDevOpsOrgListResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> ItemPaged["_models.AzureDevOpsOrg"]: - """Returns a list of Azure DevOps organizations onboarded to the connector. - - Returns a list of Azure DevOps organizations onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: An iterator like instance of either AzureDevOpsOrg or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsOrgListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AzureDevOpsOrgListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_group_name: str, security_connector_name: str, org_name: str, **kwargs: Any - ) -> _models.AzureDevOpsOrg: - """Returns a monitored Azure DevOps organization resource. - - Returns a monitored Azure DevOps organization resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :return: AzureDevOpsOrg or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AzureDevOpsOrg - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AzureDevOpsOrg", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _create_or_update_initial( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: Union[_models.AzureDevOpsOrg, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(azure_dev_ops_org, (IOBase, bytes)): - _content = azure_dev_ops_org - else: - _json = self._serialize.body(azure_dev_ops_org, "AzureDevOpsOrg") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: _models.AzureDevOpsOrg, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsOrg]: - """Creates or updates monitored Azure DevOps organization details. - - Creates or updates monitored Azure DevOps organization details. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. - :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either AzureDevOpsOrg or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsOrg]: - """Creates or updates monitored Azure DevOps organization details. - - Creates or updates monitored Azure DevOps organization details. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. - :type azure_dev_ops_org: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either AzureDevOpsOrg or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: Union[_models.AzureDevOpsOrg, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsOrg]: - """Creates or updates monitored Azure DevOps organization details. - - Creates or updates monitored Azure DevOps organization details. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param azure_dev_ops_org: The Azure DevOps organization resource payload. Is either a - AzureDevOpsOrg type or a IO[bytes] type. Required. - :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg or IO[bytes] - :return: An instance of LROPoller that returns either AzureDevOpsOrg or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - azure_dev_ops_org=azure_dev_ops_org, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("AzureDevOpsOrg", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.AzureDevOpsOrg].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.AzureDevOpsOrg]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _update_initial( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: Union[_models.AzureDevOpsOrg, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(azure_dev_ops_org, (IOBase, bytes)): - _content = azure_dev_ops_org - else: - _json = self._serialize.body(azure_dev_ops_org, "AzureDevOpsOrg") - - _request = build_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: _models.AzureDevOpsOrg, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsOrg]: - """Updates monitored Azure DevOps organization details. - - Updates monitored Azure DevOps organization details. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. - :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either AzureDevOpsOrg or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsOrg]: - """Updates monitored Azure DevOps organization details. - - Updates monitored Azure DevOps organization details. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. - :type azure_dev_ops_org: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either AzureDevOpsOrg or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - azure_dev_ops_org: Union[_models.AzureDevOpsOrg, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsOrg]: - """Updates monitored Azure DevOps organization details. - - Updates monitored Azure DevOps organization details. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param azure_dev_ops_org: The Azure DevOps organization resource payload. Is either a - AzureDevOpsOrg type or a IO[bytes] type. Required. - :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg or IO[bytes] - :return: An instance of LROPoller that returns either AzureDevOpsOrg or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - azure_dev_ops_org=azure_dev_ops_org, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("AzureDevOpsOrg", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.AzureDevOpsOrg].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.AzureDevOpsOrg]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_projects_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_projects_operations.py deleted file mode 100644 index 1842b58f0992..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_projects_operations.py +++ /dev/null @@ -1,836 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, security_connector_name: str, org_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "orgName": _SERIALIZER.url("org_name", org_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "orgName": _SERIALIZER.url("org_name", org_name, "str"), - "projectName": _SERIALIZER.url("project_name", project_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "orgName": _SERIALIZER.url("org_name", org_name, "str"), - "projectName": _SERIALIZER.url("project_name", project_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "orgName": _SERIALIZER.url("org_name", org_name, "str"), - "projectName": _SERIALIZER.url("project_name", project_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -class AzureDevOpsProjectsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`azure_dev_ops_projects` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, org_name: str, **kwargs: Any - ) -> ItemPaged["_models.AzureDevOpsProject"]: - """Returns a list of Azure DevOps projects onboarded to the connector. - - Returns a list of Azure DevOps projects onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :return: An iterator like instance of either AzureDevOpsProject or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsProjectListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AzureDevOpsProjectListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_group_name: str, security_connector_name: str, org_name: str, project_name: str, **kwargs: Any - ) -> _models.AzureDevOpsProject: - """Returns a monitored Azure DevOps project resource. - - Returns a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :return: AzureDevOpsProject or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AzureDevOpsProject - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AzureDevOpsProject", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _create_or_update_initial( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: Union[_models.AzureDevOpsProject, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(azure_dev_ops_project, (IOBase, bytes)): - _content = azure_dev_ops_project - else: - _json = self._serialize.body(azure_dev_ops_project, "AzureDevOpsProject") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: _models.AzureDevOpsProject, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsProject]: - """Creates or updates a monitored Azure DevOps project resource. - - Creates or updates a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. - :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either AzureDevOpsProject or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsProject]: - """Creates or updates a monitored Azure DevOps project resource. - - Creates or updates a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. - :type azure_dev_ops_project: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either AzureDevOpsProject or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: Union[_models.AzureDevOpsProject, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsProject]: - """Creates or updates a monitored Azure DevOps project resource. - - Creates or updates a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param azure_dev_ops_project: The Azure DevOps project resource payload. Is either a - AzureDevOpsProject type or a IO[bytes] type. Required. - :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject or IO[bytes] - :return: An instance of LROPoller that returns either AzureDevOpsProject or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - azure_dev_ops_project=azure_dev_ops_project, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("AzureDevOpsProject", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.AzureDevOpsProject].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.AzureDevOpsProject]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _update_initial( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: Union[_models.AzureDevOpsProject, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(azure_dev_ops_project, (IOBase, bytes)): - _content = azure_dev_ops_project - else: - _json = self._serialize.body(azure_dev_ops_project, "AzureDevOpsProject") - - _request = build_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: _models.AzureDevOpsProject, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsProject]: - """Updates a monitored Azure DevOps project resource. - - Updates a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. - :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either AzureDevOpsProject or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsProject]: - """Updates a monitored Azure DevOps project resource. - - Updates a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. - :type azure_dev_ops_project: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either AzureDevOpsProject or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - azure_dev_ops_project: Union[_models.AzureDevOpsProject, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsProject]: - """Updates a monitored Azure DevOps project resource. - - Updates a monitored Azure DevOps project resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param azure_dev_ops_project: The Azure DevOps project resource payload. Is either a - AzureDevOpsProject type or a IO[bytes] type. Required. - :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject or IO[bytes] - :return: An instance of LROPoller that returns either AzureDevOpsProject or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - azure_dev_ops_project=azure_dev_ops_project, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("AzureDevOpsProject", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.AzureDevOpsProject].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.AzureDevOpsProject]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_repos_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_repos_operations.py deleted file mode 100644 index 426bbe6e46d3..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_azure_dev_ops_repos_operations.py +++ /dev/null @@ -1,885 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}/repos", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "orgName": _SERIALIZER.url("org_name", org_name, "str"), - "projectName": _SERIALIZER.url("project_name", project_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}/repos/{repoName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "orgName": _SERIALIZER.url("org_name", org_name, "str"), - "projectName": _SERIALIZER.url("project_name", project_name, "str"), - "repoName": _SERIALIZER.url("repo_name", repo_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}/repos/{repoName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "orgName": _SERIALIZER.url("org_name", org_name, "str"), - "projectName": _SERIALIZER.url("project_name", project_name, "str"), - "repoName": _SERIALIZER.url("repo_name", repo_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}/repos/{repoName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "orgName": _SERIALIZER.url("org_name", org_name, "str"), - "projectName": _SERIALIZER.url("project_name", project_name, "str"), - "repoName": _SERIALIZER.url("repo_name", repo_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -class AzureDevOpsReposOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`azure_dev_ops_repos` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, org_name: str, project_name: str, **kwargs: Any - ) -> ItemPaged["_models.AzureDevOpsRepository"]: - """Returns a list of Azure DevOps repositories onboarded to the connector. - - Returns a list of Azure DevOps repositories onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :return: An iterator like instance of either AzureDevOpsRepository or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsRepositoryListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AzureDevOpsRepositoryListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - **kwargs: Any - ) -> _models.AzureDevOpsRepository: - """Returns a monitored Azure DevOps repository resource. - - Returns a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :return: AzureDevOpsRepository or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AzureDevOpsRepository - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - repo_name=repo_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AzureDevOpsRepository", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _create_or_update_initial( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(azure_dev_ops_repository, (IOBase, bytes)): - _content = azure_dev_ops_repository - else: - _json = self._serialize.body(azure_dev_ops_repository, "AzureDevOpsRepository") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - repo_name=repo_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: _models.AzureDevOpsRepository, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsRepository]: - """Creates or updates a monitored Azure DevOps repository resource. - - Creates or updates a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. - :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either AzureDevOpsRepository or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsRepository]: - """Creates or updates a monitored Azure DevOps repository resource. - - Creates or updates a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. - :type azure_dev_ops_repository: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either AzureDevOpsRepository or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsRepository]: - """Creates or updates a monitored Azure DevOps repository resource. - - Creates or updates a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Is either a - AzureDevOpsRepository type or a IO[bytes] type. Required. - :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository or IO[bytes] - :return: An instance of LROPoller that returns either AzureDevOpsRepository or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - repo_name=repo_name, - azure_dev_ops_repository=azure_dev_ops_repository, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("AzureDevOpsRepository", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.AzureDevOpsRepository].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.AzureDevOpsRepository]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _update_initial( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(azure_dev_ops_repository, (IOBase, bytes)): - _content = azure_dev_ops_repository - else: - _json = self._serialize.body(azure_dev_ops_repository, "AzureDevOpsRepository") - - _request = build_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - repo_name=repo_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: _models.AzureDevOpsRepository, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsRepository]: - """Updates a monitored Azure DevOps repository resource. - - Updates a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. - :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either AzureDevOpsRepository or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsRepository]: - """Updates a monitored Azure DevOps repository resource. - - Updates a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. - :type azure_dev_ops_repository: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either AzureDevOpsRepository or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - org_name: str, - project_name: str, - repo_name: str, - azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.AzureDevOpsRepository]: - """Updates a monitored Azure DevOps repository resource. - - Updates a monitored Azure DevOps repository resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param org_name: The Azure DevOps organization name. Required. - :type org_name: str - :param project_name: The project name. Required. - :type project_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Is either a - AzureDevOpsRepository type or a IO[bytes] type. Required. - :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository or IO[bytes] - :return: An instance of LROPoller that returns either AzureDevOpsRepository or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - org_name=org_name, - project_name=project_name, - repo_name=repo_name, - azure_dev_ops_repository=azure_dev_ops_repository, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("AzureDevOpsRepository", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.AzureDevOpsRepository].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.AzureDevOpsRepository]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliance_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliance_results_operations.py deleted file mode 100644 index f11ba2fa205b..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliance_results_operations.py +++ /dev/null @@ -1,235 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(scope: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/complianceResults") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(resource_id: str, compliance_result_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/complianceResults/{complianceResultName}" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "complianceResultName": _SERIALIZER.url("compliance_result_name", compliance_result_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class ComplianceResultsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`compliance_results` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.ComplianceResult"]: - """Security compliance results in the subscription. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :return: An iterator like instance of either ComplianceResult or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ComplianceResult] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01")) - cls: ClsType[_models.ComplianceResultList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ComplianceResultList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated12, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, resource_id: str, compliance_result_name: str, **kwargs: Any) -> _models.ComplianceResult: - """Security Compliance Result. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param compliance_result_name: name of the desired assessment compliance result. Required. - :type compliance_result_name: str - :return: ComplianceResult or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ComplianceResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01")) - cls: ClsType[_models.ComplianceResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - compliance_result_name=compliance_result_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated12, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ComplianceResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliances_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliances_operations.py deleted file mode 100644 index 5bcd82d7c0cd..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_compliances_operations.py +++ /dev/null @@ -1,235 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(scope: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/compliances") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(scope: str, compliance_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/compliances/{complianceName}") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), - "complianceName": _SERIALIZER.url("compliance_name", compliance_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class CompliancesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`compliances` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.Compliance"]: - """The Compliance scores of the specific management group. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :return: An iterator like instance of either Compliance or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Compliance] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.ComplianceList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ComplianceList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, scope: str, compliance_name: str, **kwargs: Any) -> _models.Compliance: - """Details of a specific Compliance. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param compliance_name: name of the Compliance. Required. - :type compliance_name: str - :return: Compliance or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Compliance - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.Compliance] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - compliance_name=compliance_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Compliance", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_recommendations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_recommendations_operations.py deleted file mode 100644 index 4ee6ca7ab5d0..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_custom_recommendations_operations.py +++ /dev/null @@ -1,517 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(scope: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/customRecommendations") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(scope: str, custom_recommendation_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{scope}/providers/Microsoft.Security/customRecommendations/{customRecommendationName}" - ) - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "customRecommendationName": _SERIALIZER.url( - "custom_recommendation_name", - custom_recommendation_name, - "str", - pattern=r"[{]?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request(scope: str, custom_recommendation_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{scope}/providers/Microsoft.Security/customRecommendations/{customRecommendationName}" - ) - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "customRecommendationName": _SERIALIZER.url( - "custom_recommendation_name", - custom_recommendation_name, - "str", - pattern=r"[{]?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(scope: str, custom_recommendation_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{scope}/providers/Microsoft.Security/customRecommendations/{customRecommendationName}" - ) - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "customRecommendationName": _SERIALIZER.url( - "custom_recommendation_name", - custom_recommendation_name, - "str", - pattern=r"[{]?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class CustomRecommendationsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`custom_recommendations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.CustomRecommendation"]: - """Get a list of all relevant custom recommendations over a scope. - - :param scope: The scope of the custom recommendation. Valid scopes are: management group - (format: 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription - (format: 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :return: An iterator like instance of either CustomRecommendation or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.CustomRecommendation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[_models.CustomRecommendationsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("CustomRecommendationsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, scope: str, custom_recommendation_name: str, **kwargs: Any) -> _models.CustomRecommendation: - """Get a specific custom recommendation for the requested scope by customRecommendationName. - - :param scope: The scope of the custom recommendation. Valid scopes are: management group - (format: 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription - (format: 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param custom_recommendation_name: Name of the Custom Recommendation. Required. - :type custom_recommendation_name: str - :return: CustomRecommendation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomRecommendation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[_models.CustomRecommendation] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - custom_recommendation_name=custom_recommendation_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CustomRecommendation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - scope: str, - custom_recommendation_name: str, - custom_recommendation_body: _models.CustomRecommendation, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CustomRecommendation: - """Creates or updates a custom recommendation over a given scope. - - :param scope: The scope of the custom recommendation. Valid scopes are: management group - (format: 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription - (format: 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param custom_recommendation_name: Name of the Custom Recommendation. Required. - :type custom_recommendation_name: str - :param custom_recommendation_body: Custom Recommendation body. Required. - :type custom_recommendation_body: ~azure.mgmt.security.models.CustomRecommendation - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CustomRecommendation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomRecommendation - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - scope: str, - custom_recommendation_name: str, - custom_recommendation_body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CustomRecommendation: - """Creates or updates a custom recommendation over a given scope. - - :param scope: The scope of the custom recommendation. Valid scopes are: management group - (format: 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription - (format: 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param custom_recommendation_name: Name of the Custom Recommendation. Required. - :type custom_recommendation_name: str - :param custom_recommendation_body: Custom Recommendation body. Required. - :type custom_recommendation_body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CustomRecommendation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomRecommendation - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - scope: str, - custom_recommendation_name: str, - custom_recommendation_body: Union[_models.CustomRecommendation, IO[bytes]], - **kwargs: Any - ) -> _models.CustomRecommendation: - """Creates or updates a custom recommendation over a given scope. - - :param scope: The scope of the custom recommendation. Valid scopes are: management group - (format: 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription - (format: 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param custom_recommendation_name: Name of the Custom Recommendation. Required. - :type custom_recommendation_name: str - :param custom_recommendation_body: Custom Recommendation body. Is either a CustomRecommendation - type or a IO[bytes] type. Required. - :type custom_recommendation_body: ~azure.mgmt.security.models.CustomRecommendation or IO[bytes] - :return: CustomRecommendation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.CustomRecommendation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CustomRecommendation] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(custom_recommendation_body, (IOBase, bytes)): - _content = custom_recommendation_body - else: - _json = self._serialize.body(custom_recommendation_body, "CustomRecommendation") - - _request = build_create_or_update_request( - scope=scope, - custom_recommendation_name=custom_recommendation_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CustomRecommendation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, scope: str, custom_recommendation_name: str, **kwargs: Any - ) -> None: - """Delete a custom recommendation over a given scope. - - :param scope: The scope of the custom recommendation. Valid scopes are: management group - (format: 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription - (format: 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param custom_recommendation_name: Name of the Custom Recommendation. Required. - :type custom_recommendation_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - scope=scope, - custom_recommendation_name=custom_recommendation_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_defender_for_storage_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_defender_for_storage_operations.py deleted file mode 100644 index e601f9ad81d7..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_defender_for_storage_operations.py +++ /dev/null @@ -1,689 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(resource_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings") - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_request( - resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_start_malware_scan_request( - resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}/startMalwareScan", - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_cancel_malware_scan_request( - resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], scan_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}/malwareScans/{scanId}/cancelMalwareScan", - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), - "scanId": _SERIALIZER.url( - "scan_id", - scan_id, - "str", - pattern=r"^(latest|[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12})$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_malware_scan_request( - resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], scan_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}/malwareScans/{scanId}", - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), - "scanId": _SERIALIZER.url( - "scan_id", - scan_id, - "str", - pattern=r"^(latest|[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12})$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class DefenderForStorageOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`defender_for_storage` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, resource_id: str, **kwargs: Any) -> ItemPaged["_models.DefenderForStorageSetting"]: - """Lists the Defender for Storage settings for the specified storage account. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :return: An iterator like instance of either DefenderForStorageSetting or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.DefenderForStorageSetting] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - cls: ClsType[_models.DefenderForStorageSettingList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_id=resource_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("DefenderForStorageSettingList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated20, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any - ) -> _models.DefenderForStorageSetting: - """Gets the Defender for Storage settings for the specified storage account. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :return: DefenderForStorageSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - cls: ClsType[_models.DefenderForStorageSetting] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - setting_name=setting_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated20, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("DefenderForStorageSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create( - self, - resource_id: str, - setting_name: Union[str, _models.SettingNameAutoGenerated], - defender_for_storage_setting: _models.DefenderForStorageSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.DefenderForStorageSetting: - """Creates or updates the Defender for Storage settings on a specified storage account. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :param defender_for_storage_setting: Defender for Storage Settings. Required. - :type defender_for_storage_setting: ~azure.mgmt.security.models.DefenderForStorageSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: DefenderForStorageSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create( - self, - resource_id: str, - setting_name: Union[str, _models.SettingNameAutoGenerated], - defender_for_storage_setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.DefenderForStorageSetting: - """Creates or updates the Defender for Storage settings on a specified storage account. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :param defender_for_storage_setting: Defender for Storage Settings. Required. - :type defender_for_storage_setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: DefenderForStorageSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create( - self, - resource_id: str, - setting_name: Union[str, _models.SettingNameAutoGenerated], - defender_for_storage_setting: Union[_models.DefenderForStorageSetting, IO[bytes]], - **kwargs: Any - ) -> _models.DefenderForStorageSetting: - """Creates or updates the Defender for Storage settings on a specified storage account. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :param defender_for_storage_setting: Defender for Storage Settings. Is either a - DefenderForStorageSetting type or a IO[bytes] type. Required. - :type defender_for_storage_setting: ~azure.mgmt.security.models.DefenderForStorageSetting or - IO[bytes] - :return: DefenderForStorageSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.DefenderForStorageSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(defender_for_storage_setting, (IOBase, bytes)): - _content = defender_for_storage_setting - else: - _json = self._serialize.body(defender_for_storage_setting, "DefenderForStorageSetting") - - _request = build_create_request( - resource_id=resource_id, - setting_name=setting_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated20, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("DefenderForStorageSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def start_malware_scan( - self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], **kwargs: Any - ) -> _models.MalwareScan: - """Initiate a Defender for Storage malware scan for the specified storage account. Blobs and Files - will be scanned for malware. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :return: MalwareScan or the result of cls(response) - :rtype: ~azure.mgmt.security.models.MalwareScan - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) - - _request = build_start_malware_scan_request( - resource_id=resource_id, - setting_name=setting_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated20, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MalwareScan", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def cancel_malware_scan( - self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], scan_id: str, **kwargs: Any - ) -> _models.MalwareScan: - """Cancels a Defender for Storage malware scan for the specified storage account. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :param scan_id: The identifier of the scan. Can be either 'latest' or a GUID. Required. - :type scan_id: str - :return: MalwareScan or the result of cls(response) - :rtype: ~azure.mgmt.security.models.MalwareScan - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) - - _request = build_cancel_malware_scan_request( - resource_id=resource_id, - setting_name=setting_name, - scan_id=scan_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated20, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MalwareScan", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_malware_scan( - self, resource_id: str, setting_name: Union[str, _models.SettingNameAutoGenerated], scan_id: str, **kwargs: Any - ) -> _models.MalwareScan: - """Gets the Defender for Storage malware scan for the specified storage resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param setting_name: Defender for Storage setting name. "current" Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingNameAutoGenerated - :param scan_id: The identifier of the scan. Can be either 'latest' or a GUID. Required. - :type scan_id: str - :return: MalwareScan or the result of cls(response) - :rtype: ~azure.mgmt.security.models.MalwareScan - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) - cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) - - _request = build_get_malware_scan_request( - resource_id=resource_id, - setting_name=setting_name, - scan_id=scan_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated20, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MalwareScan", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_configurations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_configurations_operations.py deleted file mode 100644 index e52e65eae070..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_configurations_operations.py +++ /dev/null @@ -1,897 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class DevOpsConfigurationsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`dev_ops_configurations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> ItemPaged["_models.DevOpsConfiguration"]: - """List DevOps Configurations. - - List DevOps Configurations. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: An iterator like instance of either DevOpsConfiguration or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.DevOpsConfigurationListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("DevOpsConfigurationListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, resource_group_name: str, security_connector_name: str, **kwargs: Any) -> _models.DevOpsConfiguration: - """Gets a DevOps Configuration. - - Gets a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: DevOpsConfiguration or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DevOpsConfiguration - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("DevOpsConfiguration", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _create_or_update_initial( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: Union[_models.DevOpsConfiguration, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(dev_ops_configuration, (IOBase, bytes)): - _content = dev_ops_configuration - else: - _json = self._serialize.body(dev_ops_configuration, "DevOpsConfiguration") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: _models.DevOpsConfiguration, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.DevOpsConfiguration]: - """Creates or updates a DevOps Configuration. - - Creates or updates a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param dev_ops_configuration: The DevOps configuration resource payload. Required. - :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either DevOpsConfiguration or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.DevOpsConfiguration]: - """Creates or updates a DevOps Configuration. - - Creates or updates a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param dev_ops_configuration: The DevOps configuration resource payload. Required. - :type dev_ops_configuration: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either DevOpsConfiguration or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: Union[_models.DevOpsConfiguration, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.DevOpsConfiguration]: - """Creates or updates a DevOps Configuration. - - Creates or updates a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param dev_ops_configuration: The DevOps configuration resource payload. Is either a - DevOpsConfiguration type or a IO[bytes] type. Required. - :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration or IO[bytes] - :return: An instance of LROPoller that returns either DevOpsConfiguration or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - dev_ops_configuration=dev_ops_configuration, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("DevOpsConfiguration", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.DevOpsConfiguration].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.DevOpsConfiguration]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _update_initial( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: Union[_models.DevOpsConfiguration, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(dev_ops_configuration, (IOBase, bytes)): - _content = dev_ops_configuration - else: - _json = self._serialize.body(dev_ops_configuration, "DevOpsConfiguration") - - _request = build_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: _models.DevOpsConfiguration, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.DevOpsConfiguration]: - """Updates a DevOps Configuration. - - Updates a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param dev_ops_configuration: The DevOps configuration resource payload. Required. - :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either DevOpsConfiguration or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.DevOpsConfiguration]: - """Updates a DevOps Configuration. - - Updates a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param dev_ops_configuration: The DevOps configuration resource payload. Required. - :type dev_ops_configuration: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either DevOpsConfiguration or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_update( - self, - resource_group_name: str, - security_connector_name: str, - dev_ops_configuration: Union[_models.DevOpsConfiguration, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.DevOpsConfiguration]: - """Updates a DevOps Configuration. - - Updates a DevOps Configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param dev_ops_configuration: The DevOps configuration resource payload. Is either a - DevOpsConfiguration type or a IO[bytes] type. Required. - :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration or IO[bytes] - :return: An instance of LROPoller that returns either DevOpsConfiguration or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._update_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - dev_ops_configuration=dev_ops_configuration, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("DevOpsConfiguration", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.DevOpsConfiguration].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.DevOpsConfiguration]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _delete_initial(self, resource_group_name: str, security_connector_name: str, **kwargs: Any) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete(self, resource_group_name: str, security_connector_name: str, **kwargs: Any) -> LROPoller[None]: - """Deletes a DevOps Connector. - - Deletes a DevOps Connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_operation_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_operation_results_operations.py deleted file mode 100644 index b8cccd60a209..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_dev_ops_operation_results_operations.py +++ /dev/null @@ -1,162 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request( - resource_group_name: str, - security_connector_name: str, - operation_result_id: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/operationResults/{operationResultId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "operationResultId": _SERIALIZER.url("operation_result_id", operation_result_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class DevOpsOperationResultsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`dev_ops_operation_results` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get( - self, resource_group_name: str, security_connector_name: str, operation_result_id: str, **kwargs: Any - ) -> _models.OperationStatusResult: - """Get devops long running operation result. - - Get devops long running operation result. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param operation_result_id: The operation result Id. Required. - :type operation_result_id: str - :return: OperationStatusResult or the result of cls(response) - :rtype: ~azure.mgmt.security.models.OperationStatusResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.OperationStatusResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - operation_result_id=operation_result_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("OperationStatusResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_device_security_groups_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_device_security_groups_operations.py deleted file mode 100644 index ea39e9fc9ae5..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_device_security_groups_operations.py +++ /dev/null @@ -1,484 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(resource_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/deviceSecurityGroups") - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(resource_id: str, device_security_group_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "deviceSecurityGroupName": _SERIALIZER.url("device_security_group_name", device_security_group_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request(resource_id: str, device_security_group_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "deviceSecurityGroupName": _SERIALIZER.url("device_security_group_name", device_security_group_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(resource_id: str, device_security_group_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "deviceSecurityGroupName": _SERIALIZER.url("device_security_group_name", device_security_group_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class DeviceSecurityGroupsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`device_security_groups` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, resource_id: str, **kwargs: Any) -> ItemPaged["_models.DeviceSecurityGroup"]: - """Use this method get the list of device security groups for the specified IoT Hub resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :return: An iterator like instance of either DeviceSecurityGroup or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.DeviceSecurityGroup] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.DeviceSecurityGroupList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_id=resource_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("DeviceSecurityGroupList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, resource_id: str, device_security_group_name: str, **kwargs: Any) -> _models.DeviceSecurityGroup: - """Use this method to get the device security group for the specified IoT Hub resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param device_security_group_name: The name of the device security group. Note that the name of - the device security group is case insensitive. Required. - :type device_security_group_name: str - :return: DeviceSecurityGroup or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.DeviceSecurityGroup] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - device_security_group_name=device_security_group_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("DeviceSecurityGroup", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - resource_id: str, - device_security_group_name: str, - device_security_group: _models.DeviceSecurityGroup, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.DeviceSecurityGroup: - """Use this method to creates or updates the device security group on a specified IoT Hub - resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param device_security_group_name: The name of the device security group. Note that the name of - the device security group is case insensitive. Required. - :type device_security_group_name: str - :param device_security_group: Security group object. Required. - :type device_security_group: ~azure.mgmt.security.models.DeviceSecurityGroup - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: DeviceSecurityGroup or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_id: str, - device_security_group_name: str, - device_security_group: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.DeviceSecurityGroup: - """Use this method to creates or updates the device security group on a specified IoT Hub - resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param device_security_group_name: The name of the device security group. Note that the name of - the device security group is case insensitive. Required. - :type device_security_group_name: str - :param device_security_group: Security group object. Required. - :type device_security_group: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: DeviceSecurityGroup or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_id: str, - device_security_group_name: str, - device_security_group: Union[_models.DeviceSecurityGroup, IO[bytes]], - **kwargs: Any - ) -> _models.DeviceSecurityGroup: - """Use this method to creates or updates the device security group on a specified IoT Hub - resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param device_security_group_name: The name of the device security group. Note that the name of - the device security group is case insensitive. Required. - :type device_security_group_name: str - :param device_security_group: Security group object. Is either a DeviceSecurityGroup type or a - IO[bytes] type. Required. - :type device_security_group: ~azure.mgmt.security.models.DeviceSecurityGroup or IO[bytes] - :return: DeviceSecurityGroup or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.DeviceSecurityGroup] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(device_security_group, (IOBase, bytes)): - _content = device_security_group - else: - _json = self._serialize.body(device_security_group, "DeviceSecurityGroup") - - _request = build_create_or_update_request( - resource_id=resource_id, - device_security_group_name=device_security_group_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("DeviceSecurityGroup", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_id: str, device_security_group_name: str, **kwargs: Any - ) -> None: - """User this method to deletes the device security group. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param device_security_group_name: The name of the device security group. Note that the name of - the device security group is case insensitive. Required. - :type device_security_group_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_id=resource_id, - device_security_group_name=device_security_group_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_discovered_security_solutions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_discovered_security_solutions_operations.py deleted file mode 100644 index b3c6ba075828..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_discovered_security_solutions_operations.py +++ /dev/null @@ -1,362 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/discoveredSecuritySolutions" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_home_region_request(asc_location: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/discoveredSecuritySolutions", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - asc_location: str, - discovered_security_solution_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/discoveredSecuritySolutions/{discoveredSecuritySolutionName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "discoveredSecuritySolutionName": _SERIALIZER.url( - "discovered_security_solution_name", discovered_security_solution_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class DiscoveredSecuritySolutionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`discovered_security_solutions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.DiscoveredSecuritySolution"]: - """Gets a list of discovered Security Solutions for the subscription. - - :return: An iterator like instance of either DiscoveredSecuritySolution or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.DiscoveredSecuritySolution] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.DiscoveredSecuritySolutionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("DiscoveredSecuritySolutionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_home_region(self, asc_location: str, **kwargs: Any) -> ItemPaged["_models.DiscoveredSecuritySolution"]: - """Gets a list of discovered Security Solutions for the subscription and location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either DiscoveredSecuritySolution or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.DiscoveredSecuritySolution] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.DiscoveredSecuritySolutionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_home_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("DiscoveredSecuritySolutionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_group_name: str, asc_location: str, discovered_security_solution_name: str, **kwargs: Any - ) -> _models.DiscoveredSecuritySolution: - """Gets a specific discovered Security Solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param discovered_security_solution_name: Name of a discovered security solution. Required. - :type discovered_security_solution_name: str - :return: DiscoveredSecuritySolution or the result of cls(response) - :rtype: ~azure.mgmt.security.models.DiscoveredSecuritySolution - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.DiscoveredSecuritySolution] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - discovered_security_solution_name=discovered_security_solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("DiscoveredSecuritySolution", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_external_security_solutions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_external_security_solutions_operations.py deleted file mode 100644 index bd6900007a4c..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_external_security_solutions_operations.py +++ /dev/null @@ -1,362 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/externalSecuritySolutions" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_home_region_request(asc_location: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/ExternalSecuritySolutions", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - asc_location: str, - external_security_solutions_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/ExternalSecuritySolutions/{externalSecuritySolutionsName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "externalSecuritySolutionsName": _SERIALIZER.url( - "external_security_solutions_name", external_security_solutions_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class ExternalSecuritySolutionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`external_security_solutions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.ExternalSecuritySolution"]: - """Gets a list of external security solutions for the subscription. - - :return: An iterator like instance of either ExternalSecuritySolution or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ExternalSecuritySolution] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.ExternalSecuritySolutionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ExternalSecuritySolutionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_home_region(self, asc_location: str, **kwargs: Any) -> ItemPaged["_models.ExternalSecuritySolution"]: - """Gets a list of external Security Solutions for the subscription and location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either ExternalSecuritySolution or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ExternalSecuritySolution] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.ExternalSecuritySolutionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_home_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ExternalSecuritySolutionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_group_name: str, asc_location: str, external_security_solutions_name: str, **kwargs: Any - ) -> _models.ExternalSecuritySolution: - """Gets a specific external Security Solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param external_security_solutions_name: Name of an external security solution. Required. - :type external_security_solutions_name: str - :return: ExternalSecuritySolution or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ExternalSecuritySolution - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.ExternalSecuritySolution] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - external_security_solutions_name=external_security_solutions_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ExternalSecuritySolution", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_issues_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_issues_operations.py deleted file mode 100644 index 1e340349ecb7..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_issues_operations.py +++ /dev/null @@ -1,334 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_create_request( - resource_group_name: str, - security_connector_name: str, - owner_name: str, - repo_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}/repos/{repoName}/issues", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "ownerName": _SERIALIZER.url("owner_name", owner_name, "str"), - "repoName": _SERIALIZER.url("repo_name", repo_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class GitHubIssuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`git_hub_issues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - def _create_initial( - self, - resource_group_name: str, - security_connector_name: str, - owner_name: str, - repo_name: str, - create_issue_request: Optional[Union[_models.IssueCreationRequest, IO[bytes]]] = None, - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if create_issue_request else None - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" if create_issue_request else None - _json = None - _content = None - if isinstance(create_issue_request, (IOBase, bytes)): - _content = create_issue_request - else: - if create_issue_request is not None: - _json = self._serialize.body(create_issue_request, "IssueCreationRequest") - else: - _json = None - - _request = build_create_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - owner_name=owner_name, - repo_name=repo_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create( - self, - resource_group_name: str, - security_connector_name: str, - owner_name: str, - repo_name: str, - create_issue_request: Optional[_models.IssueCreationRequest] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[None]: - """Creates a GitHub issue for the specified repository and assessment. - - Creates a GitHub issue for the specified repository and assessment. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param owner_name: The GitHub owner name. Required. - :type owner_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param create_issue_request: The request model containing details for creating the GitHub - issue. Default value is None. - :type create_issue_request: ~azure.mgmt.security.models.IssueCreationRequest - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create( - self, - resource_group_name: str, - security_connector_name: str, - owner_name: str, - repo_name: str, - create_issue_request: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[None]: - """Creates a GitHub issue for the specified repository and assessment. - - Creates a GitHub issue for the specified repository and assessment. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param owner_name: The GitHub owner name. Required. - :type owner_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param create_issue_request: The request model containing details for creating the GitHub - issue. Default value is None. - :type create_issue_request: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create( - self, - resource_group_name: str, - security_connector_name: str, - owner_name: str, - repo_name: str, - create_issue_request: Optional[Union[_models.IssueCreationRequest, IO[bytes]]] = None, - **kwargs: Any - ) -> LROPoller[None]: - """Creates a GitHub issue for the specified repository and assessment. - - Creates a GitHub issue for the specified repository and assessment. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param owner_name: The GitHub owner name. Required. - :type owner_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :param create_issue_request: The request model containing details for creating the GitHub - issue. Is either a IssueCreationRequest type or a IO[bytes] type. Default value is None. - :type create_issue_request: ~azure.mgmt.security.models.IssueCreationRequest or IO[bytes] - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if create_issue_request else None - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_initial( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - owner_name=owner_name, - repo_name=repo_name, - create_issue_request=create_issue_request, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_owners_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_owners_operations.py deleted file mode 100644 index 79fdf21b94a1..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_owners_operations.py +++ /dev/null @@ -1,370 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_available_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/listAvailableGitHubOwners", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, security_connector_name: str, owner_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "ownerName": _SERIALIZER.url("owner_name", owner_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class GitHubOwnersOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`git_hub_owners` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_available( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> _models.GitHubOwnerListResponse: - """Returns a list of all GitHub owners accessible by the user token consumed by the connector. - - Returns a list of all GitHub owners accessible by the user token consumed by the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: GitHubOwnerListResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitHubOwnerListResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitHubOwnerListResponse] = kwargs.pop("cls", None) - - _request = build_list_available_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitHubOwnerListResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> ItemPaged["_models.GitHubOwner"]: - """Returns a list of GitHub owners onboarded to the connector. - - Returns a list of GitHub owners onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: An iterator like instance of either GitHubOwner or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GitHubOwner] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitHubOwnerListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("GitHubOwnerListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_group_name: str, security_connector_name: str, owner_name: str, **kwargs: Any - ) -> _models.GitHubOwner: - """Returns a monitored GitHub owner. - - Returns a monitored GitHub owner. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param owner_name: The GitHub owner name. Required. - :type owner_name: str - :return: GitHubOwner or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitHubOwner - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitHubOwner] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - owner_name=owner_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitHubOwner", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_repos_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_repos_operations.py deleted file mode 100644 index 68e923addbe1..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_hub_repos_operations.py +++ /dev/null @@ -1,285 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, security_connector_name: str, owner_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}/repos", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "ownerName": _SERIALIZER.url("owner_name", owner_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - security_connector_name: str, - owner_name: str, - repo_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}/repos/{repoName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "ownerName": _SERIALIZER.url("owner_name", owner_name, "str"), - "repoName": _SERIALIZER.url("repo_name", repo_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class GitHubReposOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`git_hub_repos` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, owner_name: str, **kwargs: Any - ) -> ItemPaged["_models.GitHubRepository"]: - """Returns a list of GitHub repositories onboarded to the connector. - - Returns a list of GitHub repositories onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param owner_name: The GitHub owner name. Required. - :type owner_name: str - :return: An iterator like instance of either GitHubRepository or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GitHubRepository] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitHubRepositoryListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - owner_name=owner_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("GitHubRepositoryListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_group_name: str, security_connector_name: str, owner_name: str, repo_name: str, **kwargs: Any - ) -> _models.GitHubRepository: - """Returns a monitored GitHub repository. - - Returns a monitored GitHub repository. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param owner_name: The GitHub owner name. Required. - :type owner_name: str - :param repo_name: The repository name. Required. - :type repo_name: str - :return: GitHubRepository or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitHubRepository - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitHubRepository] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - owner_name=owner_name, - repo_name=repo_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitHubRepository", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_groups_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_groups_operations.py deleted file mode 100644 index eebca6592b89..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_groups_operations.py +++ /dev/null @@ -1,370 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_available_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/listAvailableGitLabGroups", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, security_connector_name: str, group_fq_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups/{groupFQName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "groupFQName": _SERIALIZER.url("group_fq_name", group_fq_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class GitLabGroupsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`git_lab_groups` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_available( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> _models.GitLabGroupListResponse: - """Returns a list of all GitLab groups accessible by the user token consumed by the connector. - - Returns a list of all GitLab groups accessible by the user token consumed by the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: GitLabGroupListResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitLabGroupListResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) - - _request = build_list_available_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitLabGroupListResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> ItemPaged["_models.GitLabGroup"]: - """Returns a list of GitLab groups onboarded to the connector. - - Returns a list of GitLab groups onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: An iterator like instance of either GitLabGroup or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GitLabGroup] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("GitLabGroupListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_group_name: str, security_connector_name: str, group_fq_name: str, **kwargs: Any - ) -> _models.GitLabGroup: - """Returns a monitored GitLab Group resource for a given fully-qualified name. - - Returns a monitored GitLab Group resource for a given fully-qualified name. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param group_fq_name: The GitLab group fully-qualified name. Required. - :type group_fq_name: str - :return: GitLabGroup or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitLabGroup - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitLabGroup] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - group_fq_name=group_fq_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitLabGroup", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_projects_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_projects_operations.py deleted file mode 100644 index 3f2da60fb33e..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_projects_operations.py +++ /dev/null @@ -1,294 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, security_connector_name: str, group_fq_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups/{groupFQName}/projects", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "groupFQName": _SERIALIZER.url("group_fq_name", group_fq_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - security_connector_name: str, - group_fq_name: str, - project_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups/{groupFQName}/projects/{projectName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "groupFQName": _SERIALIZER.url("group_fq_name", group_fq_name, "str"), - "projectName": _SERIALIZER.url("project_name", project_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class GitLabProjectsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`git_lab_projects` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, group_fq_name: str, **kwargs: Any - ) -> ItemPaged["_models.GitLabProject"]: - """Gets a list of GitLab projects that are directly owned by given group and onboarded to the - connector. - - Gets a list of GitLab projects that are directly owned by given group and onboarded to the - connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param group_fq_name: The GitLab group fully-qualified name. Required. - :type group_fq_name: str - :return: An iterator like instance of either GitLabProject or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GitLabProject] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitLabProjectListResponse] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - group_fq_name=group_fq_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("GitLabProjectListResponse", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, - resource_group_name: str, - security_connector_name: str, - group_fq_name: str, - project_name: str, - **kwargs: Any - ) -> _models.GitLabProject: - """Returns a monitored GitLab Project resource for a given fully-qualified group name and project - name. - - Returns a monitored GitLab Project resource for a given fully-qualified group name and project - name. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param group_fq_name: The GitLab group fully-qualified name. Required. - :type group_fq_name: str - :param project_name: The project name. Required. - :type project_name: str - :return: GitLabProject or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitLabProject - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitLabProject] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - group_fq_name=group_fq_name, - project_name=project_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitLabProject", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_subgroups_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_subgroups_operations.py deleted file mode 100644 index 0b27e752ebb3..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_git_lab_subgroups_operations.py +++ /dev/null @@ -1,158 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, security_connector_name: str, group_fq_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups/{groupFQName}/listSubgroups", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "groupFQName": _SERIALIZER.url("group_fq_name", group_fq_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class GitLabSubgroupsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`git_lab_subgroups` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, group_fq_name: str, **kwargs: Any - ) -> _models.GitLabGroupListResponse: - """Gets nested subgroups of given GitLab Group which are onboarded to the connector. - - Gets nested subgroups of given GitLab Group which are onboarded to the connector. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param group_fq_name: The GitLab group fully-qualified name. Required. - :type group_fq_name: str - :return: GitLabGroupListResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GitLabGroupListResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) - cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - group_fq_name=group_fq_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GitLabGroupListResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_assignments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_assignments_operations.py deleted file mode 100644 index 6b87879c96df..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_assignments_operations.py +++ /dev/null @@ -1,519 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(scope: str, assessment_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{scope}/providers/Microsoft.Security/assessments/{assessmentName}/governanceAssignments" - ) - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str", pattern=r"^[-\w\._\(\)]+$"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(scope: str, assessment_name: str, assignment_key: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{scope}/providers/Microsoft.Security/assessments/{assessmentName}/governanceAssignments/{assignmentKey}", - ) - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str", pattern=r"^[-\w\._\(\)]+$"), - "assignmentKey": _SERIALIZER.url("assignment_key", assignment_key, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request(scope: str, assessment_name: str, assignment_key: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{scope}/providers/Microsoft.Security/assessments/{assessmentName}/governanceAssignments/{assignmentKey}", - ) - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str", pattern=r"^[-\w\._\(\)]+$"), - "assignmentKey": _SERIALIZER.url("assignment_key", assignment_key, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(scope: str, assessment_name: str, assignment_key: str, **kwargs: Any) -> HttpRequest: - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - # Construct URL - _url = kwargs.pop( - "template_url", - "/{scope}/providers/Microsoft.Security/assessments/{assessmentName}/governanceAssignments/{assignmentKey}", - ) - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str", pattern=r"^[-\w\._\(\)]+$"), - "assignmentKey": _SERIALIZER.url("assignment_key", assignment_key, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - - -class GovernanceAssignmentsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`governance_assignments` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, assessment_name: str, **kwargs: Any) -> ItemPaged["_models.GovernanceAssignment"]: - """Get governance assignments on all of your resources inside a scope. - - :param scope: The scope of the Governance assignments. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param assessment_name: The Assessment Key - A unique key for the assessment type. Required. - :type assessment_name: str - :return: An iterator like instance of either GovernanceAssignment or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GovernanceAssignment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[_models.GovernanceAssignmentsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - assessment_name=assessment_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("GovernanceAssignmentsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, scope: str, assessment_name: str, assignment_key: str, **kwargs: Any) -> _models.GovernanceAssignment: - """Get a specific governanceAssignment for the requested scope by AssignmentKey. - - :param scope: The scope of the Governance assignments. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param assessment_name: The Assessment Key - A unique key for the assessment type. Required. - :type assessment_name: str - :param assignment_key: The governance assignment key - the assessment key of the required - governance assignment. Required. - :type assignment_key: str - :return: GovernanceAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[_models.GovernanceAssignment] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - assessment_name=assessment_name, - assignment_key=assignment_key, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GovernanceAssignment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - scope: str, - assessment_name: str, - assignment_key: str, - governance_assignment: _models.GovernanceAssignment, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.GovernanceAssignment: - """Creates or updates a governance assignment on the given subscription. - - :param scope: The scope of the Governance assignments. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param assessment_name: The Assessment Key - A unique key for the assessment type. Required. - :type assessment_name: str - :param assignment_key: The governance assignment key - the assessment key of the required - governance assignment. Required. - :type assignment_key: str - :param governance_assignment: Governance assignment over a subscription scope. Required. - :type governance_assignment: ~azure.mgmt.security.models.GovernanceAssignment - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: GovernanceAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - scope: str, - assessment_name: str, - assignment_key: str, - governance_assignment: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.GovernanceAssignment: - """Creates or updates a governance assignment on the given subscription. - - :param scope: The scope of the Governance assignments. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param assessment_name: The Assessment Key - A unique key for the assessment type. Required. - :type assessment_name: str - :param assignment_key: The governance assignment key - the assessment key of the required - governance assignment. Required. - :type assignment_key: str - :param governance_assignment: Governance assignment over a subscription scope. Required. - :type governance_assignment: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: GovernanceAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - scope: str, - assessment_name: str, - assignment_key: str, - governance_assignment: Union[_models.GovernanceAssignment, IO[bytes]], - **kwargs: Any - ) -> _models.GovernanceAssignment: - """Creates or updates a governance assignment on the given subscription. - - :param scope: The scope of the Governance assignments. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param assessment_name: The Assessment Key - A unique key for the assessment type. Required. - :type assessment_name: str - :param assignment_key: The governance assignment key - the assessment key of the required - governance assignment. Required. - :type assignment_key: str - :param governance_assignment: Governance assignment over a subscription scope. Is either a - GovernanceAssignment type or a IO[bytes] type. Required. - :type governance_assignment: ~azure.mgmt.security.models.GovernanceAssignment or IO[bytes] - :return: GovernanceAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.GovernanceAssignment] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(governance_assignment, (IOBase, bytes)): - _content = governance_assignment - else: - _json = self._serialize.body(governance_assignment, "GovernanceAssignment") - - _request = build_create_or_update_request( - scope=scope, - assessment_name=assessment_name, - assignment_key=assignment_key, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GovernanceAssignment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, scope: str, assessment_name: str, assignment_key: str, **kwargs: Any - ) -> None: - """Delete a GovernanceAssignment over a given scope. - - :param scope: The scope of the Governance assignments. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param assessment_name: The Assessment Key - A unique key for the assessment type. Required. - :type assessment_name: str - :param assignment_key: The governance assignment key - the assessment key of the required - governance assignment. Required. - :type assignment_key: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - scope=scope, - assessment_name=assessment_name, - assignment_key=assignment_key, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_rules_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_rules_operations.py deleted file mode 100644 index b5762a1ad442..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_governance_rules_operations.py +++ /dev/null @@ -1,887 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(scope: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/governanceRules") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(scope: str, rule_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/governanceRules/{ruleId}") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request(scope: str, rule_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/governanceRules/{ruleId}") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(scope: str, rule_id: str, **kwargs: Any) -> HttpRequest: - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/governanceRules/{ruleId}") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - - -def build_execute_request(scope: str, rule_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/governanceRules/{ruleId}/execute") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_operation_results_request(scope: str, rule_id: str, operation_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{scope}/providers/Microsoft.Security/governanceRules/{ruleId}/operationResults/{operationId}" - ) - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), - "operationId": _SERIALIZER.url("operation_id", operation_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class GovernanceRulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`governance_rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.GovernanceRule"]: - """Get a list of all relevant governance rules over a scope. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :return: An iterator like instance of either GovernanceRule or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GovernanceRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[_models.GovernanceRuleList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("GovernanceRuleList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, scope: str, rule_id: str, **kwargs: Any) -> _models.GovernanceRule: - """Get a specific governance rule for the requested scope by ruleId. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :return: GovernanceRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[_models.GovernanceRule] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - rule_id=rule_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GovernanceRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - scope: str, - rule_id: str, - governance_rule: _models.GovernanceRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.GovernanceRule: - """Creates or updates a governance rule over a given scope. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param governance_rule: Governance rule over a given scope. Required. - :type governance_rule: ~azure.mgmt.security.models.GovernanceRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: GovernanceRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - scope: str, - rule_id: str, - governance_rule: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.GovernanceRule: - """Creates or updates a governance rule over a given scope. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param governance_rule: Governance rule over a given scope. Required. - :type governance_rule: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: GovernanceRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, scope: str, rule_id: str, governance_rule: Union[_models.GovernanceRule, IO[bytes]], **kwargs: Any - ) -> _models.GovernanceRule: - """Creates or updates a governance rule over a given scope. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param governance_rule: Governance rule over a given scope. Is either a GovernanceRule type or - a IO[bytes] type. Required. - :type governance_rule: ~azure.mgmt.security.models.GovernanceRule or IO[bytes] - :return: GovernanceRule or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GovernanceRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.GovernanceRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(governance_rule, (IOBase, bytes)): - _content = governance_rule - else: - _json = self._serialize.body(governance_rule, "GovernanceRule") - - _request = build_create_or_update_request( - scope=scope, - rule_id=rule_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GovernanceRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _delete_initial(self, scope: str, rule_id: str, **kwargs: Any) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - scope=scope, - rule_id=rule_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["location"] = self._deserialize("str", response.headers.get("location")) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete(self, scope: str, rule_id: str, **kwargs: Any) -> LROPoller[None]: - """Delete a Governance rule over a given scope. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - scope=scope, - rule_id=rule_id, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - def _execute_initial( - self, - scope: str, - rule_id: str, - execute_governance_rule_params: Optional[Union[_models.ExecuteGovernanceRuleParams, IO[bytes]]] = None, - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if execute_governance_rule_params else None - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" if execute_governance_rule_params else None - _json = None - _content = None - if isinstance(execute_governance_rule_params, (IOBase, bytes)): - _content = execute_governance_rule_params - else: - if execute_governance_rule_params is not None: - _json = self._serialize.body(execute_governance_rule_params, "ExecuteGovernanceRuleParams") - else: - _json = None - - _request = build_execute_request( - scope=scope, - rule_id=rule_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - response_headers["location"] = self._deserialize("str", response.headers.get("location")) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_execute( - self, - scope: str, - rule_id: str, - execute_governance_rule_params: Optional[_models.ExecuteGovernanceRuleParams] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[None]: - """Execute a governance rule. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param execute_governance_rule_params: Execute governance rule over a given scope. Default - value is None. - :type execute_governance_rule_params: ~azure.mgmt.security.models.ExecuteGovernanceRuleParams - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_execute( - self, - scope: str, - rule_id: str, - execute_governance_rule_params: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[None]: - """Execute a governance rule. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param execute_governance_rule_params: Execute governance rule over a given scope. Default - value is None. - :type execute_governance_rule_params: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_execute( - self, - scope: str, - rule_id: str, - execute_governance_rule_params: Optional[Union[_models.ExecuteGovernanceRuleParams, IO[bytes]]] = None, - **kwargs: Any - ) -> LROPoller[None]: - """Execute a governance rule. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param execute_governance_rule_params: Execute governance rule over a given scope. Is either a - ExecuteGovernanceRuleParams type or a IO[bytes] type. Default value is None. - :type execute_governance_rule_params: ~azure.mgmt.security.models.ExecuteGovernanceRuleParams - or IO[bytes] - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if execute_governance_rule_params else None - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._execute_initial( - scope=scope, - rule_id=rule_id, - execute_governance_rule_params=execute_governance_rule_params, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def operation_results( - self, scope: str, rule_id: str, operation_id: str, **kwargs: Any - ) -> Optional[_models.OperationResultAutoGenerated]: - """Get governance rules long run operation result for the requested scope by ruleId and - operationId. - - :param scope: The scope of the Governance rules. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). - Required. - :type rule_id: str - :param operation_id: The governance rule long running operation unique key. Required. - :type operation_id: str - :return: OperationResultAutoGenerated or None or the result of cls(response) - :rtype: ~azure.mgmt.security.models.OperationResultAutoGenerated or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - cls: ClsType[Optional[_models.OperationResultAutoGenerated]] = kwargs.pop("cls", None) - - _request = build_operation_results_request( - scope=scope, - rule_id=rule_id, - operation_id=operation_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated4, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - response_headers = {} - if response.status_code == 200: - deserialized = self._deserialize("OperationResultAutoGenerated", pipeline_response.http_response) - - if response.status_code == 202: - response_headers["location"] = self._deserialize("str", response.headers.get("location")) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_health_reports_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_health_reports_operations.py deleted file mode 100644 index 122490cb13e2..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_health_reports_operations.py +++ /dev/null @@ -1,240 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(scope: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/healthReports") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True, min_length=1), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(resource_id: str, health_report_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/healthReports/{healthReportName}") - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "healthReportName": _SERIALIZER.url( - "health_report_name", - health_report_name, - "str", - pattern=r"[{]?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class HealthReportsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`health_reports` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.HealthReport"]: - """Get a list of all health reports inside a scope. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - - :param scope: The scope at which the operation is performed. Required. - :type scope: str - :return: An iterator like instance of either HealthReport or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.HealthReport] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01-preview")) - cls: ClsType[_models.HealthReportsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("HealthReportsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, resource_id: str, health_report_name: str, **kwargs: Any) -> _models.HealthReport: - """Get health report of resource. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param health_report_name: The health report Key - Unique key for the health report type. - Required. - :type health_report_name: str - :return: HealthReport or the result of cls(response) - :rtype: ~azure.mgmt.security.models.HealthReport - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01-preview")) - cls: ClsType[_models.HealthReport] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - health_report_name=health_report_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("HealthReport", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_information_protection_policies_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_information_protection_policies_operations.py deleted file mode 100644 index 0dc08f1a479f..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_information_protection_policies_operations.py +++ /dev/null @@ -1,429 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request( - scope: str, information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{scope}/providers/Microsoft.Security/informationProtectionPolicies/{informationProtectionPolicyName}", - ) - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), - "informationProtectionPolicyName": _SERIALIZER.url( - "information_protection_policy_name", information_protection_policy_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - scope: str, information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{scope}/providers/Microsoft.Security/informationProtectionPolicies/{informationProtectionPolicyName}", - ) - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), - "informationProtectionPolicyName": _SERIALIZER.url( - "information_protection_policy_name", information_protection_policy_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request(scope: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/informationProtectionPolicies") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class InformationProtectionPoliciesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`information_protection_policies` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get( - self, - scope: str, - information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], - **kwargs: Any - ) -> _models.InformationProtectionPolicy: - """Details of the information protection policy. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param information_protection_policy_name: Name of the information protection policy. Known - values are: "effective" and "custom". Required. - :type information_protection_policy_name: str or - ~azure.mgmt.security.models.InformationProtectionPolicyName - :return: InformationProtectionPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.InformationProtectionPolicy] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - information_protection_policy_name=information_protection_policy_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("InformationProtectionPolicy", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - scope: str, - information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], - information_protection_policy: _models.InformationProtectionPolicy, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.InformationProtectionPolicy: - """Details of the information protection policy. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param information_protection_policy_name: Name of the information protection policy. Known - values are: "effective" and "custom". Required. - :type information_protection_policy_name: str or - ~azure.mgmt.security.models.InformationProtectionPolicyName - :param information_protection_policy: Information protection policy. Required. - :type information_protection_policy: ~azure.mgmt.security.models.InformationProtectionPolicy - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: InformationProtectionPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - scope: str, - information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], - information_protection_policy: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.InformationProtectionPolicy: - """Details of the information protection policy. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param information_protection_policy_name: Name of the information protection policy. Known - values are: "effective" and "custom". Required. - :type information_protection_policy_name: str or - ~azure.mgmt.security.models.InformationProtectionPolicyName - :param information_protection_policy: Information protection policy. Required. - :type information_protection_policy: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: InformationProtectionPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - scope: str, - information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], - information_protection_policy: Union[_models.InformationProtectionPolicy, IO[bytes]], - **kwargs: Any - ) -> _models.InformationProtectionPolicy: - """Details of the information protection policy. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param information_protection_policy_name: Name of the information protection policy. Known - values are: "effective" and "custom". Required. - :type information_protection_policy_name: str or - ~azure.mgmt.security.models.InformationProtectionPolicyName - :param information_protection_policy: Information protection policy. Is either a - InformationProtectionPolicy type or a IO[bytes] type. Required. - :type information_protection_policy: ~azure.mgmt.security.models.InformationProtectionPolicy or - IO[bytes] - :return: InformationProtectionPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.InformationProtectionPolicy] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(information_protection_policy, (IOBase, bytes)): - _content = information_protection_policy - else: - _json = self._serialize.body(information_protection_policy, "InformationProtectionPolicy") - - _request = build_create_or_update_request( - scope=scope, - information_protection_policy_name=information_protection_policy_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("InformationProtectionPolicy", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.InformationProtectionPolicy"]: - """Information protection policies of a specific management group. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :return: An iterator like instance of either InformationProtectionPolicy or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.InformationProtectionPolicy] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.InformationProtectionPolicyList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("InformationProtectionPolicyList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_analytics_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_analytics_operations.py deleted file mode 100644 index 200a00d44d09..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_analytics_operations.py +++ /dev/null @@ -1,246 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, solution_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(resource_group_name: str, solution_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class IotSecuritySolutionAnalyticsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`iot_security_solution_analytics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, solution_name: str, **kwargs: Any - ) -> _models.IoTSecuritySolutionAnalyticsModelList: - """Use this method to get IoT security Analytics metrics in an array. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :return: IoTSecuritySolutionAnalyticsModelList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModelList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecuritySolutionAnalyticsModelList] = kwargs.pop("cls", None) - - _request = build_list_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecuritySolutionAnalyticsModelList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, solution_name: str, **kwargs: Any - ) -> _models.IoTSecuritySolutionAnalyticsModel: - """Use this method to get IoT Security Analytics metrics. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :return: IoTSecuritySolutionAnalyticsModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecuritySolutionAnalyticsModel] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecuritySolutionAnalyticsModel", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_operations.py deleted file mode 100644 index 145be5bc664a..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solution_operations.py +++ /dev/null @@ -1,812 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscription_request( - subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/iotSecuritySolutions" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if filter is not None: - _params["$filter"] = _SERIALIZER.query("filter", filter, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request( - resource_group_name: str, subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if filter is not None: - _params["$filter"] = _SERIALIZER.query("filter", filter, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(resource_group_name: str, solution_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, solution_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, solution_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, solution_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class IotSecuritySolutionOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`iot_security_solution` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription( - self, filter: Optional[str] = None, **kwargs: Any - ) -> ItemPaged["_models.IoTSecuritySolutionModel"]: - """Use this method to get the list of IoT Security solutions by subscription. - - :param filter: Filter the IoT Security solution with OData syntax. Supports filtering by - iotHubs. Default value is None. - :type filter: str - :return: An iterator like instance of either IoTSecuritySolutionModel or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.IoTSecuritySolutionModel] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecuritySolutionsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("IoTSecuritySolutionsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, filter: Optional[str] = None, **kwargs: Any - ) -> ItemPaged["_models.IoTSecuritySolutionModel"]: - """Use this method to get the list IoT Security solutions organized by resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param filter: Filter the IoT Security solution with OData syntax. Supports filtering by - iotHubs. Default value is None. - :type filter: str - :return: An iterator like instance of either IoTSecuritySolutionModel or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.IoTSecuritySolutionModel] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecuritySolutionsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("IoTSecuritySolutionsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, resource_group_name: str, solution_name: str, **kwargs: Any) -> _models.IoTSecuritySolutionModel: - """User this method to get details of a specific IoT Security solution based on solution name. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecuritySolutionModel] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecuritySolutionModel", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - resource_group_name: str, - solution_name: str, - iot_security_solution_data: _models.IoTSecuritySolutionModel, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """Use this method to create or update yours IoT Security solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param iot_security_solution_data: The security solution data. Required. - :type iot_security_solution_data: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - solution_name: str, - iot_security_solution_data: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """Use this method to create or update yours IoT Security solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param iot_security_solution_data: The security solution data. Required. - :type iot_security_solution_data: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - solution_name: str, - iot_security_solution_data: Union[_models.IoTSecuritySolutionModel, IO[bytes]], - **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """Use this method to create or update yours IoT Security solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param iot_security_solution_data: The security solution data. Is either a - IoTSecuritySolutionModel type or a IO[bytes] type. Required. - :type iot_security_solution_data: ~azure.mgmt.security.models.IoTSecuritySolutionModel or - IO[bytes] - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.IoTSecuritySolutionModel] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(iot_security_solution_data, (IOBase, bytes)): - _content = iot_security_solution_data - else: - _json = self._serialize.body(iot_security_solution_data, "IoTSecuritySolutionModel") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecuritySolutionModel", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - resource_group_name: str, - solution_name: str, - update_iot_security_solution_data: _models.UpdateIotSecuritySolutionData, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """Use this method to update existing IoT Security solution tags or user defined resources. To - update other fields use the CreateOrUpdate method. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param update_iot_security_solution_data: The security solution data. Required. - :type update_iot_security_solution_data: - ~azure.mgmt.security.models.UpdateIotSecuritySolutionData - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - resource_group_name: str, - solution_name: str, - update_iot_security_solution_data: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """Use this method to update existing IoT Security solution tags or user defined resources. To - update other fields use the CreateOrUpdate method. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param update_iot_security_solution_data: The security solution data. Required. - :type update_iot_security_solution_data: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - resource_group_name: str, - solution_name: str, - update_iot_security_solution_data: Union[_models.UpdateIotSecuritySolutionData, IO[bytes]], - **kwargs: Any - ) -> _models.IoTSecuritySolutionModel: - """Use this method to update existing IoT Security solution tags or user defined resources. To - update other fields use the CreateOrUpdate method. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param update_iot_security_solution_data: The security solution data. Is either a - UpdateIotSecuritySolutionData type or a IO[bytes] type. Required. - :type update_iot_security_solution_data: - ~azure.mgmt.security.models.UpdateIotSecuritySolutionData or IO[bytes] - :return: IoTSecuritySolutionModel or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.IoTSecuritySolutionModel] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(update_iot_security_solution_data, (IOBase, bytes)): - _content = update_iot_security_solution_data - else: - _json = self._serialize.body(update_iot_security_solution_data, "UpdateIotSecuritySolutionData") - - _request = build_update_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecuritySolutionModel", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, solution_name: str, **kwargs: Any - ) -> None: - """Use this method to delete yours IoT Security solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py deleted file mode 100644 index 52beeb8af399..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_aggregated_alert_operations.py +++ /dev/null @@ -1,371 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, solution_name: str, subscription_id: str, *, top: Optional[int] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, solution_name: str, aggregated_alert_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts/{aggregatedAlertName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), - "aggregatedAlertName": _SERIALIZER.url("aggregated_alert_name", aggregated_alert_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_dismiss_request( - resource_group_name: str, solution_name: str, aggregated_alert_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts/{aggregatedAlertName}/dismiss", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), - "aggregatedAlertName": _SERIALIZER.url("aggregated_alert_name", aggregated_alert_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class IotSecuritySolutionsAnalyticsAggregatedAlertOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`iot_security_solutions_analytics_aggregated_alert` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, solution_name: str, top: Optional[int] = None, **kwargs: Any - ) -> ItemPaged["_models.IoTSecurityAggregatedAlert"]: - """Use this method to get the aggregated alert list of yours IoT Security solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param top: Number of results to retrieve. Default value is None. - :type top: int - :return: An iterator like instance of either IoTSecurityAggregatedAlert or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.IoTSecurityAggregatedAlert] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecurityAggregatedAlertList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("IoTSecurityAggregatedAlertList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_group_name: str, solution_name: str, aggregated_alert_name: str, **kwargs: Any - ) -> _models.IoTSecurityAggregatedAlert: - """Use this method to get a single the aggregated alert of yours IoT Security solution. This - aggregation is performed by alert name. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param aggregated_alert_name: Identifier of the aggregated alert. Required. - :type aggregated_alert_name: str - :return: IoTSecurityAggregatedAlert or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecurityAggregatedAlert - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecurityAggregatedAlert] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - aggregated_alert_name=aggregated_alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecurityAggregatedAlert", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def dismiss( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, solution_name: str, aggregated_alert_name: str, **kwargs: Any - ) -> None: - """Use this method to dismiss an aggregated IoT Security Solution Alert. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param aggregated_alert_name: Identifier of the aggregated alert. Required. - :type aggregated_alert_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_dismiss_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - aggregated_alert_name=aggregated_alert_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_recommendation_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_recommendation_operations.py deleted file mode 100644 index 5227f779877e..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_iot_security_solutions_analytics_recommendation_operations.py +++ /dev/null @@ -1,284 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request( - resource_group_name: str, - solution_name: str, - aggregated_recommendation_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedRecommendations/{aggregatedRecommendationName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), - "aggregatedRecommendationName": _SERIALIZER.url( - "aggregated_recommendation_name", aggregated_recommendation_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request( - resource_group_name: str, solution_name: str, subscription_id: str, *, top: Optional[int] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedRecommendations", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class IotSecuritySolutionsAnalyticsRecommendationOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`iot_security_solutions_analytics_recommendation` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get( - self, resource_group_name: str, solution_name: str, aggregated_recommendation_name: str, **kwargs: Any - ) -> _models.IoTSecurityAggregatedRecommendation: - """Use this method to get the aggregated security analytics recommendation of yours IoT Security - solution. This aggregation is performed by recommendation name. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param aggregated_recommendation_name: Name of the recommendation aggregated for this query. - Required. - :type aggregated_recommendation_name: str - :return: IoTSecurityAggregatedRecommendation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.IoTSecurityAggregatedRecommendation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecurityAggregatedRecommendation] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - aggregated_recommendation_name=aggregated_recommendation_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IoTSecurityAggregatedRecommendation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, solution_name: str, top: Optional[int] = None, **kwargs: Any - ) -> ItemPaged["_models.IoTSecurityAggregatedRecommendation"]: - """Use this method to get the list of aggregated security analytics recommendations of yours IoT - Security solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param solution_name: The name of the IoT Security solution. Required. - :type solution_name: str - :param top: Number of results to retrieve. Default value is None. - :type top: int - :return: An iterator like instance of either IoTSecurityAggregatedRecommendation or the result - of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.IoTSecurityAggregatedRecommendation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) - cls: ClsType[_models.IoTSecurityAggregatedRecommendationList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - solution_name=solution_name, - subscription_id=self._config.subscription_id, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("IoTSecurityAggregatedRecommendationList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated14, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_jit_network_access_policies_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_jit_network_access_policies_operations.py deleted file mode 100644 index 317812068d09..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_jit_network_access_policies_operations.py +++ /dev/null @@ -1,1090 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression,too-many-lines -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Literal, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/jitNetworkAccessPolicies" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_region_request(asc_location: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/jitNetworkAccessPolicies", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_and_region_request( # pylint: disable=name-too-long - resource_group_name: str, asc_location: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "jitNetworkAccessPolicyName": _SERIALIZER.url( - "jit_network_access_policy_name", jit_network_access_policy_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "jitNetworkAccessPolicyName": _SERIALIZER.url( - "jit_network_access_policy_name", jit_network_access_policy_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "jitNetworkAccessPolicyName": _SERIALIZER.url( - "jit_network_access_policy_name", jit_network_access_policy_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_initiate_request( - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - jit_network_access_policy_initiate_type: Literal["initiate"] = kwargs.pop( - "jit_network_access_policy_initiate_type", "initiate" - ) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}/{jitNetworkAccessPolicyInitiateType}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "jitNetworkAccessPolicyName": _SERIALIZER.url( - "jit_network_access_policy_name", jit_network_access_policy_name, "str" - ), - "jitNetworkAccessPolicyInitiateType": _SERIALIZER.url( - "jit_network_access_policy_initiate_type", jit_network_access_policy_initiate_type, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class JitNetworkAccessPoliciesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`jit_network_access_policies` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.JitNetworkAccessPolicy"]: - """Policies for protecting resources using Just-in-Time access control. - - :return: An iterator like instance of either JitNetworkAccessPolicy or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.JitNetworkAccessPoliciesList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("JitNetworkAccessPoliciesList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_region(self, asc_location: str, **kwargs: Any) -> ItemPaged["_models.JitNetworkAccessPolicy"]: - """Policies for protecting resources using Just-in-Time access control for the subscription, - location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either JitNetworkAccessPolicy or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.JitNetworkAccessPoliciesList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("JitNetworkAccessPoliciesList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, **kwargs: Any - ) -> ItemPaged["_models.JitNetworkAccessPolicy"]: - """Policies for protecting resources using Just-in-Time access control for the subscription, - location. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either JitNetworkAccessPolicy or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.JitNetworkAccessPoliciesList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("JitNetworkAccessPoliciesList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group_and_region( - self, resource_group_name: str, asc_location: str, **kwargs: Any - ) -> ItemPaged["_models.JitNetworkAccessPolicy"]: - """Policies for protecting resources using Just-in-Time access control for the subscription, - location. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either JitNetworkAccessPolicy or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.JitNetworkAccessPoliciesList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_and_region_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("JitNetworkAccessPoliciesList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_group_name: str, asc_location: str, jit_network_access_policy_name: str, **kwargs: Any - ) -> _models.JitNetworkAccessPolicy: - """Policies for protecting resources using Just-in-Time access control for the subscription, - location. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :return: JitNetworkAccessPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.JitNetworkAccessPolicy] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - jit_network_access_policy_name=jit_network_access_policy_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("JitNetworkAccessPolicy", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - body: _models.JitNetworkAccessPolicy, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.JitNetworkAccessPolicy: - """Create a policy for protecting resources using Just-in-Time access control. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :param body: Required. - :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicy - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: JitNetworkAccessPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.JitNetworkAccessPolicy: - """Create a policy for protecting resources using Just-in-Time access control. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :param body: Required. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: JitNetworkAccessPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - body: Union[_models.JitNetworkAccessPolicy, IO[bytes]], - **kwargs: Any - ) -> _models.JitNetworkAccessPolicy: - """Create a policy for protecting resources using Just-in-Time access control. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :param body: Is either a JitNetworkAccessPolicy type or a IO[bytes] type. Required. - :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicy or IO[bytes] - :return: JitNetworkAccessPolicy or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.JitNetworkAccessPolicy] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - _json = self._serialize.body(body, "JitNetworkAccessPolicy") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - jit_network_access_policy_name=jit_network_access_policy_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("JitNetworkAccessPolicy", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, asc_location: str, jit_network_access_policy_name: str, **kwargs: Any - ) -> None: - """Delete a Just-in-Time access control policy. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - jit_network_access_policy_name=jit_network_access_policy_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - def initiate( - self, - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - body: _models.JitNetworkAccessPolicyInitiateRequest, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.JitNetworkAccessRequest: - """Initiate a JIT access from a specific Just-in-Time policy configuration. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :param body: Required. - :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateRequest - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: JitNetworkAccessRequest or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def initiate( - self, - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.JitNetworkAccessRequest: - """Initiate a JIT access from a specific Just-in-Time policy configuration. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :param body: Required. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: JitNetworkAccessRequest or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def initiate( - self, - resource_group_name: str, - asc_location: str, - jit_network_access_policy_name: str, - body: Union[_models.JitNetworkAccessPolicyInitiateRequest, IO[bytes]], - **kwargs: Any - ) -> _models.JitNetworkAccessRequest: - """Initiate a JIT access from a specific Just-in-Time policy configuration. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. - Required. - :type jit_network_access_policy_name: str - :param body: Is either a JitNetworkAccessPolicyInitiateRequest type or a IO[bytes] type. - Required. - :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateRequest or IO[bytes] - :return: JitNetworkAccessRequest or the result of cls(response) - :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - jit_network_access_policy_initiate_type: Literal["initiate"] = kwargs.pop( - "jit_network_access_policy_initiate_type", "initiate" - ) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.JitNetworkAccessRequest] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - _json = self._serialize.body(body, "JitNetworkAccessPolicyInitiateRequest") - - _request = build_initiate_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - jit_network_access_policy_name=jit_network_access_policy_name, - subscription_id=self._config.subscription_id, - jit_network_access_policy_initiate_type=jit_network_access_policy_initiate_type, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("JitNetworkAccessRequest", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_locations_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_locations_operations.py deleted file mode 100644 index 7d057ab03e0c..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_locations_operations.py +++ /dev/null @@ -1,228 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(asc_location: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class LocationsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`locations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.AscLocation"]: - """The location of the responsible ASC of the specific subscription (home region). For each - subscription there is only one responsible location. The location in the response should be - used to read or write other resources in ASC according to their ID. - - :return: An iterator like instance of either AscLocation or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AscLocation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.AscLocationList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("AscLocationList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, asc_location: str, **kwargs: Any) -> _models.AscLocation: - """Details of a specific location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: AscLocation or the result of cls(response) - :rtype: ~azure.mgmt.security.models.AscLocation - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.AscLocation] = kwargs.pop("cls", None) - - _request = build_get_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AscLocation", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_mde_onboardings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_mde_onboardings_operations.py deleted file mode 100644 index 6a11903867b6..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_mde_onboardings_operations.py +++ /dev/null @@ -1,213 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/mdeOnboardings") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/mdeOnboardings/default" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class MdeOnboardingsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`mde_onboardings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> _models.MdeOnboardingDataList: - """The configuration or data needed to onboard the machine to MDE. - - :return: MdeOnboardingDataList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.MdeOnboardingDataList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-10-01-preview")) - cls: ClsType[_models.MdeOnboardingDataList] = kwargs.pop("cls", None) - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated3, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MdeOnboardingDataList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get(self, **kwargs: Any) -> _models.MdeOnboardingData: - """The default configuration or data needed to onboard the machine to MDE. - - :return: MdeOnboardingData or the result of cls(response) - :rtype: ~azure.mgmt.security.models.MdeOnboardingData - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-10-01-preview")) - cls: ClsType[_models.MdeOnboardingData] = kwargs.pop("cls", None) - - _request = build_get_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated3, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MdeOnboardingData", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_results_operations.py deleted file mode 100644 index 9b186daa16f0..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_results_operations.py +++ /dev/null @@ -1,148 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request(location: str, operation_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{location}/operationResults/{operationId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "location": _SERIALIZER.url("location", location, "str", min_length=1), - "operationId": _SERIALIZER.url("operation_id", operation_id, "str", min_length=1), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class OperationResultsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`operation_results` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get( # pylint: disable=inconsistent-return-statements - self, location: str, operation_id: str, **kwargs: Any - ) -> None: - """Returns operation results for long running operations. - - :param location: The name of the Azure region. Required. - :type location: str - :param operation_id: The ID of an ongoing async operation. Required. - :type operation_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_get_request( - location=location, - operation_id=operation_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - if cls: - return cls(pipeline_response, None, response_headers) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_statuses_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_statuses_operations.py deleted file mode 100644 index 558f806ba6a6..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operation_statuses_operations.py +++ /dev/null @@ -1,145 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request(location: str, operation_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{location}/operationStatuses/{operationId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "location": _SERIALIZER.url("location", location, "str", min_length=1), - "operationId": _SERIALIZER.url("operation_id", operation_id, "str", min_length=1), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class OperationStatusesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`operation_statuses` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get(self, location: str, operation_id: str, **kwargs: Any) -> _models.OperationStatusResultAutoGenerated: - """Get the status of a long running azure asynchronous operation. - - :param location: The name of the Azure region. Required. - :type location: str - :param operation_id: The ID of an ongoing async operation. Required. - :type operation_id: str - :return: OperationStatusResultAutoGenerated or the result of cls(response) - :rtype: ~azure.mgmt.security.models.OperationStatusResultAutoGenerated - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) - cls: ClsType[_models.OperationStatusResultAutoGenerated] = kwargs.pop("cls", None) - - _request = build_get_request( - location=location, - operation_id=operation_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("OperationStatusResultAutoGenerated", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operations.py index ae647923ac13..c3792b611b50 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operations.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_operations.py @@ -1,12 +1,15 @@ +# pylint: disable=line-too-long,useless-suppression,too-many-lines # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar +from io import IOBase +import json +from typing import Any, Callable, IO, Iterator, Literal, Optional, TypeVar, Union, cast, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -15,19 +18,25 @@ ResourceExistsError, ResourceNotFoundError, ResourceNotModifiedError, + StreamClosedError, + StreamConsumedError, map_error, ) from azure.core.paging import ItemPaged from azure.core.pipeline import PipelineResponse +from azure.core.polling import LROPoller, NoPolling, PollingMethod from azure.core.rest import HttpRequest, HttpResponse from azure.core.tracing.decorator import distributed_trace from azure.core.utils import case_insensitive_dict from azure.mgmt.core.exceptions import ARMErrorFormat +from azure.mgmt.core.polling.arm_polling import ARMPolling from .. import models as _models -from .._configuration import SecurityCenterConfiguration +from .._configuration import SecurityManagementClientConfiguration +from .._utils.model_base import SdkJSONEncoder, _deserialize, _failsafe_deserialize from .._utils.serialization import Deserializer, Serializer +JSON = MutableMapping[str, Any] T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] List = list @@ -36,57 +45,35471 @@ _SERIALIZER.client_side_validation = False -def build_list_request(**kwargs: Any) -> HttpRequest: +def build_alerts_get_subscription_level_request( # pylint: disable=name-too-long + asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_alerts_list_subscription_level_by_region_request( # pylint: disable=name-too-long + asc_location: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_alerts_update_subscription_level_state_to_dismiss_request( # pylint: disable=name-too-long + asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/dismiss" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="POST", url=_url, params=_params, **kwargs) + + +def build_alerts_update_subscription_level_state_to_resolve_request( # pylint: disable=name-too-long + asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/resolve" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="POST", url=_url, params=_params, **kwargs) + + +def build_alerts_update_subscription_level_state_to_activate_request( # pylint: disable=name-too-long + asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/activate" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="POST", url=_url, params=_params, **kwargs) + + +def build_alerts_update_subscription_level_state_to_in_progress_request( # pylint: disable=name-too-long + asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/inProgress" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="POST", url=_url, params=_params, **kwargs) + + +def build_alerts_get_resource_group_level_request( # pylint: disable=name-too-long + resource_group_name: str, asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_alerts_list_resource_group_level_by_region_request( # pylint: disable=name-too-long + resource_group_name: str, asc_location: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_alerts_update_resource_group_level_state_to_resolve_request( # pylint: disable=name-too-long + resource_group_name: str, asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/resolve" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="POST", url=_url, params=_params, **kwargs) + + +def build_alerts_update_resource_group_level_state_to_dismiss_request( # pylint: disable=name-too-long + resource_group_name: str, asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/dismiss" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="POST", url=_url, params=_params, **kwargs) + + +def build_alerts_update_resource_group_level_state_to_activate_request( # pylint: disable=name-too-long + resource_group_name: str, asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/activate" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="POST", url=_url, params=_params, **kwargs) + + +def build_alerts_update_resource_group_level_state_to_in_progress_request( # pylint: disable=name-too-long + resource_group_name: str, asc_location: str, alert_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/inProgress" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "alertName": _SERIALIZER.url("alert_name", alert_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="POST", url=_url, params=_params, **kwargs) + + +def build_alerts_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alerts" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_alerts_list_by_resource_group_request( # pylint: disable=name-too-long + resource_group_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/alerts" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_alerts_simulate_request(asc_location: str, subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + # Construct URL + _url = ( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/default/simulate" + ) + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_alerts_suppression_rules_get_request( # pylint: disable=name-too-long + alerts_suppression_rule_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alertsSuppressionRules/{alertsSuppressionRuleName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "alertsSuppressionRuleName": _SERIALIZER.url( + "alerts_suppression_rule_name", alerts_suppression_rule_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_alerts_suppression_rules_update_request( # pylint: disable=name-too-long + alerts_suppression_rule_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alertsSuppressionRules/{alertsSuppressionRuleName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "alertsSuppressionRuleName": _SERIALIZER.url( + "alerts_suppression_rule_name", alerts_suppression_rule_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_alerts_suppression_rules_delete_request( # pylint: disable=name-too-long + alerts_suppression_rule_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alertsSuppressionRules/{alertsSuppressionRuleName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "alertsSuppressionRuleName": _SERIALIZER.url( + "alerts_suppression_rule_name", alerts_suppression_rule_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_alerts_suppression_rules_list_request( # pylint: disable=name-too-long + subscription_id: str, *, alert_type: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alertsSuppressionRules" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if alert_type is not None: + _params["AlertType"] = _SERIALIZER.query("alert_type", alert_type, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_applications_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) accept = _headers.pop("Accept", "application/json") - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.Security/operations") + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_connector_application_get_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, application_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/providers/Microsoft.Security/applications/{applicationId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "applicationId": _SERIALIZER.url("application_id", application_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_connector_application_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, application_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/providers/Microsoft.Security/applications/{applicationId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "applicationId": _SERIALIZER.url("application_id", application_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_connector_application_delete_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, application_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/providers/Microsoft.Security/applications/{applicationId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "applicationId": _SERIALIZER.url("application_id", application_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_assessments_metadata_get_in_subscription_request( # pylint: disable=name-too-long + assessment_metadata_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "assessmentMetadataName": _SERIALIZER.url("assessment_metadata_name", assessment_metadata_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_assessments_metadata_create_in_subscription_request( # pylint: disable=name-too-long + assessment_metadata_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "assessmentMetadataName": _SERIALIZER.url("assessment_metadata_name", assessment_metadata_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_assessments_metadata_delete_in_subscription_request( # pylint: disable=name-too-long + assessment_metadata_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "assessmentMetadataName": _SERIALIZER.url("assessment_metadata_name", assessment_metadata_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_assessments_metadata_list_by_subscription_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_assessments_metadata_get_request(assessment_metadata_name: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}" + path_format_arguments = { + "assessmentMetadataName": _SERIALIZER.url("assessment_metadata_name", assessment_metadata_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_assessments_metadata_list_request(**kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/providers/Microsoft.Security/assessmentMetadata" + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_automations_get_request( + resource_group_name: str, automation_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "automationName": _SERIALIZER.url("automation_name", automation_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_automations_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, automation_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "automationName": _SERIALIZER.url("automation_name", automation_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_automations_update_request( + resource_group_name: str, automation_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "automationName": _SERIALIZER.url("automation_name", automation_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_automations_delete_request( + resource_group_name: str, automation_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "automationName": _SERIALIZER.url("automation_name", automation_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_automations_list_by_resource_group_request( # pylint: disable=name-too-long + resource_group_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_automations_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/automations" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_automations_validate_request( + resource_group_name: str, automation_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}/validate" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "automationName": _SERIALIZER.url("automation_name", automation_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_contacts_get_request( + security_contact_name: Union[str, _models.SecurityContactName], subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "securityContactName": _SERIALIZER.url("security_contact_name", security_contact_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_contacts_create_request( + security_contact_name: Union[str, _models.SecurityContactName], subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "securityContactName": _SERIALIZER.url("security_contact_name", security_contact_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_contacts_delete_request( + security_contact_name: Union[str, _models.SecurityContactName], subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "securityContactName": _SERIALIZER.url("security_contact_name", security_contact_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_security_contacts_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_compliance_results_get_request(resource_id: str, compliance_result_name: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/complianceResults/{complianceResultName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "complianceResultName": _SERIALIZER.url("compliance_result_name", compliance_result_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_compliance_results_list_request(scope: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/complianceResults" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_governance_assignments_get_request( + scope: str, assessment_name: str, assignment_key: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/assessments/{assessmentName}/governanceAssignments/{assignmentKey}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), + "assignmentKey": _SERIALIZER.url("assignment_key", assignment_key, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_governance_assignments_create_or_update_request( # pylint: disable=name-too-long + scope: str, assessment_name: str, assignment_key: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/assessments/{assessmentName}/governanceAssignments/{assignmentKey}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), + "assignmentKey": _SERIALIZER.url("assignment_key", assignment_key, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_governance_assignments_delete_request( # pylint: disable=name-too-long + scope: str, assessment_name: str, assignment_key: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/assessments/{assessmentName}/governanceAssignments/{assignmentKey}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), + "assignmentKey": _SERIALIZER.url("assignment_key", assignment_key, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_governance_assignments_list_request( # pylint: disable=name-too-long + scope: str, assessment_name: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/assessments/{assessmentName}/governanceAssignments" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_governance_rules_get_request(scope: str, rule_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/governanceRules/{ruleId}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_governance_rules_create_or_update_request( # pylint: disable=name-too-long + scope: str, rule_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/governanceRules/{ruleId}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_governance_rules_delete_request(scope: str, rule_id: str, **kwargs: Any) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/governanceRules/{ruleId}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_governance_rules_list_request(scope: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/governanceRules" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_governance_rules_execute_request(scope: str, rule_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/governanceRules/{ruleId}/execute" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_governance_rules_operation_results_request( # pylint: disable=name-too-long + scope: str, rule_id: str, operation_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/governanceRules/{ruleId}/operationResults/{operationId}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), + "operationId": _SERIALIZER.url("operation_id", operation_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_health_reports_get_request(resource_id: str, health_report_name: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/healthReports/{healthReportName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "healthReportName": _SERIALIZER.url("health_report_name", health_report_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_health_reports_list_request(scope: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/healthReports" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_device_security_groups_get_request( + resource_id: str, device_security_group_name: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "deviceSecurityGroupName": _SERIALIZER.url("device_security_group_name", device_security_group_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_device_security_groups_create_or_update_request( # pylint: disable=name-too-long + resource_id: str, device_security_group_name: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "deviceSecurityGroupName": _SERIALIZER.url("device_security_group_name", device_security_group_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_device_security_groups_delete_request( # pylint: disable=name-too-long + resource_id: str, device_security_group_name: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "deviceSecurityGroupName": _SERIALIZER.url("device_security_group_name", device_security_group_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_device_security_groups_list_request( # pylint: disable=name-too-long + resource_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/deviceSecurityGroups" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_auto_provisioning_settings_get_request( # pylint: disable=name-too-long + setting_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/autoProvisioningSettings/{settingName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_auto_provisioning_settings_create_request( # pylint: disable=name-too-long + setting_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/autoProvisioningSettings/{settingName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_auto_provisioning_settings_list_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/autoProvisioningSettings" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_compliances_get_request(scope: str, compliance_name: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/compliances/{complianceName}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "complianceName": _SERIALIZER.url("compliance_name", compliance_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_compliances_list_request(scope: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/compliances" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_information_protection_policies_get_request( # pylint: disable=name-too-long + scope: str, information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/informationProtectionPolicies/{informationProtectionPolicyName}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "informationProtectionPolicyName": _SERIALIZER.url( + "information_protection_policy_name", information_protection_policy_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_information_protection_policies_create_or_update_request( # pylint: disable=name-too-long + scope: str, information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/informationProtectionPolicies/{informationProtectionPolicyName}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "informationProtectionPolicyName": _SERIALIZER.url( + "information_protection_policy_name", information_protection_policy_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_information_protection_policies_list_request( # pylint: disable=name-too-long + scope: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/informationProtectionPolicies" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_workspace_settings_get_request( + workspace_setting_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "workspaceSettingName": _SERIALIZER.url("workspace_setting_name", workspace_setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_workspace_settings_create_request( + workspace_setting_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "workspaceSettingName": _SERIALIZER.url("workspace_setting_name", workspace_setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_workspace_settings_update_request( + workspace_setting_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "workspaceSettingName": _SERIALIZER.url("workspace_setting_name", workspace_setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_workspace_settings_delete_request( + workspace_setting_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "workspaceSettingName": _SERIALIZER.url("workspace_setting_name", workspace_setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_workspace_settings_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_mde_onboardings_get_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-10-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/mdeOnboardings/default" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_mde_onboardings_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-10-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/mdeOnboardings" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_operations_list_request(**kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/providers/Microsoft.Security/operations" + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_pricings_get_request(scope_id: str, pricing_name: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scopeId}/providers/Microsoft.Security/pricings/{pricingName}" + path_format_arguments = { + "scopeId": _SERIALIZER.url("scope_id", scope_id, "str", skip_quote=True), + "pricingName": _SERIALIZER.url("pricing_name", pricing_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_pricings_update_request(scope_id: str, pricing_name: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scopeId}/providers/Microsoft.Security/pricings/{pricingName}" + path_format_arguments = { + "scopeId": _SERIALIZER.url("scope_id", scope_id, "str", skip_quote=True), + "pricingName": _SERIALIZER.url("pricing_name", pricing_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_pricings_delete_request(scope_id: str, pricing_name: str, **kwargs: Any) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) + # Construct URL + _url = "/{scopeId}/providers/Microsoft.Security/pricings/{pricingName}" + path_format_arguments = { + "scopeId": _SERIALIZER.url("scope_id", scope_id, "str", skip_quote=True), + "pricingName": _SERIALIZER.url("pricing_name", pricing_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_pricings_list_request(scope_id: str, *, filter: Optional[str] = None, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scopeId}/providers/Microsoft.Security/pricings" + path_format_arguments = { + "scopeId": _SERIALIZER.url("scope_id", scope_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if filter is not None: + _params["$filter"] = _SERIALIZER.query("filter", filter, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_private_link_resources_get_request( + resource_group_name: str, private_link_name: str, group_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateLinkResources/{groupId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "privateLinkName": _SERIALIZER.url("private_link_name", private_link_name, "str"), + "groupId": _SERIALIZER.url("group_id", group_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_private_link_resources_list_request( # pylint: disable=name-too-long + resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateLinkResources" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "privateLinkName": _SERIALIZER.url("private_link_name", private_link_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_private_endpoint_connections_get_request( # pylint: disable=name-too-long + resource_group_name: str, private_endpoint_connection_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateEndpointConnections/{privateEndpointConnectionName}" + path_format_arguments = { + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "privateEndpointConnectionName": _SERIALIZER.url( + "private_endpoint_connection_name", private_endpoint_connection_name, "str" + ), + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_private_endpoint_connections_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, + private_link_name: str, + private_endpoint_connection_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateEndpointConnections/{privateEndpointConnectionName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "privateLinkName": _SERIALIZER.url("private_link_name", private_link_name, "str"), + "privateEndpointConnectionName": _SERIALIZER.url( + "private_endpoint_connection_name", private_endpoint_connection_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_private_endpoint_connections_delete_request( # pylint: disable=name-too-long + resource_group_name: str, + private_link_name: str, + private_endpoint_connection_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateEndpointConnections/{privateEndpointConnectionName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "privateLinkName": _SERIALIZER.url("private_link_name", private_link_name, "str"), + "privateEndpointConnectionName": _SERIALIZER.url( + "private_endpoint_connection_name", private_endpoint_connection_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_private_endpoint_connections_list_request( # pylint: disable=name-too-long + resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateEndpointConnections" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "privateLinkName": _SERIALIZER.url("private_link_name", private_link_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_regulatory_compliance_standards_get_request( # pylint: disable=name-too-long + regulatory_compliance_standard_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "regulatoryComplianceStandardName": _SERIALIZER.url( + "regulatory_compliance_standard_name", regulatory_compliance_standard_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_regulatory_compliance_standards_list_request( # pylint: disable=name-too-long + subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if filter is not None: + _params["$filter"] = _SERIALIZER.query("filter", filter, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_regulatory_compliance_controls_get_request( # pylint: disable=name-too-long + regulatory_compliance_standard_name: str, + regulatory_compliance_control_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls/{regulatoryComplianceControlName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "regulatoryComplianceStandardName": _SERIALIZER.url( + "regulatory_compliance_standard_name", regulatory_compliance_standard_name, "str" + ), + "regulatoryComplianceControlName": _SERIALIZER.url( + "regulatory_compliance_control_name", regulatory_compliance_control_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_regulatory_compliance_controls_list_request( # pylint: disable=name-too-long + regulatory_compliance_standard_name: str, subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "regulatoryComplianceStandardName": _SERIALIZER.url( + "regulatory_compliance_standard_name", regulatory_compliance_standard_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if filter is not None: + _params["$filter"] = _SERIALIZER.query("filter", filter, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_regulatory_compliance_assessments_get_request( # pylint: disable=name-too-long + regulatory_compliance_standard_name: str, + regulatory_compliance_control_name: str, + regulatory_compliance_assessment_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls/{regulatoryComplianceControlName}/regulatoryComplianceAssessments/{regulatoryComplianceAssessmentName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "regulatoryComplianceStandardName": _SERIALIZER.url( + "regulatory_compliance_standard_name", regulatory_compliance_standard_name, "str" + ), + "regulatoryComplianceControlName": _SERIALIZER.url( + "regulatory_compliance_control_name", regulatory_compliance_control_name, "str" + ), + "regulatoryComplianceAssessmentName": _SERIALIZER.url( + "regulatory_compliance_assessment_name", regulatory_compliance_assessment_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_regulatory_compliance_assessments_list_request( # pylint: disable=name-too-long + regulatory_compliance_standard_name: str, + regulatory_compliance_control_name: str, + subscription_id: str, + *, + filter: Optional[str] = None, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls/{regulatoryComplianceControlName}/regulatoryComplianceAssessments" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "regulatoryComplianceStandardName": _SERIALIZER.url( + "regulatory_compliance_standard_name", regulatory_compliance_standard_name, "str" + ), + "regulatoryComplianceControlName": _SERIALIZER.url( + "regulatory_compliance_control_name", regulatory_compliance_control_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if filter is not None: + _params["$filter"] = _SERIALIZER.query("filter", filter, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_connectors_get_request( + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_connectors_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_connectors_update_request( + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_connectors_delete_request( + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_security_connectors_list_by_resource_group_request( # pylint: disable=name-too-long + resource_group_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_connectors_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityConnectors" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_orgs_get_request( + resource_group_name: str, security_connector_name: str, org_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "orgName": _SERIALIZER.url("org_name", org_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_orgs_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, org_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "orgName": _SERIALIZER.url("org_name", org_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_orgs_update_request( + resource_group_name: str, security_connector_name: str, org_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "orgName": _SERIALIZER.url("org_name", org_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_orgs_list_request( + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_orgs_list_available_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/listAvailableAzureDevOpsOrgs" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_git_hub_owners_get_request( + resource_group_name: str, security_connector_name: str, owner_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "ownerName": _SERIALIZER.url("owner_name", owner_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_git_hub_owners_list_request( + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_git_hub_owners_list_available_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/listAvailableGitHubOwners" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_git_lab_groups_get_request( + resource_group_name: str, security_connector_name: str, group_fq_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups/{groupFQName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "groupFQName": _SERIALIZER.url("group_fq_name", group_fq_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_git_lab_groups_list_request( + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_git_lab_groups_list_available_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/listAvailableGitLabGroups" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_dev_ops_configurations_get_request( + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_dev_ops_configurations_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_dev_ops_configurations_update_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_dev_ops_configurations_delete_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_dev_ops_configurations_list_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_projects_get_request( + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "orgName": _SERIALIZER.url("org_name", org_name, "str"), + "projectName": _SERIALIZER.url("project_name", project_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_projects_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "orgName": _SERIALIZER.url("org_name", org_name, "str"), + "projectName": _SERIALIZER.url("project_name", project_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_projects_update_request( # pylint: disable=name-too-long + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "orgName": _SERIALIZER.url("org_name", org_name, "str"), + "projectName": _SERIALIZER.url("project_name", project_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_projects_list_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, org_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "orgName": _SERIALIZER.url("org_name", org_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_git_lab_projects_get_request( + resource_group_name: str, + security_connector_name: str, + group_fq_name: str, + project_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups/{groupFQName}/projects/{projectName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "groupFQName": _SERIALIZER.url("group_fq_name", group_fq_name, "str"), + "projectName": _SERIALIZER.url("project_name", project_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_git_lab_projects_list_request( + resource_group_name: str, security_connector_name: str, group_fq_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups/{groupFQName}/projects" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "groupFQName": _SERIALIZER.url("group_fq_name", group_fq_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_operators_get_request( + pricing_name: str, security_operator_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}/securityOperators/{securityOperatorName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "pricingName": _SERIALIZER.url("pricing_name", pricing_name, "str"), + "securityOperatorName": _SERIALIZER.url("security_operator_name", security_operator_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_operators_create_or_update_request( # pylint: disable=name-too-long + pricing_name: str, security_operator_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}/securityOperators/{securityOperatorName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "pricingName": _SERIALIZER.url("pricing_name", pricing_name, "str"), + "securityOperatorName": _SERIALIZER.url("security_operator_name", security_operator_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_operators_delete_request( + pricing_name: str, security_operator_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}/securityOperators/{securityOperatorName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "pricingName": _SERIALIZER.url("pricing_name", pricing_name, "str"), + "securityOperatorName": _SERIALIZER.url("security_operator_name", security_operator_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_security_operators_list_request(pricing_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}/securityOperators" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "pricingName": _SERIALIZER.url("pricing_name", pricing_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_discovered_security_solutions_get_request( # pylint: disable=name-too-long + resource_group_name: str, + asc_location: str, + discovered_security_solution_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/discoveredSecuritySolutions/{discoveredSecuritySolutionName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "discoveredSecuritySolutionName": _SERIALIZER.url( + "discovered_security_solution_name", discovered_security_solution_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_discovered_security_solutions_list_by_home_region_request( # pylint: disable=name-too-long + asc_location: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/discoveredSecuritySolutions" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_discovered_security_solutions_list_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/discoveredSecuritySolutions" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_external_security_solutions_get_request( # pylint: disable=name-too-long + resource_group_name: str, + asc_location: str, + external_security_solutions_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/ExternalSecuritySolutions/{externalSecuritySolutionsName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "externalSecuritySolutionsName": _SERIALIZER.url( + "external_security_solutions_name", external_security_solutions_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_external_security_solutions_list_by_home_region_request( # pylint: disable=name-too-long + asc_location: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = ( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/ExternalSecuritySolutions" + ) + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_external_security_solutions_list_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/externalSecuritySolutions" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_jit_network_access_policies_get_request( # pylint: disable=name-too-long + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "jitNetworkAccessPolicyName": _SERIALIZER.url( + "jit_network_access_policy_name", jit_network_access_policy_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_jit_network_access_policies_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "jitNetworkAccessPolicyName": _SERIALIZER.url( + "jit_network_access_policy_name", jit_network_access_policy_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_jit_network_access_policies_delete_request( # pylint: disable=name-too-long + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "jitNetworkAccessPolicyName": _SERIALIZER.url( + "jit_network_access_policy_name", jit_network_access_policy_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_jit_network_access_policies_list_by_resource_group_and_region_request( # pylint: disable=name-too-long + resource_group_name: str, asc_location: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_jit_network_access_policies_list_by_region_request( # pylint: disable=name-too-long + asc_location: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = ( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies" + ) + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_jit_network_access_policies_initiate_request( # pylint: disable=name-too-long + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + jit_network_access_policy_initiate_type: Literal["initiate"] = kwargs.pop( + "jit_network_access_policy_initiate_type", "initiate" + ) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}/{jitNetworkAccessPolicyInitiateType}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "jitNetworkAccessPolicyName": _SERIALIZER.url( + "jit_network_access_policy_name", jit_network_access_policy_name, "str" + ), + "jitNetworkAccessPolicyInitiateType": _SERIALIZER.url( + "jit_network_access_policy_initiate_type", jit_network_access_policy_initiate_type, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_jit_network_access_policies_list_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/jitNetworkAccessPolicies" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_jit_network_access_policies_list_by_resource_group_request( # pylint: disable=name-too-long + resource_group_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/jitNetworkAccessPolicies" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_solutions_get_request( + resource_group_name: str, asc_location: str, security_solution_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/securitySolutions/{securitySolutionName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "securitySolutionName": _SERIALIZER.url("security_solution_name", security_solution_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_solutions_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securitySolutions" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_standards_get_request(scope: str, standard_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/securityStandards/{standardId}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "standardId": _SERIALIZER.url("standard_id", standard_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_standards_create_or_update_request( # pylint: disable=name-too-long + scope: str, standard_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/securityStandards/{standardId}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "standardId": _SERIALIZER.url("standard_id", standard_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_standards_delete_request(scope: str, standard_id: str, **kwargs: Any) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/securityStandards/{standardId}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "standardId": _SERIALIZER.url("standard_id", standard_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_security_standards_list_request(scope: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/securityStandards" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_standard_assignments_get_request( + resource_id: str, standard_assignment_name: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "standardAssignmentName": _SERIALIZER.url("standard_assignment_name", standard_assignment_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_standard_assignments_create_request( # pylint: disable=name-too-long + resource_id: str, standard_assignment_name: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "standardAssignmentName": _SERIALIZER.url("standard_assignment_name", standard_assignment_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_standard_assignments_delete_request( # pylint: disable=name-too-long + resource_id: str, standard_assignment_name: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "standardAssignmentName": _SERIALIZER.url("standard_assignment_name", standard_assignment_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_standard_assignments_list_request(scope: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/standardAssignments" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_custom_recommendations_get_request(scope: str, custom_recommendation_name: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/customRecommendations/{customRecommendationName}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "customRecommendationName": _SERIALIZER.url("custom_recommendation_name", custom_recommendation_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_custom_recommendations_create_or_update_request( # pylint: disable=name-too-long + scope: str, custom_recommendation_name: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/customRecommendations/{customRecommendationName}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "customRecommendationName": _SERIALIZER.url("custom_recommendation_name", custom_recommendation_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_custom_recommendations_delete_request( # pylint: disable=name-too-long + scope: str, custom_recommendation_name: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/customRecommendations/{customRecommendationName}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "customRecommendationName": _SERIALIZER.url("custom_recommendation_name", custom_recommendation_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_custom_recommendations_list_request( # pylint: disable=name-too-long + scope: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/customRecommendations" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_server_vulnerability_assessments_settings_get_request( # pylint: disable=name-too-long + setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings/{settingKind}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "settingKind": _SERIALIZER.url("setting_kind", setting_kind, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_server_vulnerability_assessments_settings_create_or_update_request( # pylint: disable=name-too-long + setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings/{settingKind}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "settingKind": _SERIALIZER.url("setting_kind", setting_kind, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_server_vulnerability_assessments_settings_delete_request( # pylint: disable=name-too-long + setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings/{settingKind}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "settingKind": _SERIALIZER.url("setting_kind", setting_kind, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_server_vulnerability_assessments_settings_list_by_subscription_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_settings_get_request( + setting_name: Union[str, _models.SettingName], subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/settings/{settingName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_settings_update_request( + setting_name: Union[str, _models.SettingName], subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/settings/{settingName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_settings_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/settings" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sql_vulnerability_assessment_baseline_rules_get_request( # pylint: disable=name-too-long + resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules/{ruleId}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sql_vulnerability_assessment_baseline_rules_create_or_update_request( # pylint: disable=name-too-long + resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules/{ruleId}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sql_vulnerability_assessment_baseline_rules_delete_request( # pylint: disable=name-too-long + resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules/{ruleId}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_sql_vulnerability_assessment_baseline_rules_list_request( # pylint: disable=name-too-long + resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sql_vulnerability_assessment_baseline_rules_add_request( # pylint: disable=name-too-long + resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sql_vulnerability_assessment_scan_results_get_request( # pylint: disable=name-too-long + scan_id: str, scan_result_id: str, resource_id: str, *, database_name: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/{scanId}/scanResults/{scanResultId}" + path_format_arguments = { + "scanId": _SERIALIZER.url("scan_id", scan_id, "str"), + "scanResultId": _SERIALIZER.url("scan_result_id", scan_result_id, "str"), + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sql_vulnerability_assessment_scan_results_list_request( # pylint: disable=name-too-long + scan_id: str, resource_id: str, *, database_name: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/{scanId}/scanResults" + path_format_arguments = { + "scanId": _SERIALIZER.url("scan_id", scan_id, "str"), + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_standards_get_request( + resource_group_name: str, standard_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards/{standardId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "standardId": _SERIALIZER.url("standard_id", standard_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_standards_create_or_update_request( + resource_group_name: str, standard_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards/{standardId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "standardId": _SERIALIZER.url("standard_id", standard_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_standards_delete_request( + resource_group_name: str, standard_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards/{standardId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "standardId": _SERIALIZER.url("standard_id", standard_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_standards_list_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_standards_list_by_subscription_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/standards" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_assignments_get_request( + resource_group_name: str, assignment_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments/{assignmentId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "assignmentId": _SERIALIZER.url("assignment_id", assignment_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_assignments_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, assignment_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments/{assignmentId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "assignmentId": _SERIALIZER.url("assignment_id", assignment_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_assignments_delete_request( + resource_group_name: str, assignment_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments/{assignmentId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "assignmentId": _SERIALIZER.url("assignment_id", assignment_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_assignments_list_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_assignments_list_by_subscription_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assignments" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_tasks_get_resource_group_level_task_request( # pylint: disable=name-too-long + resource_group_name: str, asc_location: str, task_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "taskName": _SERIALIZER.url("task_name", task_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_tasks_list_by_resource_group_request( # pylint: disable=name-too-long + resource_group_name: str, asc_location: str, subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/tasks" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if filter is not None: + _params["$filter"] = _SERIALIZER.query("filter", filter, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_tasks_update_resource_group_level_task_state_request( # pylint: disable=name-too-long + resource_group_name: str, + asc_location: str, + task_name: str, + task_update_action_type: Union[str, _models.TaskUpdateActionType], + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}/{taskUpdateActionType}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "taskName": _SERIALIZER.url("task_name", task_name, "str"), + "taskUpdateActionType": _SERIALIZER.url("task_update_action_type", task_update_action_type, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="POST", url=_url, params=_params, **kwargs) + + +def build_tasks_get_subscription_level_task_request( # pylint: disable=name-too-long + asc_location: str, task_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "taskName": _SERIALIZER.url("task_name", task_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_tasks_list_by_home_region_request( + asc_location: str, subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/tasks" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if filter is not None: + _params["$filter"] = _SERIALIZER.query("filter", filter, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_tasks_update_subscription_level_task_state_request( # pylint: disable=name-too-long + asc_location: str, + task_name: str, + task_update_action_type: Union[str, _models.TaskUpdateActionType], + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}/{taskUpdateActionType}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "taskName": _SERIALIZER.url("task_name", task_name, "str"), + "taskUpdateActionType": _SERIALIZER.url("task_update_action_type", task_update_action_type, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="POST", url=_url, params=_params, **kwargs) + + +def build_tasks_list_request(subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/tasks" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if filter is not None: + _params["$filter"] = _SERIALIZER.query("filter", filter, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_api_collections_get_by_azure_api_management_service_request( # pylint: disable=name-too-long + resource_group_name: str, service_name: str, api_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "serviceName": _SERIALIZER.url("service_name", service_name, "str"), + "apiId": _SERIALIZER.url("api_id", api_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_api_collections_onboard_azure_api_management_api_request( # pylint: disable=name-too-long + resource_group_name: str, service_name: str, api_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "serviceName": _SERIALIZER.url("service_name", service_name, "str"), + "apiId": _SERIALIZER.url("api_id", api_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_api_collections_offboard_azure_api_management_api_request( # pylint: disable=name-too-long + resource_group_name: str, service_name: str, api_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "serviceName": _SERIALIZER.url("service_name", service_name, "str"), + "apiId": _SERIALIZER.url("api_id", api_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_api_collections_list_by_azure_api_management_service_request( # pylint: disable=name-too-long + resource_group_name: str, service_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "serviceName": _SERIALIZER.url("service_name", service_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_api_collections_list_by_subscription_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/apiCollections" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_api_collections_list_by_resource_group_request( # pylint: disable=name-too-long + resource_group_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = ( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/apiCollections" + ) + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_application_get_request(application_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications/{applicationId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "applicationId": _SERIALIZER.url("application_id", application_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_application_create_or_update_request( # pylint: disable=name-too-long + application_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications/{applicationId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "applicationId": _SERIALIZER.url("application_id", application_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_application_delete_request(application_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications/{applicationId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "applicationId": _SERIALIZER.url("application_id", application_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_security_connector_applications_list_request( # pylint: disable=name-too-long + resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/providers/Microsoft.Security/applications" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_assessments_get_request( + resource_id: str, assessment_name: str, *, expand: Optional[Union[str, _models.ExpandEnum]] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/assessments/{assessmentName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if expand is not None: + _params["$expand"] = _SERIALIZER.query("expand", expand, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_assessments_create_or_update_request( # pylint: disable=name-too-long + resource_id: str, assessment_name: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/assessments/{assessmentName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_assessments_delete_request(resource_id: str, assessment_name: str, **kwargs: Any) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/assessments/{assessmentName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_assessments_list_request(scope: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/assessments" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_advanced_threat_protection_get_request( # pylint: disable=name-too-long + resource_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01")) + setting_name: Literal["current"] = kwargs.pop("setting_name", "current") + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/advancedThreatProtectionSettings/{settingName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_advanced_threat_protection_create_request( # pylint: disable=name-too-long + resource_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01")) + setting_name: Literal["current"] = kwargs.pop("setting_name", "current") + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/advancedThreatProtectionSettings/{settingName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_defender_for_storage_get_request( + resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_defender_for_storage_create_request( # pylint: disable=name-too-long + resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_defender_for_storage_list_request(resource_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_defender_for_storage_start_malware_scan_request( # pylint: disable=name-too-long + resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}/startMalwareScan" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_defender_for_storage_cancel_malware_scan_request( # pylint: disable=name-too-long + resource_id: str, setting_name: Union[str, _models.SettingName], scan_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}/malwareScans/{scanId}/cancelMalwareScan" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), + "scanId": _SERIALIZER.url("scan_id", scan_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_defender_for_storage_get_malware_scan_request( # pylint: disable=name-too-long + resource_id: str, setting_name: Union[str, _models.SettingName], scan_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}/malwareScans/{scanId}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), + "scanId": _SERIALIZER.url("scan_id", scan_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_iot_security_solution_analytics_get_request( # pylint: disable=name-too-long + resource_group_name: str, solution_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_iot_security_solution_analytics_list_request( # pylint: disable=name-too-long + resource_group_name: str, solution_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_iot_security_solution_get_request( + resource_group_name: str, solution_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_iot_security_solution_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, solution_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_iot_security_solution_update_request( # pylint: disable=name-too-long + resource_group_name: str, solution_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_iot_security_solution_delete_request( # pylint: disable=name-too-long + resource_group_name: str, solution_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_iot_security_solution_list_by_resource_group_request( # pylint: disable=name-too-long + resource_group_name: str, subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if filter is not None: + _params["$filter"] = _SERIALIZER.query("filter", filter, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_iot_security_solution_list_by_subscription_request( # pylint: disable=name-too-long + subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/iotSecuritySolutions" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if filter is not None: + _params["$filter"] = _SERIALIZER.query("filter", filter, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_iot_security_solutions_analytics_aggregated_alert_get_request( # pylint: disable=name-too-long + resource_group_name: str, solution_name: str, aggregated_alert_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts/{aggregatedAlertName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), + "aggregatedAlertName": _SERIALIZER.url("aggregated_alert_name", aggregated_alert_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_iot_security_solutions_analytics_aggregated_alert_list_request( # pylint: disable=name-too-long + resource_group_name: str, solution_name: str, subscription_id: str, *, top: Optional[int] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if top is not None: + _params["$top"] = _SERIALIZER.query("top", top, "int") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_iot_security_solutions_analytics_aggregated_alert_dismiss_request( # pylint: disable=name-too-long + resource_group_name: str, solution_name: str, aggregated_alert_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts/{aggregatedAlertName}/dismiss" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), + "aggregatedAlertName": _SERIALIZER.url("aggregated_alert_name", aggregated_alert_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="POST", url=_url, params=_params, **kwargs) + + +def build_iot_security_solutions_analytics_recommendation_get_request( # pylint: disable=name-too-long + resource_group_name: str, + solution_name: str, + aggregated_recommendation_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedRecommendations/{aggregatedRecommendationName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), + "aggregatedRecommendationName": _SERIALIZER.url( + "aggregated_recommendation_name", aggregated_recommendation_name, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_iot_security_solutions_analytics_recommendation_list_request( # pylint: disable=name-too-long + resource_group_name: str, solution_name: str, subscription_id: str, *, top: Optional[int] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedRecommendations" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "solutionName": _SERIALIZER.url("solution_name", solution_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if top is not None: + _params["$top"] = _SERIALIZER.query("top", top, "int") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_locations_get_request(asc_location: str, subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_locations_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_operation_results_get_request( + location: str, operation_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{location}/operationResults/{operationId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "location": _SERIALIZER.url("location", location, "str"), + "operationId": _SERIALIZER.url("operation_id", operation_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="GET", url=_url, params=_params, **kwargs) + + +def build_operation_statuses_get_request( + location: str, operation_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{location}/operationStatuses/{operationId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "location": _SERIALIZER.url("location", location, "str"), + "operationId": _SERIALIZER.url("operation_id", operation_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_private_links_get_request( + resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "privateLinkName": _SERIALIZER.url("private_link_name", private_link_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_private_links_head_request( + resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "privateLinkName": _SERIALIZER.url("private_link_name", private_link_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="HEAD", url=_url, params=_params, **kwargs) + + +def build_private_links_create_request( + resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "privateLinkName": _SERIALIZER.url("private_link_name", private_link_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_private_links_update_request( + resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "privateLinkName": _SERIALIZER.url("private_link_name", private_link_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_private_links_delete_request( + resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "privateLinkName": _SERIALIZER.url("private_link_name", private_link_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_private_links_list_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = ( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks" + ) + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_private_links_list_by_subscription_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/privateLinks" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_secure_scores_get_request(secure_score_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScores/{secureScoreName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "secureScoreName": _SERIALIZER.url("secure_score_name", secure_score_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_secure_scores_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScores" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_secure_score_controls_list_by_secure_score_request( # pylint: disable=name-too-long + secure_score_name: str, + subscription_id: str, + *, + expand: Optional[Union[str, _models.ExpandControlsEnum]] = None, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScores/{secureScoreName}/secureScoreControls" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "secureScoreName": _SERIALIZER.url("secure_score_name", secure_score_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if expand is not None: + _params["$expand"] = _SERIALIZER.query("expand", expand, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_secure_score_controls_list_request( + subscription_id: str, *, expand: Optional[Union[str, _models.ExpandControlsEnum]] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScoreControls" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if expand is not None: + _params["$expand"] = _SERIALIZER.query("expand", expand, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_secure_score_control_definitions_list_request(**kwargs: Any) -> HttpRequest: # pylint: disable=name-too-long + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/providers/Microsoft.Security/secureScoreControlDefinitions" + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_secure_score_control_definitions_list_by_subscription_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScoreControlDefinitions" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_git_lab_subgroups_list_request( + resource_group_name: str, security_connector_name: str, group_fq_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups/{groupFQName}/listSubgroups" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "groupFQName": _SERIALIZER.url("group_fq_name", group_fq_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_dev_ops_operation_results_get_request( # pylint: disable=name-too-long + resource_group_name: str, + security_connector_name: str, + operation_result_id: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/operationResults/{operationResultId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "operationResultId": _SERIALIZER.url("operation_result_id", operation_result_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_repos_get_request( + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}/repos/{repoName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "orgName": _SERIALIZER.url("org_name", org_name, "str"), + "projectName": _SERIALIZER.url("project_name", project_name, "str"), + "repoName": _SERIALIZER.url("repo_name", repo_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_repos_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}/repos/{repoName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "orgName": _SERIALIZER.url("org_name", org_name, "str"), + "projectName": _SERIALIZER.url("project_name", project_name, "str"), + "repoName": _SERIALIZER.url("repo_name", repo_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_repos_update_request( + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}/repos/{repoName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "orgName": _SERIALIZER.url("org_name", org_name, "str"), + "projectName": _SERIALIZER.url("project_name", project_name, "str"), + "repoName": _SERIALIZER.url("repo_name", repo_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_azure_dev_ops_repos_list_request( + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}/repos" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "orgName": _SERIALIZER.url("org_name", org_name, "str"), + "projectName": _SERIALIZER.url("project_name", project_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_git_hub_repos_get_request( + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}/repos/{repoName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "ownerName": _SERIALIZER.url("owner_name", owner_name, "str"), + "repoName": _SERIALIZER.url("repo_name", repo_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_git_hub_repos_list_request( + resource_group_name: str, security_connector_name: str, owner_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}/repos" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "ownerName": _SERIALIZER.url("owner_name", owner_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_git_hub_issues_create_request( + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}/repos/{repoName}/issues" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), + "ownerName": _SERIALIZER.url("owner_name", owner_name, "str"), + "repoName": _SERIALIZER.url("repo_name", repo_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_allowed_connections_get_request( + resource_group_name: str, + asc_location: str, + connection_type: Union[str, _models.ConnectionType], + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/allowedConnections/{connectionType}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "connectionType": _SERIALIZER.url("connection_type", connection_type, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_allowed_connections_list_by_home_region_request( # pylint: disable=name-too-long + asc_location: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/allowedConnections" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_allowed_connections_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/allowedConnections" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_server_vulnerability_assessment_get_request( # pylint: disable=name-too-long + resource_group_name: str, + resource_namespace: str, + resource_type: str, + resource_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments/{serverVulnerabilityAssessment}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "resourceNamespace": _SERIALIZER.url("resource_namespace", resource_namespace, "str"), + "resourceType": _SERIALIZER.url("resource_type", resource_type, "str"), + "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"), + "serverVulnerabilityAssessment": _SERIALIZER.url( + "server_vulnerability_assessment", server_vulnerability_assessment, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_server_vulnerability_assessment_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, + resource_namespace: str, + resource_type: str, + resource_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments/{serverVulnerabilityAssessment}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "resourceNamespace": _SERIALIZER.url("resource_namespace", resource_namespace, "str"), + "resourceType": _SERIALIZER.url("resource_type", resource_type, "str"), + "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"), + "serverVulnerabilityAssessment": _SERIALIZER.url( + "server_vulnerability_assessment", server_vulnerability_assessment, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_server_vulnerability_assessment_delete_request( # pylint: disable=name-too-long + resource_group_name: str, + resource_namespace: str, + resource_type: str, + resource_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments/{serverVulnerabilityAssessment}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "resourceNamespace": _SERIALIZER.url("resource_namespace", resource_namespace, "str"), + "resourceType": _SERIALIZER.url("resource_type", resource_type, "str"), + "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"), + "serverVulnerabilityAssessment": _SERIALIZER.url( + "server_vulnerability_assessment", server_vulnerability_assessment, "str" + ), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_server_vulnerability_assessment_list_by_extended_resource_request( # pylint: disable=name-too-long + resource_group_name: str, + resource_namespace: str, + resource_type: str, + resource_name: str, + subscription_id: str, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "resourceNamespace": _SERIALIZER.url("resource_namespace", resource_namespace, "str"), + "resourceType": _SERIALIZER.url("resource_type", resource_type, "str"), + "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_topology_get_request( + resource_group_name: str, asc_location: str, topology_resource_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/topologies/{topologyResourceName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + "topologyResourceName": _SERIALIZER.url("topology_resource_name", topology_resource_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_topology_list_by_home_region_request( # pylint: disable=name-too-long + asc_location: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/topologies" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_topology_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/topologies" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_solutions_reference_data_list_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securitySolutionsReferenceData" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_security_solutions_reference_data_list_by_home_region_request( # pylint: disable=name-too-long + asc_location: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/securitySolutionsReferenceData" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sensitivity_settings_get_request(**kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/providers/Microsoft.Security/sensitivitySettings/current" + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sensitivity_settings_create_or_update_request(**kwargs: Any) -> HttpRequest: # pylint: disable=name-too-long + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/providers/Microsoft.Security/sensitivitySettings/current" + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sensitivity_settings_list_request(**kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/providers/Microsoft.Security/sensitivitySettings" + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sql_vulnerability_assessment_settings_get_request( # pylint: disable=name-too-long + resource_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sql_vulnerability_assessment_settings_create_or_update_request( # pylint: disable=name-too-long + resource_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sql_vulnerability_assessment_settings_delete_request( # pylint: disable=name-too-long + resource_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) + + +def build_sql_vulnerability_assessment_scans_initiate_scan_request( # pylint: disable=name-too-long + resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/initiateScan" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sql_vulnerability_assessment_scans_get_scan_operation_result_request( # pylint: disable=name-too-long + resource_id: str, operation_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/scanOperationResults/{operationId}" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + "operationId": _SERIALIZER.url("operation_id", operation_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sql_vulnerability_assessment_scans_get_request( # pylint: disable=name-too-long + scan_id: str, resource_id: str, *, database_name: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/{scanId}" + path_format_arguments = { + "scanId": _SERIALIZER.url("scan_id", scan_id, "str"), + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sql_vulnerability_assessment_scans_list_request( # pylint: disable=name-too-long + resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans" + path_format_arguments = { + "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if database_name is not None: + _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sub_assessments_get_request( + scope: str, assessment_name: str, sub_assessment_name: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/assessments/{assessmentName}/subAssessments/{subAssessmentName}" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), + "subAssessmentName": _SERIALIZER.url("sub_assessment_name", sub_assessment_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sub_assessments_list_request(scope: str, assessment_name: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/assessments/{assessmentName}/subAssessments" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +def build_sub_assessments_list_all_request(scope: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/{scope}/providers/Microsoft.Security/subAssessments" + path_format_arguments = { + "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +class AlertsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`alerts` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get_subscription_level(self, asc_location: str, alert_name: str, **kwargs: Any) -> _models.Alert: + """Get an alert that is associated with a subscription. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: Alert. The Alert is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Alert + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[_models.Alert] = kwargs.pop("cls", None) + + _request = build_alerts_get_subscription_level_request( + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Alert, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_subscription_level_by_region(self, asc_location: str, **kwargs: Any) -> ItemPaged["_models.Alert"]: + """List all the alerts that are associated with the subscription that are stored in a specific + location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of Alert + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Alert] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[List[_models.Alert]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_alerts_list_subscription_level_by_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Alert], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def update_subscription_level_state_to_dismiss( # pylint: disable=inconsistent-return-statements,name-too-long + self, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_subscription_level_state_to_dismiss_request( + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def update_subscription_level_state_to_resolve( # pylint: disable=inconsistent-return-statements,name-too-long + self, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_subscription_level_state_to_resolve_request( + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def update_subscription_level_state_to_activate( # pylint: disable=inconsistent-return-statements,name-too-long + self, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_subscription_level_state_to_activate_request( + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def update_subscription_level_state_to_in_progress( # pylint: disable=inconsistent-return-statements,name-too-long + self, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_subscription_level_state_to_in_progress_request( + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def get_resource_group_level( + self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any + ) -> _models.Alert: + """Get an alert that is associated a resource group or a resource in a resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: Alert. The Alert is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Alert + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[_models.Alert] = kwargs.pop("cls", None) + + _request = build_alerts_get_resource_group_level_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Alert, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_resource_group_level_by_region( + self, resource_group_name: str, asc_location: str, **kwargs: Any + ) -> ItemPaged["_models.Alert"]: + """List all the alerts that are associated with the resource group that are stored in a specific + location. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of Alert + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Alert] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[List[_models.Alert]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_alerts_list_resource_group_level_by_region_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Alert], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def update_resource_group_level_state_to_resolve( # pylint: disable=inconsistent-return-statements,name-too-long + self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_resource_group_level_state_to_resolve_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def update_resource_group_level_state_to_dismiss( # pylint: disable=inconsistent-return-statements,name-too-long + self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_resource_group_level_state_to_dismiss_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def update_resource_group_level_state_to_activate( # pylint: disable=inconsistent-return-statements,name-too-long + self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_resource_group_level_state_to_activate_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def update_resource_group_level_state_to_in_progress( # pylint: disable=inconsistent-return-statements,name-too-long + self, resource_group_name: str, asc_location: str, alert_name: str, **kwargs: Any + ) -> None: + """Update the alert's state. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_name: Name of the alert object. Required. + :type alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_update_resource_group_level_state_to_in_progress_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + alert_name=alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.Alert"]: + """List all the alerts that are associated with the subscription. + + :return: An iterator like instance of Alert + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Alert] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[List[_models.Alert]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_alerts_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Alert], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.Alert"]: + """List all the alerts that are associated with the resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of Alert + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Alert] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + cls: ClsType[List[_models.Alert]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_alerts_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Alert], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + def _simulate_initial( + self, + asc_location: str, + alert_simulator_request_body: Union[_models.AlertSimulatorRequestBody, JSON, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(alert_simulator_request_body, (IOBase, bytes)): + _content = alert_simulator_request_body + else: + _content = json.dumps(alert_simulator_request_body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_alerts_simulate_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_simulate( + self, + asc_location: str, + alert_simulator_request_body: _models.AlertSimulatorRequestBody, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: + """Simulate security alerts. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_simulator_request_body: The request body. Required. + :type alert_simulator_request_body: ~azure.mgmt.security.models.AlertSimulatorRequestBody + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_simulate( + self, + asc_location: str, + alert_simulator_request_body: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: + """Simulate security alerts. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_simulator_request_body: The request body. Required. + :type alert_simulator_request_body: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_simulate( + self, + asc_location: str, + alert_simulator_request_body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: + """Simulate security alerts. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_simulator_request_body: The request body. Required. + :type alert_simulator_request_body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_simulate( + self, + asc_location: str, + alert_simulator_request_body: Union[_models.AlertSimulatorRequestBody, JSON, IO[bytes]], + **kwargs: Any + ) -> LROPoller[None]: + """Simulate security alerts. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param alert_simulator_request_body: The request body. Is one of the following types: + AlertSimulatorRequestBody, JSON, IO[bytes] Required. + :type alert_simulator_request_body: ~azure.mgmt.security.models.AlertSimulatorRequestBody or + JSON or IO[bytes] + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._simulate_initial( + asc_location=asc_location, + alert_simulator_request_body=alert_simulator_request_body, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + +class AlertsSuppressionRulesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`alerts_suppression_rules` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, alerts_suppression_rule_name: str, **kwargs: Any) -> _models.AlertsSuppressionRule: + """Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription. + + :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. + :type alerts_suppression_rule_name: str + :return: AlertsSuppressionRule. The AlertsSuppressionRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[_models.AlertsSuppressionRule] = kwargs.pop("cls", None) + + _request = build_alerts_suppression_rules_get_request( + alerts_suppression_rule_name=alerts_suppression_rule_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AlertsSuppressionRule, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def update( + self, + alerts_suppression_rule_name: str, + alerts_suppression_rule: _models.AlertsSuppressionRule, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AlertsSuppressionRule: + """Update existing rule or create new rule if it doesn't exist. + + :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. + :type alerts_suppression_rule_name: str + :param alerts_suppression_rule: Suppression rule object. Required. + :type alerts_suppression_rule: ~azure.mgmt.security.models.AlertsSuppressionRule + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AlertsSuppressionRule. The AlertsSuppressionRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + alerts_suppression_rule_name: str, + alerts_suppression_rule: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AlertsSuppressionRule: + """Update existing rule or create new rule if it doesn't exist. + + :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. + :type alerts_suppression_rule_name: str + :param alerts_suppression_rule: Suppression rule object. Required. + :type alerts_suppression_rule: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AlertsSuppressionRule. The AlertsSuppressionRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + alerts_suppression_rule_name: str, + alerts_suppression_rule: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AlertsSuppressionRule: + """Update existing rule or create new rule if it doesn't exist. + + :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. + :type alerts_suppression_rule_name: str + :param alerts_suppression_rule: Suppression rule object. Required. + :type alerts_suppression_rule: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: AlertsSuppressionRule. The AlertsSuppressionRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def update( + self, + alerts_suppression_rule_name: str, + alerts_suppression_rule: Union[_models.AlertsSuppressionRule, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.AlertsSuppressionRule: + """Update existing rule or create new rule if it doesn't exist. + + :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. + :type alerts_suppression_rule_name: str + :param alerts_suppression_rule: Suppression rule object. Is one of the following types: + AlertsSuppressionRule, JSON, IO[bytes] Required. + :type alerts_suppression_rule: ~azure.mgmt.security.models.AlertsSuppressionRule or JSON or + IO[bytes] + :return: AlertsSuppressionRule. The AlertsSuppressionRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AlertsSuppressionRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AlertsSuppressionRule] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(alerts_suppression_rule, (IOBase, bytes)): + _content = alerts_suppression_rule + else: + _content = json.dumps(alerts_suppression_rule, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_alerts_suppression_rules_update_request( + alerts_suppression_rule_name=alerts_suppression_rule_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AlertsSuppressionRule, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, alerts_suppression_rule_name: str, **kwargs: Any + ) -> None: + """Delete dismiss alert rule for this subscription. + + :param alerts_suppression_rule_name: The unique name of the suppression alert rule. Required. + :type alerts_suppression_rule_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_alerts_suppression_rules_delete_request( + alerts_suppression_rule_name=alerts_suppression_rule_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, *, alert_type: Optional[str] = None, **kwargs: Any) -> ItemPaged["_models.AlertsSuppressionRule"]: + """List of all the dismiss rules for the given subscription. + + :keyword alert_type: Type of the alert to get rules for. Default value is None. + :paramtype alert_type: str + :return: An iterator like instance of AlertsSuppressionRule + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AlertsSuppressionRule] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[List[_models.AlertsSuppressionRule]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_alerts_suppression_rules_list_request( + subscription_id=self._config.subscription_id, + alert_type=alert_type, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AlertsSuppressionRule], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class ApplicationsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`applications` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.Application"]: + """Get a list of all relevant applications over a subscription level scope. + + :return: An iterator like instance of Application + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Application] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + cls: ClsType[List[_models.Application]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_applications_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Application], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SecurityConnectorApplicationOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`security_connector_application` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, security_connector_name: str, application_id: str, **kwargs: Any + ) -> _models.Application: + """Get a specific application for the requested scope by applicationId. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + cls: ClsType[_models.Application] = kwargs.pop("cls", None) + + _request = build_security_connector_application_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + application_id=application_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Application, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + application_id: str, + application: _models.Application, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Application: + """Creates or update a security Application on the given security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Required. + :type application: ~azure.mgmt.security.models.Application + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + application_id: str, + application: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Application: + """Creates or update a security Application on the given security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Required. + :type application: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + application_id: str, + application: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Application: + """Creates or update a security Application on the given security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Required. + :type application: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + application_id: str, + application: Union[_models.Application, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.Application: + """Creates or update a security Application on the given security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Is one of the following types: + Application, JSON, IO[bytes] Required. + :type application: ~azure.mgmt.security.models.Application or JSON or IO[bytes] + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Application] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(application, (IOBase, bytes)): + _content = application + else: + _content = json.dumps(application, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_security_connector_application_create_or_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + application_id=application_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Application, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, resource_group_name: str, security_connector_name: str, application_id: str, **kwargs: Any + ) -> None: + """Delete an Application over a given scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_security_connector_application_delete_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + application_id=application_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + +class AssessmentsMetadataOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`assessments_metadata` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get_in_subscription( + self, assessment_metadata_name: str, **kwargs: Any + ) -> _models.SecurityAssessmentMetadataResponse: + """Get metadata information on an assessment type in a specific subscription. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :return: SecurityAssessmentMetadataResponse. The SecurityAssessmentMetadataResponse is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) + + _request = build_assessments_metadata_get_in_subscription_request( + assessment_metadata_name=assessment_metadata_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityAssessmentMetadataResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_in_subscription( + self, + assessment_metadata_name: str, + assessment_metadata: _models.SecurityAssessmentMetadataResponse, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityAssessmentMetadataResponse: + """Create metadata information on an assessment type in a specific subscription. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :param assessment_metadata: AssessmentMetadata object. Required. + :type assessment_metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityAssessmentMetadataResponse. The SecurityAssessmentMetadataResponse is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_in_subscription( + self, + assessment_metadata_name: str, + assessment_metadata: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityAssessmentMetadataResponse: + """Create metadata information on an assessment type in a specific subscription. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :param assessment_metadata: AssessmentMetadata object. Required. + :type assessment_metadata: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityAssessmentMetadataResponse. The SecurityAssessmentMetadataResponse is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_in_subscription( + self, + assessment_metadata_name: str, + assessment_metadata: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityAssessmentMetadataResponse: + """Create metadata information on an assessment type in a specific subscription. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :param assessment_metadata: AssessmentMetadata object. Required. + :type assessment_metadata: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityAssessmentMetadataResponse. The SecurityAssessmentMetadataResponse is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_in_subscription( + self, + assessment_metadata_name: str, + assessment_metadata: Union[_models.SecurityAssessmentMetadataResponse, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.SecurityAssessmentMetadataResponse: + """Create metadata information on an assessment type in a specific subscription. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :param assessment_metadata: AssessmentMetadata object. Is one of the following types: + SecurityAssessmentMetadataResponse, JSON, IO[bytes] Required. + :type assessment_metadata: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse or + JSON or IO[bytes] + :return: SecurityAssessmentMetadataResponse. The SecurityAssessmentMetadataResponse is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(assessment_metadata, (IOBase, bytes)): + _content = assessment_metadata + else: + _content = json.dumps(assessment_metadata, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_assessments_metadata_create_in_subscription_request( + assessment_metadata_name=assessment_metadata_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityAssessmentMetadataResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete_in_subscription( # pylint: disable=inconsistent-return-statements + self, assessment_metadata_name: str, **kwargs: Any + ) -> None: + """Delete metadata information on an assessment type in a specific subscription, will cause the + deletion of all the assessments of that type in that subscription. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_assessments_metadata_delete_in_subscription_request( + assessment_metadata_name=assessment_metadata_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.SecurityAssessmentMetadataResponse"]: + """Get metadata information on all assessment types in a specific subscription. + + :return: An iterator like instance of SecurityAssessmentMetadataResponse + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityAssessmentMetadataResponse] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[List[_models.SecurityAssessmentMetadataResponse]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_assessments_metadata_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityAssessmentMetadataResponse], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def get(self, assessment_metadata_name: str, **kwargs: Any) -> _models.SecurityAssessmentMetadataResponse: + """Get metadata information on an assessment type. + + :param assessment_metadata_name: The Assessment Key - Unique key for the assessment type. + Required. + :type assessment_metadata_name: str + :return: SecurityAssessmentMetadataResponse. The SecurityAssessmentMetadataResponse is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentMetadataResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[_models.SecurityAssessmentMetadataResponse] = kwargs.pop("cls", None) + + _request = build_assessments_metadata_get_request( + assessment_metadata_name=assessment_metadata_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityAssessmentMetadataResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.SecurityAssessmentMetadataResponse"]: + """Get metadata information on all assessment types. + + :return: An iterator like instance of SecurityAssessmentMetadataResponse + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityAssessmentMetadataResponse] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[List[_models.SecurityAssessmentMetadataResponse]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_assessments_metadata_list_request( + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityAssessmentMetadataResponse], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class AutomationsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`automations` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_group_name: str, automation_name: str, **kwargs: Any) -> _models.Automation: + """Retrieves information about the model of a security automation. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[_models.Automation] = kwargs.pop("cls", None) + + _request = build_automations_get_request( + resource_group_name=resource_group_name, + automation_name=automation_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Automation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + resource_group_name: str, + automation_name: str, + automation: _models.Automation, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Automation: + """Creates or updates a security automation. If a security automation is already created and a + subsequent request is issued for the same automation id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Required. + :type automation: ~azure.mgmt.security.models.Automation + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + automation_name: str, + automation: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Automation: + """Creates or updates a security automation. If a security automation is already created and a + subsequent request is issued for the same automation id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Required. + :type automation: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + automation_name: str, + automation: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Automation: + """Creates or updates a security automation. If a security automation is already created and a + subsequent request is issued for the same automation id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Required. + :type automation: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_group_name: str, + automation_name: str, + automation: Union[_models.Automation, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.Automation: + """Creates or updates a security automation. If a security automation is already created and a + subsequent request is issued for the same automation id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Is one of the following types: Automation, + JSON, IO[bytes] Required. + :type automation: ~azure.mgmt.security.models.Automation or JSON or IO[bytes] + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Automation] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(automation, (IOBase, bytes)): + _content = automation + else: + _content = json.dumps(automation, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_automations_create_or_update_request( + resource_group_name=resource_group_name, + automation_name=automation_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Automation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def update( + self, + resource_group_name: str, + automation_name: str, + automation: _models.AutomationUpdateModel, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Automation: + """Updates a security automation. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The update model of security automation resource. Required. + :type automation: ~azure.mgmt.security.models.AutomationUpdateModel + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + resource_group_name: str, + automation_name: str, + automation: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Automation: + """Updates a security automation. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The update model of security automation resource. Required. + :type automation: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + resource_group_name: str, + automation_name: str, + automation: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Automation: + """Updates a security automation. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The update model of security automation resource. Required. + :type automation: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def update( + self, + resource_group_name: str, + automation_name: str, + automation: Union[_models.AutomationUpdateModel, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.Automation: + """Updates a security automation. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The update model of security automation resource. Is one of the following + types: AutomationUpdateModel, JSON, IO[bytes] Required. + :type automation: ~azure.mgmt.security.models.AutomationUpdateModel or JSON or IO[bytes] + :return: Automation. The Automation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Automation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Automation] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(automation, (IOBase, bytes)): + _content = automation + else: + _content = json.dumps(automation, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_automations_update_request( + resource_group_name=resource_group_name, + automation_name=automation_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Automation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, resource_group_name: str, automation_name: str, **kwargs: Any + ) -> None: + """Deletes a security automation. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_automations_delete_request( + resource_group_name=resource_group_name, + automation_name=automation_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.Automation"]: + """Lists all the security automations in the specified resource group. Use the 'nextLink' property + in the response to get the next page of security automations for the specified resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of Automation + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Automation] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[List[_models.Automation]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_automations_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Automation], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.Automation"]: + """Lists all the security automations in the specified subscription. Use the 'nextLink' property + in the response to get the next page of security automations for the specified subscription. + + :return: An iterator like instance of Automation + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Automation] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[List[_models.Automation]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_automations_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Automation], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @overload + def validate( + self, + resource_group_name: str, + automation_name: str, + automation: _models.Automation, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AutomationValidationStatus: + """Validates the security automation model before create or update. Any validation errors are + returned to the client. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Required. + :type automation: ~azure.mgmt.security.models.Automation + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AutomationValidationStatus. The AutomationValidationStatus is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.AutomationValidationStatus + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def validate( + self, + resource_group_name: str, + automation_name: str, + automation: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AutomationValidationStatus: + """Validates the security automation model before create or update. Any validation errors are + returned to the client. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Required. + :type automation: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AutomationValidationStatus. The AutomationValidationStatus is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.AutomationValidationStatus + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def validate( + self, + resource_group_name: str, + automation_name: str, + automation: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AutomationValidationStatus: + """Validates the security automation model before create or update. Any validation errors are + returned to the client. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Required. + :type automation: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: AutomationValidationStatus. The AutomationValidationStatus is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.AutomationValidationStatus + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def validate( + self, + resource_group_name: str, + automation_name: str, + automation: Union[_models.Automation, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.AutomationValidationStatus: + """Validates the security automation model before create or update. Any validation errors are + returned to the client. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param automation_name: The security automation name. Required. + :type automation_name: str + :param automation: The security automation resource. Is one of the following types: Automation, + JSON, IO[bytes] Required. + :type automation: ~azure.mgmt.security.models.Automation or JSON or IO[bytes] + :return: AutomationValidationStatus. The AutomationValidationStatus is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.AutomationValidationStatus + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutomationValidationStatus] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(automation, (IOBase, bytes)): + _content = automation + else: + _content = json.dumps(automation, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_automations_validate_request( + resource_group_name=resource_group_name, + automation_name=automation_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AutomationValidationStatus, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class SecurityContactsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`security_contacts` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, security_contact_name: Union[str, _models.SecurityContactName], **kwargs: Any + ) -> _models.SecurityContact: + """Get Default Security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object. "default" Required. + :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName + :return: SecurityContact. The SecurityContact is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityContact + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[_models.SecurityContact] = kwargs.pop("cls", None) + + _request = build_security_contacts_get_request( + security_contact_name=security_contact_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityContact, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create( + self, + security_contact_name: Union[str, _models.SecurityContactName], + security_contact: _models.SecurityContact, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityContact: + """Create security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object. "default" Required. + :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName + :param security_contact: Security contact object. Required. + :type security_contact: ~azure.mgmt.security.models.SecurityContact + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityContact. The SecurityContact is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityContact + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create( + self, + security_contact_name: Union[str, _models.SecurityContactName], + security_contact: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityContact: + """Create security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object. "default" Required. + :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName + :param security_contact: Security contact object. Required. + :type security_contact: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityContact. The SecurityContact is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityContact + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create( + self, + security_contact_name: Union[str, _models.SecurityContactName], + security_contact: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityContact: + """Create security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object. "default" Required. + :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName + :param security_contact: Security contact object. Required. + :type security_contact: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityContact. The SecurityContact is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityContact + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create( + self, + security_contact_name: Union[str, _models.SecurityContactName], + security_contact: Union[_models.SecurityContact, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.SecurityContact: + """Create security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object. "default" Required. + :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName + :param security_contact: Security contact object. Is one of the following types: + SecurityContact, JSON, IO[bytes] Required. + :type security_contact: ~azure.mgmt.security.models.SecurityContact or JSON or IO[bytes] + :return: SecurityContact. The SecurityContact is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityContact + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.SecurityContact] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(security_contact, (IOBase, bytes)): + _content = security_contact + else: + _content = json.dumps(security_contact, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_security_contacts_create_request( + security_contact_name=security_contact_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityContact, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, security_contact_name: Union[str, _models.SecurityContactName], **kwargs: Any + ) -> None: + """Delete security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object. "default" Required. + :type security_contact_name: str or ~azure.mgmt.security.models.SecurityContactName + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_security_contacts_delete_request( + security_contact_name=security_contact_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.SecurityContact"]: + """List all security contact configurations for the subscription. + + :return: An iterator like instance of SecurityContact + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityContact] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-12-01-preview")) + cls: ClsType[List[_models.SecurityContact]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_contacts_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityContact], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class ComplianceResultsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`compliance_results` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_id: str, compliance_result_name: str, **kwargs: Any) -> _models.ComplianceResult: + """Security Compliance Result. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param compliance_result_name: The compliance result key. Required. + :type compliance_result_name: str + :return: ComplianceResult. The ComplianceResult is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ComplianceResult + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01")) + cls: ClsType[_models.ComplianceResult] = kwargs.pop("cls", None) + + _request = build_compliance_results_get_request( + resource_id=resource_id, + compliance_result_name=compliance_result_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ComplianceResult, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.ComplianceResult"]: + """Security compliance results in the subscription. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of ComplianceResult + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ComplianceResult] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01")) + cls: ClsType[List[_models.ComplianceResult]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_compliance_results_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ComplianceResult], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class GovernanceAssignmentsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`governance_assignments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, scope: str, assessment_name: str, assignment_key: str, **kwargs: Any) -> _models.GovernanceAssignment: + """Get a specific governanceAssignment for the requested scope by AssignmentKey. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :param assignment_key: The governance assignment key. Required. + :type assignment_key: str + :return: GovernanceAssignment. The GovernanceAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[_models.GovernanceAssignment] = kwargs.pop("cls", None) + + _request = build_governance_assignments_get_request( + scope=scope, + assessment_name=assessment_name, + assignment_key=assignment_key, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GovernanceAssignment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + scope: str, + assessment_name: str, + assignment_key: str, + governance_assignment: _models.GovernanceAssignment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.GovernanceAssignment: + """Creates or updates a governance assignment on the given subscription. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :param assignment_key: The governance assignment key. Required. + :type assignment_key: str + :param governance_assignment: Governance assignment over a subscription scope. Required. + :type governance_assignment: ~azure.mgmt.security.models.GovernanceAssignment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: GovernanceAssignment. The GovernanceAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + scope: str, + assessment_name: str, + assignment_key: str, + governance_assignment: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.GovernanceAssignment: + """Creates or updates a governance assignment on the given subscription. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :param assignment_key: The governance assignment key. Required. + :type assignment_key: str + :param governance_assignment: Governance assignment over a subscription scope. Required. + :type governance_assignment: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: GovernanceAssignment. The GovernanceAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + scope: str, + assessment_name: str, + assignment_key: str, + governance_assignment: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.GovernanceAssignment: + """Creates or updates a governance assignment on the given subscription. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :param assignment_key: The governance assignment key. Required. + :type assignment_key: str + :param governance_assignment: Governance assignment over a subscription scope. Required. + :type governance_assignment: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: GovernanceAssignment. The GovernanceAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + scope: str, + assessment_name: str, + assignment_key: str, + governance_assignment: Union[_models.GovernanceAssignment, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.GovernanceAssignment: + """Creates or updates a governance assignment on the given subscription. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :param assignment_key: The governance assignment key. Required. + :type assignment_key: str + :param governance_assignment: Governance assignment over a subscription scope. Is one of the + following types: GovernanceAssignment, JSON, IO[bytes] Required. + :type governance_assignment: ~azure.mgmt.security.models.GovernanceAssignment or JSON or + IO[bytes] + :return: GovernanceAssignment. The GovernanceAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.GovernanceAssignment] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(governance_assignment, (IOBase, bytes)): + _content = governance_assignment + else: + _content = json.dumps(governance_assignment, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_governance_assignments_create_or_update_request( + scope=scope, + assessment_name=assessment_name, + assignment_key=assignment_key, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GovernanceAssignment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, scope: str, assessment_name: str, assignment_key: str, **kwargs: Any + ) -> None: + """Delete a GovernanceAssignment over a given scope. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :param assignment_key: The governance assignment key. Required. + :type assignment_key: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_governance_assignments_delete_request( + scope=scope, + assessment_name=assessment_name, + assignment_key=assignment_key, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, scope: str, assessment_name: str, **kwargs: Any) -> ItemPaged["_models.GovernanceAssignment"]: + """Get governance assignments on all of your resources inside a scope. + + :param scope: The scope of the governance assignment. Required. + :type scope: str + :param assessment_name: The assessment key of the governance assignment. Required. + :type assessment_name: str + :return: An iterator like instance of GovernanceAssignment + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GovernanceAssignment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[List[_models.GovernanceAssignment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_governance_assignments_list_request( + scope=scope, + assessment_name=assessment_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GovernanceAssignment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class GovernanceRulesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`governance_rules` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, scope: str, rule_id: str, **kwargs: Any) -> _models.GovernanceRule: + """Get a specific governance rule for the requested scope by ruleId. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :return: GovernanceRule. The GovernanceRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[_models.GovernanceRule] = kwargs.pop("cls", None) + + _request = build_governance_rules_get_request( + scope=scope, + rule_id=rule_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GovernanceRule, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + scope: str, + rule_id: str, + governance_rule: _models.GovernanceRule, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.GovernanceRule: + """Creates or updates a governance rule over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param governance_rule: Governance rule over a given scope. Required. + :type governance_rule: ~azure.mgmt.security.models.GovernanceRule + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: GovernanceRule. The GovernanceRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, scope: str, rule_id: str, governance_rule: JSON, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.GovernanceRule: + """Creates or updates a governance rule over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param governance_rule: Governance rule over a given scope. Required. + :type governance_rule: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: GovernanceRule. The GovernanceRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + scope: str, + rule_id: str, + governance_rule: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.GovernanceRule: + """Creates or updates a governance rule over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param governance_rule: Governance rule over a given scope. Required. + :type governance_rule: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: GovernanceRule. The GovernanceRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, scope: str, rule_id: str, governance_rule: Union[_models.GovernanceRule, JSON, IO[bytes]], **kwargs: Any + ) -> _models.GovernanceRule: + """Creates or updates a governance rule over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param governance_rule: Governance rule over a given scope. Is one of the following types: + GovernanceRule, JSON, IO[bytes] Required. + :type governance_rule: ~azure.mgmt.security.models.GovernanceRule or JSON or IO[bytes] + :return: GovernanceRule. The GovernanceRule is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GovernanceRule + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.GovernanceRule] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(governance_rule, (IOBase, bytes)): + _content = governance_rule + else: + _content = json.dumps(governance_rule, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_governance_rules_create_or_update_request( + scope=scope, + rule_id=rule_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GovernanceRule, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + def _delete_initial(self, scope: str, rule_id: str, **kwargs: Any) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_governance_rules_delete_request( + scope=scope, + rule_id=rule_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_delete(self, scope: str, rule_id: str, **kwargs: Any) -> LROPoller[None]: + """Delete a Governance rule over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._delete_initial( + scope=scope, + rule_id=rule_id, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.GovernanceRule"]: + """Get a list of all relevant governance rules over a scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of GovernanceRule + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GovernanceRule] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[List[_models.GovernanceRule]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_governance_rules_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GovernanceRule], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + def _execute_initial( + self, + scope: str, + rule_id: str, + execute_governance_rule_params: Optional[Union[_models.ExecuteGovernanceRuleParams, JSON, IO[bytes]]] = None, + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if execute_governance_rule_params else None + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if execute_governance_rule_params else None + _content = None + if isinstance(execute_governance_rule_params, (IOBase, bytes)): + _content = execute_governance_rule_params + else: + if execute_governance_rule_params is not None: + _content = json.dumps(execute_governance_rule_params, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + else: + _content = None + + _request = build_governance_rules_execute_request( + scope=scope, + rule_id=rule_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_execute( + self, + scope: str, + rule_id: str, + execute_governance_rule_params: Optional[_models.ExecuteGovernanceRuleParams] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: + """Execute a governance rule. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param execute_governance_rule_params: Execute governance rule over a given scope. Default + value is None. + :type execute_governance_rule_params: ~azure.mgmt.security.models.ExecuteGovernanceRuleParams + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_execute( + self, + scope: str, + rule_id: str, + execute_governance_rule_params: Optional[JSON] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: + """Execute a governance rule. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param execute_governance_rule_params: Execute governance rule over a given scope. Default + value is None. + :type execute_governance_rule_params: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_execute( + self, + scope: str, + rule_id: str, + execute_governance_rule_params: Optional[IO[bytes]] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: + """Execute a governance rule. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param execute_governance_rule_params: Execute governance rule over a given scope. Default + value is None. + :type execute_governance_rule_params: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_execute( + self, + scope: str, + rule_id: str, + execute_governance_rule_params: Optional[Union[_models.ExecuteGovernanceRuleParams, JSON, IO[bytes]]] = None, + **kwargs: Any + ) -> LROPoller[None]: + """Execute a governance rule. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param rule_id: The governance rule key - unique key for the standard governance rule (GUID). + Required. + :type rule_id: str + :param execute_governance_rule_params: Execute governance rule over a given scope. Is one of + the following types: ExecuteGovernanceRuleParams, JSON, IO[bytes] Default value is None. + :type execute_governance_rule_params: ~azure.mgmt.security.models.ExecuteGovernanceRuleParams + or JSON or IO[bytes] + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if execute_governance_rule_params else None + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._execute_initial( + scope=scope, + rule_id=rule_id, + execute_governance_rule_params=execute_governance_rule_params, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def operation_results( + self, scope: str, rule_id: str, operation_id: str, **kwargs: Any + ) -> Optional[_models.OperationResultAutoGenerated]: + """Get governance rules long run operation result for the requested scope by ruleId and + operationId. + + :param scope: The scope of the governance rule. Required. + :type scope: str + :param rule_id: The governance rule key. Required. + :type rule_id: str + :param operation_id: The governance rule long running operation unique key. Required. + :type operation_id: str + :return: OperationResultAutoGenerated or None. The OperationResultAutoGenerated is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.OperationResultAutoGenerated or None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) + cls: ClsType[Optional[_models.OperationResultAutoGenerated]] = kwargs.pop("cls", None) + + _request = build_governance_rules_operation_results_request( + scope=scope, + rule_id=rule_id, + operation_id=operation_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + deserialized = None + response_headers = {} + if response.status_code == 200: + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.OperationResultAutoGenerated, response.json()) + + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + +class HealthReportsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`health_reports` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_id: str, health_report_name: str, **kwargs: Any) -> _models.HealthReport: + """Get health report of resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param health_report_name: The health report key. Required. + :type health_report_name: str + :return: HealthReport. The HealthReport is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.HealthReport + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01-preview")) + cls: ClsType[_models.HealthReport] = kwargs.pop("cls", None) + + _request = build_health_reports_get_request( + resource_id=resource_id, + health_report_name=health_report_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.HealthReport, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.HealthReport"]: + """Get a list of all health reports inside a scope. Valid scopes are: subscription (format: + 'subscriptions/{subscriptionId}'), or security connector (format: + 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of HealthReport + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.HealthReport] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01-preview")) + cls: ClsType[List[_models.HealthReport]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_health_reports_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.HealthReport], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class DeviceSecurityGroupsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`device_security_groups` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_id: str, device_security_group_name: str, **kwargs: Any) -> _models.DeviceSecurityGroup: + """Use this method to get the device security group for the specified IoT Hub resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param device_security_group_name: The name of the device security group. Note that the name of + the device security group is case insensitive. Required. + :type device_security_group_name: str + :return: DeviceSecurityGroup. The DeviceSecurityGroup is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[_models.DeviceSecurityGroup] = kwargs.pop("cls", None) + + _request = build_device_security_groups_get_request( + resource_id=resource_id, + device_security_group_name=device_security_group_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DeviceSecurityGroup, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + resource_id: str, + device_security_group_name: str, + device_security_group: _models.DeviceSecurityGroup, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DeviceSecurityGroup: + """Use this method to creates or updates the device security group on a specified IoT Hub + resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param device_security_group_name: The name of the device security group. Note that the name of + the device security group is case insensitive. Required. + :type device_security_group_name: str + :param device_security_group: Security group object. Required. + :type device_security_group: ~azure.mgmt.security.models.DeviceSecurityGroup + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: DeviceSecurityGroup. The DeviceSecurityGroup is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_id: str, + device_security_group_name: str, + device_security_group: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DeviceSecurityGroup: + """Use this method to creates or updates the device security group on a specified IoT Hub + resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param device_security_group_name: The name of the device security group. Note that the name of + the device security group is case insensitive. Required. + :type device_security_group_name: str + :param device_security_group: Security group object. Required. + :type device_security_group: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: DeviceSecurityGroup. The DeviceSecurityGroup is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_id: str, + device_security_group_name: str, + device_security_group: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DeviceSecurityGroup: + """Use this method to creates or updates the device security group on a specified IoT Hub + resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param device_security_group_name: The name of the device security group. Note that the name of + the device security group is case insensitive. Required. + :type device_security_group_name: str + :param device_security_group: Security group object. Required. + :type device_security_group: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: DeviceSecurityGroup. The DeviceSecurityGroup is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_id: str, + device_security_group_name: str, + device_security_group: Union[_models.DeviceSecurityGroup, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.DeviceSecurityGroup: + """Use this method to creates or updates the device security group on a specified IoT Hub + resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param device_security_group_name: The name of the device security group. Note that the name of + the device security group is case insensitive. Required. + :type device_security_group_name: str + :param device_security_group: Security group object. Is one of the following types: + DeviceSecurityGroup, JSON, IO[bytes] Required. + :type device_security_group: ~azure.mgmt.security.models.DeviceSecurityGroup or JSON or + IO[bytes] + :return: DeviceSecurityGroup. The DeviceSecurityGroup is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.DeviceSecurityGroup + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.DeviceSecurityGroup] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(device_security_group, (IOBase, bytes)): + _content = device_security_group + else: + _content = json.dumps(device_security_group, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_device_security_groups_create_or_update_request( + resource_id=resource_id, + device_security_group_name=device_security_group_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DeviceSecurityGroup, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, resource_id: str, device_security_group_name: str, **kwargs: Any + ) -> None: + """User this method to deletes the device security group. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param device_security_group_name: The name of the device security group. Note that the name of + the device security group is case insensitive. Required. + :type device_security_group_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_device_security_groups_delete_request( + resource_id=resource_id, + device_security_group_name=device_security_group_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, resource_id: str, **kwargs: Any) -> ItemPaged["_models.DeviceSecurityGroup"]: + """Use this method get the list of device security groups for the specified IoT Hub resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :return: An iterator like instance of DeviceSecurityGroup + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.DeviceSecurityGroup] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[List[_models.DeviceSecurityGroup]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_device_security_groups_list_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DeviceSecurityGroup], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class AutoProvisioningSettingsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`auto_provisioning_settings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, setting_name: str, **kwargs: Any) -> _models.AutoProvisioningSetting: + """Details of a specific setting. + + :param setting_name: Auto provisioning setting key. Required. + :type setting_name: str + :return: AutoProvisioningSetting. The AutoProvisioningSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[_models.AutoProvisioningSetting] = kwargs.pop("cls", None) + + _request = build_auto_provisioning_settings_get_request( + setting_name=setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AutoProvisioningSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create( + self, + setting_name: str, + setting: _models.AutoProvisioningSetting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AutoProvisioningSetting: + """Details of a specific setting. + + :param setting_name: Auto provisioning setting key. Required. + :type setting_name: str + :param setting: Auto provisioning setting key. Required. + :type setting: ~azure.mgmt.security.models.AutoProvisioningSetting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AutoProvisioningSetting. The AutoProvisioningSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create( + self, setting_name: str, setting: JSON, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.AutoProvisioningSetting: + """Details of a specific setting. + + :param setting_name: Auto provisioning setting key. Required. + :type setting_name: str + :param setting: Auto provisioning setting key. Required. + :type setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AutoProvisioningSetting. The AutoProvisioningSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create( + self, setting_name: str, setting: IO[bytes], *, content_type: str = "application/json", **kwargs: Any + ) -> _models.AutoProvisioningSetting: + """Details of a specific setting. + + :param setting_name: Auto provisioning setting key. Required. + :type setting_name: str + :param setting: Auto provisioning setting key. Required. + :type setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: AutoProvisioningSetting. The AutoProvisioningSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create( + self, setting_name: str, setting: Union[_models.AutoProvisioningSetting, JSON, IO[bytes]], **kwargs: Any + ) -> _models.AutoProvisioningSetting: + """Details of a specific setting. + + :param setting_name: Auto provisioning setting key. Required. + :type setting_name: str + :param setting: Auto provisioning setting key. Is one of the following types: + AutoProvisioningSetting, JSON, IO[bytes] Required. + :type setting: ~azure.mgmt.security.models.AutoProvisioningSetting or JSON or IO[bytes] + :return: AutoProvisioningSetting. The AutoProvisioningSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutoProvisioningSetting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(setting, (IOBase, bytes)): + _content = setting + else: + _content = json.dumps(setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_auto_provisioning_settings_create_request( + setting_name=setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AutoProvisioningSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.AutoProvisioningSetting"]: + """Exposes the auto provisioning settings of the subscriptions. + + :return: An iterator like instance of AutoProvisioningSetting + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AutoProvisioningSetting] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[List[_models.AutoProvisioningSetting]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_auto_provisioning_settings_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AutoProvisioningSetting], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class CompliancesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`compliances` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, scope: str, compliance_name: str, **kwargs: Any) -> _models.Compliance: + """Details of a specific Compliance. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param compliance_name: name of the Compliance. Required. + :type compliance_name: str + :return: Compliance. The Compliance is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Compliance + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[_models.Compliance] = kwargs.pop("cls", None) + + _request = build_compliances_get_request( + scope=scope, + compliance_name=compliance_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Compliance, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.Compliance"]: + """The Compliance scores of the specific management group. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of Compliance + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Compliance] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[List[_models.Compliance]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_compliances_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Compliance], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class InformationProtectionPoliciesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`information_protection_policies` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, + scope: str, + information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], + **kwargs: Any + ) -> _models.InformationProtectionPolicy: + """Details of the information protection policy. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param information_protection_policy_name: Name of the information protection policy. Known + values are: "effective" and "custom". Required. + :type information_protection_policy_name: str or + ~azure.mgmt.security.models.InformationProtectionPolicyName + :return: InformationProtectionPolicy. The InformationProtectionPolicy is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[_models.InformationProtectionPolicy] = kwargs.pop("cls", None) + + _request = build_information_protection_policies_get_request( + scope=scope, + information_protection_policy_name=information_protection_policy_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.InformationProtectionPolicy, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + scope: str, + information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], + information_protection_policy: _models.InformationProtectionPolicy, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.InformationProtectionPolicy: + """Details of the information protection policy. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param information_protection_policy_name: Name of the information protection policy. Known + values are: "effective" and "custom". Required. + :type information_protection_policy_name: str or + ~azure.mgmt.security.models.InformationProtectionPolicyName + :param information_protection_policy: Information protection policy. Required. + :type information_protection_policy: ~azure.mgmt.security.models.InformationProtectionPolicy + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: InformationProtectionPolicy. The InformationProtectionPolicy is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + scope: str, + information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], + information_protection_policy: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.InformationProtectionPolicy: + """Details of the information protection policy. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param information_protection_policy_name: Name of the information protection policy. Known + values are: "effective" and "custom". Required. + :type information_protection_policy_name: str or + ~azure.mgmt.security.models.InformationProtectionPolicyName + :param information_protection_policy: Information protection policy. Required. + :type information_protection_policy: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: InformationProtectionPolicy. The InformationProtectionPolicy is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + scope: str, + information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], + information_protection_policy: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.InformationProtectionPolicy: + """Details of the information protection policy. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param information_protection_policy_name: Name of the information protection policy. Known + values are: "effective" and "custom". Required. + :type information_protection_policy_name: str or + ~azure.mgmt.security.models.InformationProtectionPolicyName + :param information_protection_policy: Information protection policy. Required. + :type information_protection_policy: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: InformationProtectionPolicy. The InformationProtectionPolicy is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + scope: str, + information_protection_policy_name: Union[str, _models.InformationProtectionPolicyName], + information_protection_policy: Union[_models.InformationProtectionPolicy, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.InformationProtectionPolicy: + """Details of the information protection policy. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param information_protection_policy_name: Name of the information protection policy. Known + values are: "effective" and "custom". Required. + :type information_protection_policy_name: str or + ~azure.mgmt.security.models.InformationProtectionPolicyName + :param information_protection_policy: Information protection policy. Is one of the following + types: InformationProtectionPolicy, JSON, IO[bytes] Required. + :type information_protection_policy: ~azure.mgmt.security.models.InformationProtectionPolicy or + JSON or IO[bytes] + :return: InformationProtectionPolicy. The InformationProtectionPolicy is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.InformationProtectionPolicy] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(information_protection_policy, (IOBase, bytes)): + _content = information_protection_policy + else: + _content = json.dumps(information_protection_policy, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_information_protection_policies_create_or_update_request( + scope=scope, + information_protection_policy_name=information_protection_policy_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.InformationProtectionPolicy, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.InformationProtectionPolicy"]: + """Information protection policies of a specific management group. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of InformationProtectionPolicy + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.InformationProtectionPolicy] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[List[_models.InformationProtectionPolicy]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_information_protection_policies_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.InformationProtectionPolicy], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class WorkspaceSettingsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`workspace_settings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, workspace_setting_name: str, **kwargs: Any) -> _models.WorkspaceSetting: + """Settings about where we should store your security data and logs. If the result is empty, it + means that no custom-workspace configuration was set. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[_models.WorkspaceSetting] = kwargs.pop("cls", None) + + _request = build_workspace_settings_get_request( + workspace_setting_name=workspace_setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.WorkspaceSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create( + self, + workspace_setting_name: str, + workspace_setting: _models.WorkspaceSetting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.WorkspaceSetting: + """creating settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Required. + :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create( + self, + workspace_setting_name: str, + workspace_setting: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.WorkspaceSetting: + """creating settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Required. + :type workspace_setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create( + self, + workspace_setting_name: str, + workspace_setting: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.WorkspaceSetting: + """creating settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Required. + :type workspace_setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create( + self, + workspace_setting_name: str, + workspace_setting: Union[_models.WorkspaceSetting, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.WorkspaceSetting: + """creating settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Is one of the following types: + WorkspaceSetting, JSON, IO[bytes] Required. + :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting or JSON or IO[bytes] + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.WorkspaceSetting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(workspace_setting, (IOBase, bytes)): + _content = workspace_setting + else: + _content = json.dumps(workspace_setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_workspace_settings_create_request( + workspace_setting_name=workspace_setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.WorkspaceSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def update( + self, + workspace_setting_name: str, + workspace_setting: _models.WorkspaceSetting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.WorkspaceSetting: + """Settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Required. + :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + workspace_setting_name: str, + workspace_setting: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.WorkspaceSetting: + """Settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Required. + :type workspace_setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + workspace_setting_name: str, + workspace_setting: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.WorkspaceSetting: + """Settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Required. + :type workspace_setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def update( + self, + workspace_setting_name: str, + workspace_setting: Union[_models.WorkspaceSetting, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.WorkspaceSetting: + """Settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :param workspace_setting: Security data setting object. Is one of the following types: + WorkspaceSetting, JSON, IO[bytes] Required. + :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting or JSON or IO[bytes] + :return: WorkspaceSetting. The WorkspaceSetting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.WorkspaceSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.WorkspaceSetting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(workspace_setting, (IOBase, bytes)): + _content = workspace_setting + else: + _content = json.dumps(workspace_setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_workspace_settings_update_request( + workspace_setting_name=workspace_setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.WorkspaceSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, workspace_setting_name: str, **kwargs: Any + ) -> None: + """Deletes the custom workspace settings for this subscription. new VMs will report to the default + workspace. + + :param workspace_setting_name: Name of the security setting. Required. + :type workspace_setting_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_workspace_settings_delete_request( + workspace_setting_name=workspace_setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.WorkspaceSetting"]: + """Settings about where we should store your security data and logs. If the result is empty, it + means that no custom-workspace configuration was set. + + :return: An iterator like instance of WorkspaceSetting + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.WorkspaceSetting] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) + cls: ClsType[List[_models.WorkspaceSetting]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_workspace_settings_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.WorkspaceSetting], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class MdeOnboardingsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`mde_onboardings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, **kwargs: Any) -> _models.MdeOnboardingData: + """The default configuration or data needed to onboard the machine to MDE. + + :return: MdeOnboardingData. The MdeOnboardingData is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.MdeOnboardingData + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-10-01-preview")) + cls: ClsType[_models.MdeOnboardingData] = kwargs.pop("cls", None) + + _request = build_mde_onboardings_get_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.MdeOnboardingData, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.MdeOnboardingData"]: + """The configuration or data needed to onboard the machine to MDE. + + :return: An iterator like instance of MdeOnboardingData + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.MdeOnboardingData] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-10-01-preview")) + cls: ClsType[List[_models.MdeOnboardingData]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_mde_onboardings_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.MdeOnboardingData], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class Operations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`operations` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.Operation"]: + """Exposes all available operations for discovery purposes. + + :return: An iterator like instance of Operation + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Operation] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + cls: ClsType[List[_models.Operation]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_operations_list_request( + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Operation], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class PricingsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`pricings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, scope_id: str, pricing_name: str, **kwargs: Any) -> _models.Pricing: + """Get the Defender plans pricing configurations of the selected scope (valid scopes are resource + id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, + VMSS and ARC Machines'. + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :param pricing_name: name of the pricing configuration. Required. + :type pricing_name: str + :return: Pricing. The Pricing is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Pricing + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) + cls: ClsType[_models.Pricing] = kwargs.pop("cls", None) + + _request = build_pricings_get_request( + scope_id=scope_id, + pricing_name=pricing_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Pricing, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def update( + self, + scope_id: str, + pricing_name: str, + pricing: _models.Pricing, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Pricing: + """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid + scopes are: subscription id or a specific resource id (Supported resources are: + 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :param pricing_name: name of the pricing configuration. Required. + :type pricing_name: str + :param pricing: Pricing object. Required. + :type pricing: ~azure.mgmt.security.models.Pricing + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Pricing. The Pricing is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Pricing + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, scope_id: str, pricing_name: str, pricing: JSON, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.Pricing: + """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid + scopes are: subscription id or a specific resource id (Supported resources are: + 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :param pricing_name: name of the pricing configuration. Required. + :type pricing_name: str + :param pricing: Pricing object. Required. + :type pricing: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Pricing. The Pricing is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Pricing + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + scope_id: str, + pricing_name: str, + pricing: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Pricing: + """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid + scopes are: subscription id or a specific resource id (Supported resources are: + 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :param pricing_name: name of the pricing configuration. Required. + :type pricing_name: str + :param pricing: Pricing object. Required. + :type pricing: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Pricing. The Pricing is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Pricing + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def update( + self, scope_id: str, pricing_name: str, pricing: Union[_models.Pricing, JSON, IO[bytes]], **kwargs: Any + ) -> _models.Pricing: + """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid + scopes are: subscription id or a specific resource id (Supported resources are: + 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :param pricing_name: name of the pricing configuration. Required. + :type pricing_name: str + :param pricing: Pricing object. Is one of the following types: Pricing, JSON, IO[bytes] + Required. + :type pricing: ~azure.mgmt.security.models.Pricing or JSON or IO[bytes] + :return: Pricing. The Pricing is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Pricing + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Pricing] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(pricing, (IOBase, bytes)): + _content = pricing + else: + _content = json.dumps(pricing, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_pricings_update_request( + scope_id=scope_id, + pricing_name=pricing_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Pricing, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, scope_id: str, pricing_name: str, **kwargs: Any + ) -> None: + """Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. + Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS, ARC Machines, + and Containers'). + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :param pricing_name: name of the pricing configuration. Required. + :type pricing_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_pricings_delete_request( + scope_id=scope_id, + pricing_name=pricing_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, scope_id: str, *, filter: Optional[str] = None, **kwargs: Any) -> ItemPaged["_models.Pricing"]: + """Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the + optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported + resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in + ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be + returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes + the pricings set for 'planName1' and 'planName2' only. + + :param scope_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type scope_id: str + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of Pricing + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Pricing] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) + cls: ClsType[List[_models.Pricing]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_pricings_list_request( + scope_id=scope_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Pricing], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class PrivateLinkResourcesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`private_link_resources` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, private_link_name: str, group_id: str, **kwargs: Any + ) -> _models.PrivateLinkGroupResource: + """Get the specified private link resource associated with the private link. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param group_id: The group ID of the private link resource. Required. + :type group_id: str + :return: PrivateLinkGroupResource. The PrivateLinkGroupResource is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateLinkGroupResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[_models.PrivateLinkGroupResource] = kwargs.pop("cls", None) + + _request = build_private_link_resources_get_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + group_id=group_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.PrivateLinkGroupResource, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, private_link_name: str, **kwargs: Any + ) -> ItemPaged["_models.PrivateLinkGroupResource"]: + """List all private link resources in a private link. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :return: An iterator like instance of PrivateLinkGroupResource + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.PrivateLinkGroupResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[List[_models.PrivateLinkGroupResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_private_link_resources_list_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.PrivateLinkGroupResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class PrivateEndpointConnectionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`private_endpoint_connections` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, private_endpoint_connection_name: str, **kwargs: Any + ) -> _models.PrivateEndpointConnection: + """Gets the specified private endpoint connection associated with the private link. Returns the + connection details, status, and configuration for a specific private endpoint. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_endpoint_connection_name: The name of the private endpoint connection associated + with the Azure resource. Required. + :type private_endpoint_connection_name: str + :return: PrivateEndpointConnection. The PrivateEndpointConnection is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateEndpointConnection + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) + + _request = build_private_endpoint_connections_get_request( + resource_group_name=resource_group_name, + private_endpoint_connection_name=private_endpoint_connection_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.PrivateEndpointConnection, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + def _create_or_update_initial( + self, + resource_group_name: str, + private_link_name: str, + private_endpoint_connection_name: str, + private_endpoint_connection: Union[_models.PrivateEndpointConnection, JSON, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(private_endpoint_connection, (IOBase, bytes)): + _content = private_endpoint_connection + else: + _content = json.dumps(private_endpoint_connection, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_private_endpoint_connections_create_or_update_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + private_endpoint_connection_name=private_endpoint_connection_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + private_link_name: str, + private_endpoint_connection_name: str, + private_endpoint_connection: _models.PrivateEndpointConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.PrivateEndpointConnection]: + """Update the state of specified private endpoint connection associated with the private link. + This operation is typically used to approve or reject pending private endpoint connections. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_endpoint_connection_name: The name of the private endpoint connection associated + with the Azure resource. Required. + :type private_endpoint_connection_name: str + :param private_endpoint_connection: The private endpoint connection resource. Required. + :type private_endpoint_connection: ~azure.mgmt.security.models.PrivateEndpointConnection + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns PrivateEndpointConnection. The + PrivateEndpointConnection is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + private_link_name: str, + private_endpoint_connection_name: str, + private_endpoint_connection: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.PrivateEndpointConnection]: + """Update the state of specified private endpoint connection associated with the private link. + This operation is typically used to approve or reject pending private endpoint connections. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_endpoint_connection_name: The name of the private endpoint connection associated + with the Azure resource. Required. + :type private_endpoint_connection_name: str + :param private_endpoint_connection: The private endpoint connection resource. Required. + :type private_endpoint_connection: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns PrivateEndpointConnection. The + PrivateEndpointConnection is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + private_link_name: str, + private_endpoint_connection_name: str, + private_endpoint_connection: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.PrivateEndpointConnection]: + """Update the state of specified private endpoint connection associated with the private link. + This operation is typically used to approve or reject pending private endpoint connections. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_endpoint_connection_name: The name of the private endpoint connection associated + with the Azure resource. Required. + :type private_endpoint_connection_name: str + :param private_endpoint_connection: The private endpoint connection resource. Required. + :type private_endpoint_connection: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns PrivateEndpointConnection. The + PrivateEndpointConnection is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_create_or_update( + self, + resource_group_name: str, + private_link_name: str, + private_endpoint_connection_name: str, + private_endpoint_connection: Union[_models.PrivateEndpointConnection, JSON, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.PrivateEndpointConnection]: + """Update the state of specified private endpoint connection associated with the private link. + This operation is typically used to approve or reject pending private endpoint connections. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_endpoint_connection_name: The name of the private endpoint connection associated + with the Azure resource. Required. + :type private_endpoint_connection_name: str + :param private_endpoint_connection: The private endpoint connection resource. Is one of the + following types: PrivateEndpointConnection, JSON, IO[bytes] Required. + :type private_endpoint_connection: ~azure.mgmt.security.models.PrivateEndpointConnection or + JSON or IO[bytes] + :return: An instance of LROPoller that returns PrivateEndpointConnection. The + PrivateEndpointConnection is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + private_endpoint_connection_name=private_endpoint_connection_name, + private_endpoint_connection=private_endpoint_connection, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.PrivateEndpointConnection, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.PrivateEndpointConnection].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.PrivateEndpointConnection]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + def _delete_initial( + self, resource_group_name: str, private_link_name: str, private_endpoint_connection_name: str, **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_private_endpoint_connections_delete_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + private_endpoint_connection_name=private_endpoint_connection_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_delete( + self, resource_group_name: str, private_link_name: str, private_endpoint_connection_name: str, **kwargs: Any + ) -> LROPoller[None]: + """Deletes the specified private endpoint connection associated with the private link. This + operation will disconnect the private endpoint and remove the connection configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_endpoint_connection_name: The name of the private endpoint connection associated + with the Azure resource. Required. + :type private_endpoint_connection_name: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + private_endpoint_connection_name=private_endpoint_connection_name, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, private_link_name: str, **kwargs: Any + ) -> ItemPaged["_models.PrivateEndpointConnection"]: + """Gets all private endpoint connections for a private link. Returns the list of private endpoints + that are connected or in the process of connecting to this private link. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :return: An iterator like instance of PrivateEndpointConnection + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.PrivateEndpointConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[List[_models.PrivateEndpointConnection]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_private_endpoint_connections_list_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.PrivateEndpointConnection], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class RegulatoryComplianceStandardsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`regulatory_compliance_standards` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, regulatory_compliance_standard_name: str, **kwargs: Any) -> _models.RegulatoryComplianceStandard: + """Supported regulatory compliance details state for selected standard. + + :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. + Required. + :type regulatory_compliance_standard_name: str + :return: RegulatoryComplianceStandard. The RegulatoryComplianceStandard is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.RegulatoryComplianceStandard + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[_models.RegulatoryComplianceStandard] = kwargs.pop("cls", None) + + _request = build_regulatory_compliance_standards_get_request( + regulatory_compliance_standard_name=regulatory_compliance_standard_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.RegulatoryComplianceStandard, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, *, filter: Optional[str] = None, **kwargs: Any) -> ItemPaged["_models.RegulatoryComplianceStandard"]: + """Supported regulatory compliance standards details and state. + + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of RegulatoryComplianceStandard + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.RegulatoryComplianceStandard] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[List[_models.RegulatoryComplianceStandard]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_regulatory_compliance_standards_list_request( + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.RegulatoryComplianceStandard], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class RegulatoryComplianceControlsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`regulatory_compliance_controls` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, regulatory_compliance_standard_name: str, regulatory_compliance_control_name: str, **kwargs: Any + ) -> _models.RegulatoryComplianceControl: + """Selected regulatory compliance control details and state. + + :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. + Required. + :type regulatory_compliance_standard_name: str + :param regulatory_compliance_control_name: Name of the regulatory compliance control object. + Required. + :type regulatory_compliance_control_name: str + :return: RegulatoryComplianceControl. The RegulatoryComplianceControl is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.RegulatoryComplianceControl + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[_models.RegulatoryComplianceControl] = kwargs.pop("cls", None) + + _request = build_regulatory_compliance_controls_get_request( + regulatory_compliance_standard_name=regulatory_compliance_standard_name, + regulatory_compliance_control_name=regulatory_compliance_control_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.RegulatoryComplianceControl, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, regulatory_compliance_standard_name: str, *, filter: Optional[str] = None, **kwargs: Any + ) -> ItemPaged["_models.RegulatoryComplianceControl"]: + """All supported regulatory compliance controls details and state for selected standard. + + :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. + Required. + :type regulatory_compliance_standard_name: str + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of RegulatoryComplianceControl + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.RegulatoryComplianceControl] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[List[_models.RegulatoryComplianceControl]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_regulatory_compliance_controls_list_request( + regulatory_compliance_standard_name=regulatory_compliance_standard_name, + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.RegulatoryComplianceControl], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class RegulatoryComplianceAssessmentsOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`regulatory_compliance_assessments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, + regulatory_compliance_standard_name: str, + regulatory_compliance_control_name: str, + regulatory_compliance_assessment_name: str, + **kwargs: Any + ) -> _models.RegulatoryComplianceAssessment: + """Supported regulatory compliance details and state for selected assessment. + + :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. + Required. + :type regulatory_compliance_standard_name: str + :param regulatory_compliance_control_name: Name of the regulatory compliance control object. + Required. + :type regulatory_compliance_control_name: str + :param regulatory_compliance_assessment_name: Name of the regulatory compliance assessment + object. Required. + :type regulatory_compliance_assessment_name: str + :return: RegulatoryComplianceAssessment. The RegulatoryComplianceAssessment is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.RegulatoryComplianceAssessment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[_models.RegulatoryComplianceAssessment] = kwargs.pop("cls", None) + + _request = build_regulatory_compliance_assessments_get_request( + regulatory_compliance_standard_name=regulatory_compliance_standard_name, + regulatory_compliance_control_name=regulatory_compliance_control_name, + regulatory_compliance_assessment_name=regulatory_compliance_assessment_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.RegulatoryComplianceAssessment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, + regulatory_compliance_standard_name: str, + regulatory_compliance_control_name: str, + *, + filter: Optional[str] = None, + **kwargs: Any + ) -> ItemPaged["_models.RegulatoryComplianceAssessment"]: + """Details and state of assessments mapped to selected regulatory compliance control. + + :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. + Required. + :type regulatory_compliance_standard_name: str + :param regulatory_compliance_control_name: Name of the regulatory compliance control object. + Required. + :type regulatory_compliance_control_name: str + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of RegulatoryComplianceAssessment + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.RegulatoryComplianceAssessment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[List[_models.RegulatoryComplianceAssessment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_regulatory_compliance_assessments_list_request( + regulatory_compliance_standard_name=regulatory_compliance_standard_name, + regulatory_compliance_control_name=regulatory_compliance_control_name, + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.RegulatoryComplianceAssessment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SecurityConnectorsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`security_connectors` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_group_name: str, security_connector_name: str, **kwargs: Any) -> _models.SecurityConnector: + """Retrieves details of a specific security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + cls: ClsType[_models.SecurityConnector] = kwargs.pop("cls", None) + + _request = build_security_connectors_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityConnector, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: _models.SecurityConnector, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityConnector: + """Creates or updates a security connector. If a security connector is already created and a + subsequent request is issued for the same security connector id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Required. + :type security_connector: ~azure.mgmt.security.models.SecurityConnector + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityConnector: + """Creates or updates a security connector. If a security connector is already created and a + subsequent request is issued for the same security connector id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Required. + :type security_connector: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityConnector: + """Creates or updates a security connector. If a security connector is already created and a + subsequent request is issued for the same security connector id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Required. + :type security_connector: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: Union[_models.SecurityConnector, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.SecurityConnector: + """Creates or updates a security connector. If a security connector is already created and a + subsequent request is issued for the same security connector id, then it will be updated. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Is one of the following types: + SecurityConnector, JSON, IO[bytes] Required. + :type security_connector: ~azure.mgmt.security.models.SecurityConnector or JSON or IO[bytes] + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.SecurityConnector] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(security_connector, (IOBase, bytes)): + _content = security_connector + else: + _content = json.dumps(security_connector, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_security_connectors_create_or_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityConnector, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: _models.SecurityConnector, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityConnector: + """Updates a security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Required. + :type security_connector: ~azure.mgmt.security.models.SecurityConnector + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityConnector: + """Updates a security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Required. + :type security_connector: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityConnector: + """Updates a security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Required. + :type security_connector: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def update( + self, + resource_group_name: str, + security_connector_name: str, + security_connector: Union[_models.SecurityConnector, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.SecurityConnector: + """Updates a security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param security_connector: The security connector resource. Is one of the following types: + SecurityConnector, JSON, IO[bytes] Required. + :type security_connector: ~azure.mgmt.security.models.SecurityConnector or JSON or IO[bytes] + :return: SecurityConnector. The SecurityConnector is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityConnector + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.SecurityConnector] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(security_connector, (IOBase, bytes)): + _content = security_connector + else: + _content = json.dumps(security_connector, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_security_connectors_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityConnector, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> None: + """Deletes a security connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_security_connectors_delete_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.SecurityConnector"]: + """Lists all the security connectors in the specified resource group. Use the 'nextLink' property + in the response to get the next page of security connectors for the specified resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of SecurityConnector + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityConnector] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + cls: ClsType[List[_models.SecurityConnector]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_connectors_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityConnector], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.SecurityConnector"]: + """Lists all the security connectors in the specified subscription. Use the 'nextLink' property in + the response to get the next page of security connectors for the specified subscription. + + :return: An iterator like instance of SecurityConnector + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityConnector] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) + cls: ClsType[List[_models.SecurityConnector]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_connectors_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityConnector], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class AzureDevOpsOrgsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`azure_dev_ops_orgs` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, security_connector_name: str, org_name: str, **kwargs: Any + ) -> _models.AzureDevOpsOrg: + """Returns a monitored Azure DevOps organization resource. + + Returns a monitored Azure DevOps organization resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :return: AzureDevOpsOrg. The AzureDevOpsOrg is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AzureDevOpsOrg + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) + + _request = build_azure_dev_ops_orgs_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AzureDevOpsOrg, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + def _create_or_update_initial( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: Union[_models.AzureDevOpsOrg, JSON, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(azure_dev_ops_org, (IOBase, bytes)): + _content = azure_dev_ops_org + else: + _content = json.dumps(azure_dev_ops_org, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_azure_dev_ops_orgs_create_or_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: _models.AzureDevOpsOrg, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsOrg]: + """Creates or updates monitored Azure DevOps organization details. + + Creates or updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. + :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsOrg]: + """Creates or updates monitored Azure DevOps organization details. + + Creates or updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. + :type azure_dev_ops_org: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsOrg]: + """Creates or updates monitored Azure DevOps organization details. + + Creates or updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. + :type azure_dev_ops_org: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: Union[_models.AzureDevOpsOrg, JSON, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsOrg]: + """Creates or updates monitored Azure DevOps organization details. + + Creates or updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Is one of the + following types: AzureDevOpsOrg, JSON, IO[bytes] Required. + :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg or JSON or IO[bytes] + :return: An instance of LROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + azure_dev_ops_org=azure_dev_ops_org, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AzureDevOpsOrg, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AzureDevOpsOrg].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AzureDevOpsOrg]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + def _update_initial( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: Union[_models.AzureDevOpsOrg, JSON, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(azure_dev_ops_org, (IOBase, bytes)): + _content = azure_dev_ops_org + else: + _content = json.dumps(azure_dev_ops_org, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_azure_dev_ops_orgs_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: _models.AzureDevOpsOrg, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsOrg]: + """Updates monitored Azure DevOps organization details. + + Updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. + :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsOrg]: + """Updates monitored Azure DevOps organization details. + + Updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. + :type azure_dev_ops_org: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsOrg]: + """Updates monitored Azure DevOps organization details. + + Updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Required. + :type azure_dev_ops_org: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + azure_dev_ops_org: Union[_models.AzureDevOpsOrg, JSON, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsOrg]: + """Updates monitored Azure DevOps organization details. + + Updates monitored Azure DevOps organization details. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param azure_dev_ops_org: The Azure DevOps organization resource payload. Is one of the + following types: AzureDevOpsOrg, JSON, IO[bytes] Required. + :type azure_dev_ops_org: ~azure.mgmt.security.models.AzureDevOpsOrg or JSON or IO[bytes] + :return: An instance of LROPoller that returns AzureDevOpsOrg. The AzureDevOpsOrg is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AzureDevOpsOrg] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + azure_dev_ops_org=azure_dev_ops_org, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AzureDevOpsOrg, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AzureDevOpsOrg].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AzureDevOpsOrg]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> ItemPaged["_models.AzureDevOpsOrg"]: + """Returns a list of Azure DevOps organizations onboarded to the connector. + + Returns a list of Azure DevOps organizations onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: An iterator like instance of AzureDevOpsOrg + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AzureDevOpsOrg] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.AzureDevOpsOrg]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_azure_dev_ops_orgs_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AzureDevOpsOrg], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_available( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> _models.AzureDevOpsOrgListResponse: + """Returns a list of all Azure DevOps organizations accessible by the user token consumed by the + connector. + + Returns a list of all Azure DevOps organizations accessible by the user token consumed by the + connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: AzureDevOpsOrgListResponse. The AzureDevOpsOrgListResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.AzureDevOpsOrgListResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.AzureDevOpsOrgListResponse] = kwargs.pop("cls", None) + + _request = build_azure_dev_ops_orgs_list_available_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AzureDevOpsOrgListResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class GitHubOwnersOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`git_hub_owners` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, security_connector_name: str, owner_name: str, **kwargs: Any + ) -> _models.GitHubOwner: + """Returns a monitored GitHub owner. + + Returns a monitored GitHub owner. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :return: GitHubOwner. The GitHubOwner is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitHubOwner + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitHubOwner] = kwargs.pop("cls", None) + + _request = build_git_hub_owners_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitHubOwner, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> ItemPaged["_models.GitHubOwner"]: + """Returns a list of GitHub owners onboarded to the connector. + + Returns a list of GitHub owners onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: An iterator like instance of GitHubOwner + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GitHubOwner] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.GitHubOwner]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_git_hub_owners_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GitHubOwner], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_available( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> _models.GitHubOwnerListResponse: + """Returns a list of all GitHub owners accessible by the user token consumed by the connector. + + Returns a list of all GitHub owners accessible by the user token consumed by the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: GitHubOwnerListResponse. The GitHubOwnerListResponse is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitHubOwnerListResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitHubOwnerListResponse] = kwargs.pop("cls", None) + + _request = build_git_hub_owners_list_available_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitHubOwnerListResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class GitLabGroupsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`git_lab_groups` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, security_connector_name: str, group_fq_name: str, **kwargs: Any + ) -> _models.GitLabGroup: + """Returns a monitored GitLab Group resource for a given fully-qualified name. + + Returns a monitored GitLab Group resource for a given fully-qualified name. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param group_fq_name: Required. + :type group_fq_name: str + :return: GitLabGroup. The GitLabGroup is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitLabGroup + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitLabGroup] = kwargs.pop("cls", None) + + _request = build_git_lab_groups_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + group_fq_name=group_fq_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitLabGroup, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> ItemPaged["_models.GitLabGroup"]: + """Returns a list of GitLab groups onboarded to the connector. + + Returns a list of GitLab groups onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: An iterator like instance of GitLabGroup + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GitLabGroup] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.GitLabGroup]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_git_lab_groups_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GitLabGroup], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_available( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> _models.GitLabGroupListResponse: + """Returns a list of all GitLab groups accessible by the user token consumed by the connector. + + Returns a list of all GitLab groups accessible by the user token consumed by the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: GitLabGroupListResponse. The GitLabGroupListResponse is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitLabGroupListResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) + + _request = build_git_lab_groups_list_available_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitLabGroupListResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class DevOpsConfigurationsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`dev_ops_configurations` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_group_name: str, security_connector_name: str, **kwargs: Any) -> _models.DevOpsConfiguration: + """Gets a DevOps Configuration. + + Gets a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: DevOpsConfiguration. The DevOpsConfiguration is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.DevOpsConfiguration + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) + + _request = build_dev_ops_configurations_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DevOpsConfiguration, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + def _create_or_update_initial( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: Union[_models.DevOpsConfiguration, JSON, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(dev_ops_configuration, (IOBase, bytes)): + _content = dev_ops_configuration + else: + _content = json.dumps(dev_ops_configuration, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_dev_ops_configurations_create_or_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: _models.DevOpsConfiguration, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.DevOpsConfiguration]: + """Creates or updates a DevOps Configuration. + + Creates or updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Required. + :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns DevOpsConfiguration. The DevOpsConfiguration is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.DevOpsConfiguration]: + """Creates or updates a DevOps Configuration. + + Creates or updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Required. + :type dev_ops_configuration: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns DevOpsConfiguration. The DevOpsConfiguration is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.DevOpsConfiguration]: + """Creates or updates a DevOps Configuration. + + Creates or updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Required. + :type dev_ops_configuration: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns DevOpsConfiguration. The DevOpsConfiguration is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: Union[_models.DevOpsConfiguration, JSON, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.DevOpsConfiguration]: + """Creates or updates a DevOps Configuration. + + Creates or updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Is one of the + following types: DevOpsConfiguration, JSON, IO[bytes] Required. + :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration or JSON or + IO[bytes] + :return: An instance of LROPoller that returns DevOpsConfiguration. The DevOpsConfiguration is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + dev_ops_configuration=dev_ops_configuration, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.DevOpsConfiguration, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.DevOpsConfiguration].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.DevOpsConfiguration]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + def _update_initial( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: Union[_models.DevOpsConfiguration, JSON, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(dev_ops_configuration, (IOBase, bytes)): + _content = dev_ops_configuration + else: + _content = json.dumps(dev_ops_configuration, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_dev_ops_configurations_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: _models.DevOpsConfiguration, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.DevOpsConfiguration]: + """Updates a DevOps Configuration. + + Updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Required. + :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns DevOpsConfiguration. The DevOpsConfiguration is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.DevOpsConfiguration]: + """Updates a DevOps Configuration. + + Updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Required. + :type dev_ops_configuration: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns DevOpsConfiguration. The DevOpsConfiguration is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.DevOpsConfiguration]: + """Updates a DevOps Configuration. + + Updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Required. + :type dev_ops_configuration: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns DevOpsConfiguration. The DevOpsConfiguration is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + dev_ops_configuration: Union[_models.DevOpsConfiguration, JSON, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.DevOpsConfiguration]: + """Updates a DevOps Configuration. + + Updates a DevOps Configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param dev_ops_configuration: The DevOps configuration resource payload. Is one of the + following types: DevOpsConfiguration, JSON, IO[bytes] Required. + :type dev_ops_configuration: ~azure.mgmt.security.models.DevOpsConfiguration or JSON or + IO[bytes] + :return: An instance of LROPoller that returns DevOpsConfiguration. The DevOpsConfiguration is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.DevOpsConfiguration] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + dev_ops_configuration=dev_ops_configuration, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.DevOpsConfiguration, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.DevOpsConfiguration].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.DevOpsConfiguration]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + def _delete_initial(self, resource_group_name: str, security_connector_name: str, **kwargs: Any) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_dev_ops_configurations_delete_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_delete(self, resource_group_name: str, security_connector_name: str, **kwargs: Any) -> LROPoller[None]: + """Deletes a DevOps Connector. + + Deletes a DevOps Connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> ItemPaged["_models.DevOpsConfiguration"]: + """List DevOps Configurations. + + List DevOps Configurations. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: An iterator like instance of DevOpsConfiguration + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.DevOpsConfiguration] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.DevOpsConfiguration]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_dev_ops_configurations_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DevOpsConfiguration], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class AzureDevOpsProjectsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`azure_dev_ops_projects` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, security_connector_name: str, org_name: str, project_name: str, **kwargs: Any + ) -> _models.AzureDevOpsProject: + """Returns a monitored Azure DevOps project resource. + + Returns a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :return: AzureDevOpsProject. The AzureDevOpsProject is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AzureDevOpsProject + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) + + _request = build_azure_dev_ops_projects_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AzureDevOpsProject, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + def _create_or_update_initial( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: Union[_models.AzureDevOpsProject, JSON, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(azure_dev_ops_project, (IOBase, bytes)): + _content = azure_dev_ops_project + else: + _content = json.dumps(azure_dev_ops_project, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_azure_dev_ops_projects_create_or_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: _models.AzureDevOpsProject, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsProject]: + """Creates or updates a monitored Azure DevOps project resource. + + Creates or updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. + :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsProject. The AzureDevOpsProject is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsProject]: + """Creates or updates a monitored Azure DevOps project resource. + + Creates or updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. + :type azure_dev_ops_project: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsProject. The AzureDevOpsProject is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsProject]: + """Creates or updates a monitored Azure DevOps project resource. + + Creates or updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. + :type azure_dev_ops_project: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsProject. The AzureDevOpsProject is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: Union[_models.AzureDevOpsProject, JSON, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsProject]: + """Creates or updates a monitored Azure DevOps project resource. + + Creates or updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Is one of the + following types: AzureDevOpsProject, JSON, IO[bytes] Required. + :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject or JSON or + IO[bytes] + :return: An instance of LROPoller that returns AzureDevOpsProject. The AzureDevOpsProject is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + azure_dev_ops_project=azure_dev_ops_project, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AzureDevOpsProject, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AzureDevOpsProject].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AzureDevOpsProject]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + def _update_initial( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: Union[_models.AzureDevOpsProject, JSON, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(azure_dev_ops_project, (IOBase, bytes)): + _content = azure_dev_ops_project + else: + _content = json.dumps(azure_dev_ops_project, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_azure_dev_ops_projects_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: _models.AzureDevOpsProject, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsProject]: + """Updates a monitored Azure DevOps project resource. + + Updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. + :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsProject. The AzureDevOpsProject is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsProject]: + """Updates a monitored Azure DevOps project resource. + + Updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. + :type azure_dev_ops_project: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsProject. The AzureDevOpsProject is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsProject]: + """Updates a monitored Azure DevOps project resource. + + Updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Required. + :type azure_dev_ops_project: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsProject. The AzureDevOpsProject is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + azure_dev_ops_project: Union[_models.AzureDevOpsProject, JSON, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsProject]: + """Updates a monitored Azure DevOps project resource. + + Updates a monitored Azure DevOps project resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param azure_dev_ops_project: The Azure DevOps project resource payload. Is one of the + following types: AzureDevOpsProject, JSON, IO[bytes] Required. + :type azure_dev_ops_project: ~azure.mgmt.security.models.AzureDevOpsProject or JSON or + IO[bytes] + :return: An instance of LROPoller that returns AzureDevOpsProject. The AzureDevOpsProject is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AzureDevOpsProject] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + azure_dev_ops_project=azure_dev_ops_project, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AzureDevOpsProject, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AzureDevOpsProject].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AzureDevOpsProject]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, org_name: str, **kwargs: Any + ) -> ItemPaged["_models.AzureDevOpsProject"]: + """Returns a list of Azure DevOps projects onboarded to the connector. + + Returns a list of Azure DevOps projects onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :return: An iterator like instance of AzureDevOpsProject + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AzureDevOpsProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.AzureDevOpsProject]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_azure_dev_ops_projects_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AzureDevOpsProject], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class GitLabProjectsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`git_lab_projects` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, + resource_group_name: str, + security_connector_name: str, + group_fq_name: str, + project_name: str, + **kwargs: Any + ) -> _models.GitLabProject: + """Returns a monitored GitLab Project resource for a given fully-qualified group name and project + name. + + Returns a monitored GitLab Project resource for a given fully-qualified group name and project + name. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param group_fq_name: Required. + :type group_fq_name: str + :param project_name: Required. + :type project_name: str + :return: GitLabProject. The GitLabProject is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitLabProject + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitLabProject] = kwargs.pop("cls", None) + + _request = build_git_lab_projects_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + group_fq_name=group_fq_name, + project_name=project_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitLabProject, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, group_fq_name: str, **kwargs: Any + ) -> ItemPaged["_models.GitLabProject"]: + """Gets a list of GitLab projects that are directly owned by given group and onboarded to the + connector. + + Gets a list of GitLab projects that are directly owned by given group and onboarded to the + connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param group_fq_name: Required. + :type group_fq_name: str + :return: An iterator like instance of GitLabProject + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GitLabProject] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.GitLabProject]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_git_lab_projects_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + group_fq_name=group_fq_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GitLabProject], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SecurityOperatorsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`security_operators` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, pricing_name: str, security_operator_name: str, **kwargs: Any) -> _models.SecurityOperator: + """Get a specific security operator for the requested scope. + + :param pricing_name: Name of the pricing configuration. Required. + :type pricing_name: str + :param security_operator_name: Name of the security operator. Required. + :type security_operator_name: str + :return: SecurityOperator. The SecurityOperator is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityOperator + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) + cls: ClsType[_models.SecurityOperator] = kwargs.pop("cls", None) + + _request = build_security_operators_get_request( + pricing_name=pricing_name, + security_operator_name=security_operator_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityOperator, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def create_or_update( + self, pricing_name: str, security_operator_name: str, **kwargs: Any + ) -> _models.SecurityOperator: + """Creates Microsoft Defender for Cloud security operator on the given scope. + + :param pricing_name: Name of the pricing configuration. Required. + :type pricing_name: str + :param security_operator_name: Name of the security operator. Required. + :type security_operator_name: str + :return: SecurityOperator. The SecurityOperator is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityOperator + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) + cls: ClsType[_models.SecurityOperator] = kwargs.pop("cls", None) + + _request = build_security_operators_create_or_update_request( + pricing_name=pricing_name, + security_operator_name=security_operator_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityOperator, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, pricing_name: str, security_operator_name: str, **kwargs: Any + ) -> None: + """Delete Microsoft Defender for Cloud securityOperator in the subscription. + + :param pricing_name: Name of the pricing configuration. Required. + :type pricing_name: str + :param security_operator_name: Name of the security operator. Required. + :type security_operator_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_security_operators_delete_request( + pricing_name=pricing_name, + security_operator_name=security_operator_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, pricing_name: str, **kwargs: Any) -> ItemPaged["_models.SecurityOperator"]: + """Lists Microsoft Defender for Cloud securityOperators in the subscription. + + :param pricing_name: Name of the pricing configuration. Required. + :type pricing_name: str + :return: An iterator like instance of SecurityOperator + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityOperator] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) + cls: ClsType[List[_models.SecurityOperator]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_operators_list_request( + pricing_name=pricing_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityOperator], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class DiscoveredSecuritySolutionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`discovered_security_solutions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, asc_location: str, discovered_security_solution_name: str, **kwargs: Any + ) -> _models.DiscoveredSecuritySolution: + """Gets a specific discovered Security Solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param discovered_security_solution_name: Name of a discovered security solution. Required. + :type discovered_security_solution_name: str + :return: DiscoveredSecuritySolution. The DiscoveredSecuritySolution is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.DiscoveredSecuritySolution + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.DiscoveredSecuritySolution] = kwargs.pop("cls", None) + + _request = build_discovered_security_solutions_get_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + discovered_security_solution_name=discovered_security_solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DiscoveredSecuritySolution, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_home_region(self, asc_location: str, **kwargs: Any) -> ItemPaged["_models.DiscoveredSecuritySolution"]: + """Gets a list of discovered Security Solutions for the subscription and location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of DiscoveredSecuritySolution + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.DiscoveredSecuritySolution] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.DiscoveredSecuritySolution]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_discovered_security_solutions_list_by_home_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DiscoveredSecuritySolution], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.DiscoveredSecuritySolution"]: + """Gets a list of discovered Security Solutions for the subscription. + + :return: An iterator like instance of DiscoveredSecuritySolution + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.DiscoveredSecuritySolution] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.DiscoveredSecuritySolution]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_discovered_security_solutions_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DiscoveredSecuritySolution], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class ExternalSecuritySolutionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`external_security_solutions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, asc_location: str, external_security_solutions_name: str, **kwargs: Any + ) -> _models.ExternalSecuritySolution: + """Gets a specific external Security Solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param external_security_solutions_name: Name of an external security solution. Required. + :type external_security_solutions_name: str + :return: ExternalSecuritySolution. The ExternalSecuritySolution is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.ExternalSecuritySolution + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.ExternalSecuritySolution] = kwargs.pop("cls", None) + + _request = build_external_security_solutions_get_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + external_security_solutions_name=external_security_solutions_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ExternalSecuritySolution, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_home_region(self, asc_location: str, **kwargs: Any) -> ItemPaged["_models.ExternalSecuritySolution"]: + """Gets a list of external Security Solutions for the subscription and location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of ExternalSecuritySolution + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ExternalSecuritySolution] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.ExternalSecuritySolution]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_external_security_solutions_list_by_home_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ExternalSecuritySolution], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.ExternalSecuritySolution"]: + """Gets a list of external security solutions for the subscription. + + :return: An iterator like instance of ExternalSecuritySolution + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ExternalSecuritySolution] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.ExternalSecuritySolution]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_external_security_solutions_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ExternalSecuritySolution], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class JitNetworkAccessPoliciesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`jit_network_access_policies` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, asc_location: str, jit_network_access_policy_name: str, **kwargs: Any + ) -> _models.JitNetworkAccessPolicy: + """Policies for protecting resources using Just-in-Time access control for the subscription, + location. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :return: JitNetworkAccessPolicy. The JitNetworkAccessPolicy is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.JitNetworkAccessPolicy] = kwargs.pop("cls", None) + + _request = build_jit_network_access_policies_get_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + jit_network_access_policy_name=jit_network_access_policy_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.JitNetworkAccessPolicy, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: _models.JitNetworkAccessPolicy, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.JitNetworkAccessPolicy: + """Create a policy for protecting resources using Just-in-Time access control. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Required. + :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: JitNetworkAccessPolicy. The JitNetworkAccessPolicy is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.JitNetworkAccessPolicy: + """Create a policy for protecting resources using Just-in-Time access control. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Required. + :type body: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: JitNetworkAccessPolicy. The JitNetworkAccessPolicy is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.JitNetworkAccessPolicy: + """Create a policy for protecting resources using Just-in-Time access control. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: JitNetworkAccessPolicy. The JitNetworkAccessPolicy is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: Union[_models.JitNetworkAccessPolicy, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.JitNetworkAccessPolicy: + """Create a policy for protecting resources using Just-in-Time access control. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Is one of the following types: JitNetworkAccessPolicy, JSON, IO[bytes] Required. + :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicy or JSON or IO[bytes] + :return: JitNetworkAccessPolicy. The JitNetworkAccessPolicy is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.JitNetworkAccessPolicy] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_jit_network_access_policies_create_or_update_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + jit_network_access_policy_name=jit_network_access_policy_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.JitNetworkAccessPolicy, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, resource_group_name: str, asc_location: str, jit_network_access_policy_name: str, **kwargs: Any + ) -> None: + """Delete a Just-in-Time access control policy. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_jit_network_access_policies_delete_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + jit_network_access_policy_name=jit_network_access_policy_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_resource_group_and_region( + self, resource_group_name: str, asc_location: str, **kwargs: Any + ) -> ItemPaged["_models.JitNetworkAccessPolicy"]: + """Policies for protecting resources using Just-in-Time access control for the subscription, + location. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of JitNetworkAccessPolicy + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.JitNetworkAccessPolicy]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_jit_network_access_policies_list_by_resource_group_and_region_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.JitNetworkAccessPolicy], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_region(self, asc_location: str, **kwargs: Any) -> ItemPaged["_models.JitNetworkAccessPolicy"]: + """Policies for protecting resources using Just-in-Time access control for the subscription, + location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of JitNetworkAccessPolicy + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.JitNetworkAccessPolicy]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_jit_network_access_policies_list_by_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.JitNetworkAccessPolicy], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @overload + def initiate( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: _models.JitNetworkAccessPolicyInitiateRequest, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.JitNetworkAccessRequest: + """Initiate a JIT access from a specific Just-in-Time policy configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Required. + :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateRequest + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: JitNetworkAccessRequest. The JitNetworkAccessRequest is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def initiate( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.JitNetworkAccessRequest: + """Initiate a JIT access from a specific Just-in-Time policy configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Required. + :type body: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: JitNetworkAccessRequest. The JitNetworkAccessRequest is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def initiate( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.JitNetworkAccessRequest: + """Initiate a JIT access from a specific Just-in-Time policy configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: JitNetworkAccessRequest. The JitNetworkAccessRequest is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def initiate( + self, + resource_group_name: str, + asc_location: str, + jit_network_access_policy_name: str, + body: Union[_models.JitNetworkAccessPolicyInitiateRequest, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.JitNetworkAccessRequest: + """Initiate a JIT access from a specific Just-in-Time policy configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param jit_network_access_policy_name: Name of a Just-in-Time access configuration policy. + Required. + :type jit_network_access_policy_name: str + :param body: Is one of the following types: JitNetworkAccessPolicyInitiateRequest, JSON, + IO[bytes] Required. + :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateRequest or JSON or + IO[bytes] + :return: JitNetworkAccessRequest. The JitNetworkAccessRequest is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + jit_network_access_policy_initiate_type: Literal["initiate"] = kwargs.pop( + "jit_network_access_policy_initiate_type", "initiate" + ) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.JitNetworkAccessRequest] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_jit_network_access_policies_initiate_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + jit_network_access_policy_name=jit_network_access_policy_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + jit_network_access_policy_initiate_type=jit_network_access_policy_initiate_type, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.JitNetworkAccessRequest, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.JitNetworkAccessPolicy"]: + """Policies for protecting resources using Just-in-Time access control. + + :return: An iterator like instance of JitNetworkAccessPolicy + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.JitNetworkAccessPolicy]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_jit_network_access_policies_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.JitNetworkAccessPolicy], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_resource_group( + self, resource_group_name: str, **kwargs: Any + ) -> ItemPaged["_models.JitNetworkAccessPolicy"]: + """Policies for protecting resources using Just-in-Time access control for the subscription, + location. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of JitNetworkAccessPolicy + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.JitNetworkAccessPolicy]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_jit_network_access_policies_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.JitNetworkAccessPolicy], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SecuritySolutionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`security_solutions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, asc_location: str, security_solution_name: str, **kwargs: Any + ) -> _models.SecuritySolution: + """Gets a specific Security Solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param security_solution_name: Name of security solution. Required. + :type security_solution_name: str + :return: SecuritySolution. The SecuritySolution is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecuritySolution + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.SecuritySolution] = kwargs.pop("cls", None) + + _request = build_security_solutions_get_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + security_solution_name=security_solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecuritySolution, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.SecuritySolution"]: + """Gets a list of Security Solutions for the subscription. + + :return: An iterator like instance of SecuritySolution + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecuritySolution] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.SecuritySolution]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_solutions_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecuritySolution], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SecurityStandardsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`security_standards` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, scope: str, standard_id: str, **kwargs: Any) -> _models.SecurityStandard: + """Get a specific security standard for the requested scope by standardId. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :return: SecurityStandard. The SecurityStandard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityStandard + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[_models.SecurityStandard] = kwargs.pop("cls", None) + + _request = build_security_standards_get_request( + scope=scope, + standard_id=standard_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityStandard, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + scope: str, + standard_id: str, + standard: _models.SecurityStandard, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityStandard: + """Creates or updates a security standard over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: ~azure.mgmt.security.models.SecurityStandard + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityStandard. The SecurityStandard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityStandard + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, scope: str, standard_id: str, standard: JSON, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.SecurityStandard: + """Creates or updates a security standard over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityStandard. The SecurityStandard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityStandard + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + scope: str, + standard_id: str, + standard: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityStandard: + """Creates or updates a security standard over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityStandard. The SecurityStandard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityStandard + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, scope: str, standard_id: str, standard: Union[_models.SecurityStandard, JSON, IO[bytes]], **kwargs: Any + ) -> _models.SecurityStandard: + """Creates or updates a security standard over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Is one of the following + types: SecurityStandard, JSON, IO[bytes] Required. + :type standard: ~azure.mgmt.security.models.SecurityStandard or JSON or IO[bytes] + :return: SecurityStandard. The SecurityStandard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityStandard + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.SecurityStandard] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(standard, (IOBase, bytes)): + _content = standard + else: + _content = json.dumps(standard, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_security_standards_create_or_update_request( + scope=scope, + standard_id=standard_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityStandard, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, scope: str, standard_id: str, **kwargs: Any + ) -> None: + """Delete a security standard over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_security_standards_delete_request( + scope=scope, + standard_id=standard_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.SecurityStandard"]: + """Get a list of all relevant security standards over a scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of SecurityStandard + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityStandard] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[List[_models.SecurityStandard]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_standards_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityStandard], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class StandardAssignmentsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`standard_assignments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_id: str, standard_assignment_name: str, **kwargs: Any) -> _models.StandardAssignment: + """Retrieves a standard assignment. + + This operation retrieves a single standard assignment, given its name and the scope it was + created at. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param standard_assignment_name: The standard assignments assignment key - unique key for the + standard assignment. Required. + :type standard_assignment_name: str + :return: StandardAssignment. The StandardAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.StandardAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[_models.StandardAssignment] = kwargs.pop("cls", None) + + _request = build_standard_assignments_get_request( + resource_id=resource_id, + standard_assignment_name=standard_assignment_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.StandardAssignment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create( + self, + resource_id: str, + standard_assignment_name: str, + standard_assignment: _models.StandardAssignment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.StandardAssignment: + """Creates or updates a standard assignment. + + This operation creates or updates a standard assignment with the given scope and name. standard + assignments apply to all resources contained within their scope. For example, when you assign a + policy at resource group scope, that policy applies to all resources in the group. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param standard_assignment_name: The standard assignments assignment key - unique key for the + standard assignment. Required. + :type standard_assignment_name: str + :param standard_assignment: Custom standard assignment over a pre-defined scope. Required. + :type standard_assignment: ~azure.mgmt.security.models.StandardAssignment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: StandardAssignment. The StandardAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.StandardAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create( + self, + resource_id: str, + standard_assignment_name: str, + standard_assignment: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.StandardAssignment: + """Creates or updates a standard assignment. + + This operation creates or updates a standard assignment with the given scope and name. standard + assignments apply to all resources contained within their scope. For example, when you assign a + policy at resource group scope, that policy applies to all resources in the group. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param standard_assignment_name: The standard assignments assignment key - unique key for the + standard assignment. Required. + :type standard_assignment_name: str + :param standard_assignment: Custom standard assignment over a pre-defined scope. Required. + :type standard_assignment: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: StandardAssignment. The StandardAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.StandardAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create( + self, + resource_id: str, + standard_assignment_name: str, + standard_assignment: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.StandardAssignment: + """Creates or updates a standard assignment. + + This operation creates or updates a standard assignment with the given scope and name. standard + assignments apply to all resources contained within their scope. For example, when you assign a + policy at resource group scope, that policy applies to all resources in the group. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param standard_assignment_name: The standard assignments assignment key - unique key for the + standard assignment. Required. + :type standard_assignment_name: str + :param standard_assignment: Custom standard assignment over a pre-defined scope. Required. + :type standard_assignment: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: StandardAssignment. The StandardAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.StandardAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create( + self, + resource_id: str, + standard_assignment_name: str, + standard_assignment: Union[_models.StandardAssignment, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.StandardAssignment: + """Creates or updates a standard assignment. + + This operation creates or updates a standard assignment with the given scope and name. standard + assignments apply to all resources contained within their scope. For example, when you assign a + policy at resource group scope, that policy applies to all resources in the group. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param standard_assignment_name: The standard assignments assignment key - unique key for the + standard assignment. Required. + :type standard_assignment_name: str + :param standard_assignment: Custom standard assignment over a pre-defined scope. Is one of the + following types: StandardAssignment, JSON, IO[bytes] Required. + :type standard_assignment: ~azure.mgmt.security.models.StandardAssignment or JSON or IO[bytes] + :return: StandardAssignment. The StandardAssignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.StandardAssignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.StandardAssignment] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(standard_assignment, (IOBase, bytes)): + _content = standard_assignment + else: + _content = json.dumps(standard_assignment, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_standard_assignments_create_request( + resource_id=resource_id, + standard_assignment_name=standard_assignment_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.StandardAssignment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, resource_id: str, standard_assignment_name: str, **kwargs: Any + ) -> None: + """Deletes a standard assignment. + + This operation deletes a standard assignment, given its name and the scope it was created in. + The scope of a standard assignment is the part of its ID preceding + '/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}'. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param standard_assignment_name: The standard assignments assignment key - unique key for the + standard assignment. Required. + :type standard_assignment_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_standard_assignments_delete_request( + resource_id=resource_id, + standard_assignment_name=standard_assignment_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.StandardAssignment"]: + """Get a list of all relevant standard assignments over a scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of StandardAssignment + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.StandardAssignment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[List[_models.StandardAssignment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_standard_assignments_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.StandardAssignment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class CustomRecommendationsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`custom_recommendations` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, scope: str, custom_recommendation_name: str, **kwargs: Any) -> _models.CustomRecommendation: + """Get a specific custom recommendation for the requested scope by customRecommendationName. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param custom_recommendation_name: Name of the Custom Recommendation. Required. + :type custom_recommendation_name: str + :return: CustomRecommendation. The CustomRecommendation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.CustomRecommendation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[_models.CustomRecommendation] = kwargs.pop("cls", None) + + _request = build_custom_recommendations_get_request( + scope=scope, + custom_recommendation_name=custom_recommendation_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.CustomRecommendation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + scope: str, + custom_recommendation_name: str, + custom_recommendation_body: _models.CustomRecommendation, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.CustomRecommendation: + """Creates or updates a custom recommendation over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param custom_recommendation_name: Name of the Custom Recommendation. Required. + :type custom_recommendation_name: str + :param custom_recommendation_body: Custom Recommendation body. Required. + :type custom_recommendation_body: ~azure.mgmt.security.models.CustomRecommendation + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: CustomRecommendation. The CustomRecommendation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.CustomRecommendation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + scope: str, + custom_recommendation_name: str, + custom_recommendation_body: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.CustomRecommendation: + """Creates or updates a custom recommendation over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param custom_recommendation_name: Name of the Custom Recommendation. Required. + :type custom_recommendation_name: str + :param custom_recommendation_body: Custom Recommendation body. Required. + :type custom_recommendation_body: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: CustomRecommendation. The CustomRecommendation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.CustomRecommendation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + scope: str, + custom_recommendation_name: str, + custom_recommendation_body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.CustomRecommendation: + """Creates or updates a custom recommendation over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param custom_recommendation_name: Name of the Custom Recommendation. Required. + :type custom_recommendation_name: str + :param custom_recommendation_body: Custom Recommendation body. Required. + :type custom_recommendation_body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: CustomRecommendation. The CustomRecommendation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.CustomRecommendation + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + scope: str, + custom_recommendation_name: str, + custom_recommendation_body: Union[_models.CustomRecommendation, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.CustomRecommendation: + """Creates or updates a custom recommendation over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param custom_recommendation_name: Name of the Custom Recommendation. Required. + :type custom_recommendation_name: str + :param custom_recommendation_body: Custom Recommendation body. Is one of the following types: + CustomRecommendation, JSON, IO[bytes] Required. + :type custom_recommendation_body: ~azure.mgmt.security.models.CustomRecommendation or JSON or + IO[bytes] + :return: CustomRecommendation. The CustomRecommendation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.CustomRecommendation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.CustomRecommendation] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(custom_recommendation_body, (IOBase, bytes)): + _content = custom_recommendation_body + else: + _content = json.dumps(custom_recommendation_body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_custom_recommendations_create_or_update_request( + scope=scope, + custom_recommendation_name=custom_recommendation_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.CustomRecommendation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, scope: str, custom_recommendation_name: str, **kwargs: Any + ) -> None: + """Delete a custom recommendation over a given scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :param custom_recommendation_name: Name of the Custom Recommendation. Required. + :type custom_recommendation_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_custom_recommendations_delete_request( + scope=scope, + custom_recommendation_name=custom_recommendation_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.CustomRecommendation"]: + """Get a list of all relevant custom recommendations over a scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of CustomRecommendation + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.CustomRecommendation] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) + cls: ClsType[List[_models.CustomRecommendation]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_custom_recommendations_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.CustomRecommendation], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class ServerVulnerabilityAssessmentsSettingsOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`server_vulnerability_assessments_settings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], **kwargs: Any + ) -> _models.ServerVulnerabilityAssessmentsSetting: + """Get a server vulnerability assessments setting of the requested kind, that is set on the + subscription. + + :param setting_kind: The kind of the server vulnerability assessments setting. + "azureServersSetting" Required. + :type setting_kind: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName + :return: ServerVulnerabilityAssessmentsSetting. The ServerVulnerabilityAssessmentsSetting is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) + cls: ClsType[_models.ServerVulnerabilityAssessmentsSetting] = kwargs.pop("cls", None) + + _request = build_server_vulnerability_assessments_settings_get_request( + setting_kind=setting_kind, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ServerVulnerabilityAssessmentsSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], + server_vulnerability_assessments_setting: _models.ServerVulnerabilityAssessmentsSetting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.ServerVulnerabilityAssessmentsSetting: + """Create or update a server vulnerability assessments setting of the requested kind on the + subscription. + + :param setting_kind: The kind of the server vulnerability assessments setting. + "azureServersSetting" Required. + :type setting_kind: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName + :param server_vulnerability_assessments_setting: A server vulnerability assessments setting + over a predefined scope. Required. + :type server_vulnerability_assessments_setting: + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: ServerVulnerabilityAssessmentsSetting. The ServerVulnerabilityAssessmentsSetting is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], + server_vulnerability_assessments_setting: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.ServerVulnerabilityAssessmentsSetting: + """Create or update a server vulnerability assessments setting of the requested kind on the + subscription. + + :param setting_kind: The kind of the server vulnerability assessments setting. + "azureServersSetting" Required. + :type setting_kind: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName + :param server_vulnerability_assessments_setting: A server vulnerability assessments setting + over a predefined scope. Required. + :type server_vulnerability_assessments_setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: ServerVulnerabilityAssessmentsSetting. The ServerVulnerabilityAssessmentsSetting is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], + server_vulnerability_assessments_setting: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.ServerVulnerabilityAssessmentsSetting: + """Create or update a server vulnerability assessments setting of the requested kind on the + subscription. + + :param setting_kind: The kind of the server vulnerability assessments setting. + "azureServersSetting" Required. + :type setting_kind: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName + :param server_vulnerability_assessments_setting: A server vulnerability assessments setting + over a predefined scope. Required. + :type server_vulnerability_assessments_setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: ServerVulnerabilityAssessmentsSetting. The ServerVulnerabilityAssessmentsSetting is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], + server_vulnerability_assessments_setting: Union[_models.ServerVulnerabilityAssessmentsSetting, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.ServerVulnerabilityAssessmentsSetting: + """Create or update a server vulnerability assessments setting of the requested kind on the + subscription. + + :param setting_kind: The kind of the server vulnerability assessments setting. + "azureServersSetting" Required. + :type setting_kind: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName + :param server_vulnerability_assessments_setting: A server vulnerability assessments setting + over a predefined scope. Is one of the following types: ServerVulnerabilityAssessmentsSetting, + JSON, IO[bytes] Required. + :type server_vulnerability_assessments_setting: + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting or JSON or IO[bytes] + :return: ServerVulnerabilityAssessmentsSetting. The ServerVulnerabilityAssessmentsSetting is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.ServerVulnerabilityAssessmentsSetting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(server_vulnerability_assessments_setting, (IOBase, bytes)): + _content = server_vulnerability_assessments_setting + else: + _content = json.dumps(server_vulnerability_assessments_setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_server_vulnerability_assessments_settings_create_or_update_request( + setting_kind=setting_kind, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ServerVulnerabilityAssessmentsSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], **kwargs: Any + ) -> None: + """Delete the server vulnerability assessments setting of the requested kind from the + subscription. + + :param setting_kind: The kind of the server vulnerability assessments setting. + "azureServersSetting" Required. + :type setting_kind: str or + ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_server_vulnerability_assessments_settings_delete_request( + setting_kind=setting_kind, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.ServerVulnerabilityAssessmentsSetting"]: + """Get a list of all the server vulnerability assessments settings over a subscription level + scope. + + :return: An iterator like instance of ServerVulnerabilityAssessmentsSetting + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) + cls: ClsType[List[_models.ServerVulnerabilityAssessmentsSetting]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_server_vulnerability_assessments_settings_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ServerVulnerabilityAssessmentsSetting], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SettingsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`settings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, setting_name: Union[str, _models.SettingName], **kwargs: Any) -> _models.Setting: + """Settings of different configurations in Microsoft Defender for Cloud. + + :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :return: Setting. The Setting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Setting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) + cls: ClsType[_models.Setting] = kwargs.pop("cls", None) + + _request = build_settings_get_request( + setting_name=setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Setting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def update( + self, + setting_name: Union[str, _models.SettingName], + setting: _models.Setting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Setting: + """updating settings about different configurations in Microsoft Defender for Cloud. + + :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param setting: Setting object. Required. + :type setting: ~azure.mgmt.security.models.Setting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Setting. The Setting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Setting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + setting_name: Union[str, _models.SettingName], + setting: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Setting: + """updating settings about different configurations in Microsoft Defender for Cloud. + + :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param setting: Setting object. Required. + :type setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Setting. The Setting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Setting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + setting_name: Union[str, _models.SettingName], + setting: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Setting: + """updating settings about different configurations in Microsoft Defender for Cloud. + + :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param setting: Setting object. Required. + :type setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Setting. The Setting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Setting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def update( + self, + setting_name: Union[str, _models.SettingName], + setting: Union[_models.Setting, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.Setting: + """updating settings about different configurations in Microsoft Defender for Cloud. + + :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param setting: Setting object. Is one of the following types: Setting, JSON, IO[bytes] + Required. + :type setting: ~azure.mgmt.security.models.Setting or JSON or IO[bytes] + :return: Setting. The Setting is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Setting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Setting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(setting, (IOBase, bytes)): + _content = setting + else: + _content = json.dumps(setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_settings_update_request( + setting_name=setting_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Setting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.Setting"]: + """Settings about different configurations in Microsoft Defender for Cloud. + + :return: An iterator like instance of Setting + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Setting] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) + cls: ClsType[List[_models.Setting]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_settings_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Setting], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SqlVulnerabilityAssessmentBaselineRulesOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`sql_vulnerability_assessment_baseline_rules` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> _models.RuleResults: + """Gets the results for a given rule in the Baseline. + + Gets the results for a given rule in the Baseline. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :return: RuleResults. The RuleResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RuleResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.RuleResults] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_baseline_rules_get_request( + resource_id=resource_id, + rule_id=rule_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.RuleResults, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + resource_id: str, + rule_id: str, + body: Optional[_models.RuleResultsInput] = None, + *, + database_name: Optional[str] = None, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.RuleResults: + """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param body: The baseline results for this rule. Default value is None. + :type body: ~azure.mgmt.security.models.RuleResultsInput + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: RuleResults. The RuleResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RuleResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_id: str, + rule_id: str, + body: Optional[JSON] = None, + *, + database_name: Optional[str] = None, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.RuleResults: + """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param body: The baseline results for this rule. Default value is None. + :type body: JSON + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: RuleResults. The RuleResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RuleResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_id: str, + rule_id: str, + body: Optional[IO[bytes]] = None, + *, + database_name: Optional[str] = None, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.RuleResults: + """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param body: The baseline results for this rule. Default value is None. + :type body: IO[bytes] + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: RuleResults. The RuleResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RuleResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_id: str, + rule_id: str, + body: Optional[Union[_models.RuleResultsInput, JSON, IO[bytes]]] = None, + *, + database_name: Optional[str] = None, + **kwargs: Any + ) -> _models.RuleResults: + """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + Creates a Baseline for a rule in a database. Will overwrite any previously existing results. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :param body: The baseline results for this rule. Is one of the following types: + RuleResultsInput, JSON, IO[bytes] Default value is None. + :type body: ~azure.mgmt.security.models.RuleResultsInput or JSON or IO[bytes] + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :return: RuleResults. The RuleResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RuleResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if body else None + cls: ClsType[_models.RuleResults] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if body else None + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + if body is not None: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + else: + _content = None + + _request = build_sql_vulnerability_assessment_baseline_rules_create_or_update_request( + resource_id=resource_id, + rule_id=rule_id, + database_name=database_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.RuleResults, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> None: + """Deletes a rule from the Baseline of a given database. + + Deletes a rule from the Baseline of a given database. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param rule_id: The rule Id. Required. + :type rule_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_baseline_rules_delete_request( + resource_id=resource_id, + rule_id=rule_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list( + self, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> ItemPaged["_models.RuleResults"]: + """Gets the results for all rules in the Baseline. + + Gets the results for all rules in the Baseline. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :return: An iterator like instance of RuleResults + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.RuleResults] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[List[_models.RuleResults]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_sql_vulnerability_assessment_baseline_rules_list_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.RuleResults], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @overload + def add( + self, + resource_id: str, + body: Optional[_models.RulesResultsInput] = None, + *, + database_name: Optional[str] = None, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.RulesResults: + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The content of the action request. Default value is None. + :type body: ~azure.mgmt.security.models.RulesResultsInput + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: RulesResults. The RulesResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RulesResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def add( + self, + resource_id: str, + body: Optional[JSON] = None, + *, + database_name: Optional[str] = None, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.RulesResults: + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The content of the action request. Default value is None. + :type body: JSON + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: RulesResults. The RulesResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RulesResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def add( + self, + resource_id: str, + body: Optional[IO[bytes]] = None, + *, + database_name: Optional[str] = None, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.RulesResults: + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The content of the action request. Default value is None. + :type body: IO[bytes] + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: RulesResults. The RulesResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RulesResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def add( + self, + resource_id: str, + body: Optional[Union[_models.RulesResultsInput, JSON, IO[bytes]]] = None, + *, + database_name: Optional[str] = None, + **kwargs: Any + ) -> _models.RulesResults: + """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + Set a list of baseline rules. Will overwrite any previously existing results (for all rules). + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The content of the action request. Is one of the following types: + RulesResultsInput, JSON, IO[bytes] Default value is None. + :type body: ~azure.mgmt.security.models.RulesResultsInput or JSON or IO[bytes] + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :return: RulesResults. The RulesResults is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.RulesResults + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if body else None + cls: ClsType[_models.RulesResults] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if body else None + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + if body is not None: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + else: + _content = None + + _request = build_sql_vulnerability_assessment_baseline_rules_add_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.RulesResults, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class SqlVulnerabilityAssessmentScanResultsOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`sql_vulnerability_assessment_scan_results` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, scan_id: str, scan_result_id: str, resource_id: str, *, database_name: str, **kwargs: Any + ) -> _models.ScanResult: + """Gets the scan results of a single rule in a scan record. + + Gets the scan results of a single rule in a scan record. + + :param scan_id: The scan Id. Required. + :type scan_id: str + :param scan_result_id: The rule Id of the results. Required. + :type scan_result_id: str + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Required. + :paramtype database_name: str + :return: ScanResult. The ScanResult is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ScanResult + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.ScanResult] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_scan_results_get_request( + scan_id=scan_id, + scan_result_id=scan_result_id, + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ScanResult, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, scan_id: str, resource_id: str, *, database_name: str, **kwargs: Any + ) -> ItemPaged["_models.ScanResult"]: + """Gets a list of scan results for a single scan record. + + Gets a list of scan results for a single scan record. + + :param scan_id: The scan Id. Required. + :type scan_id: str + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Required. + :paramtype database_name: str + :return: An iterator like instance of ScanResult + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ScanResult] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[List[_models.ScanResult]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_sql_vulnerability_assessment_scan_results_list_request( + scan_id=scan_id, + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ScanResult], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class StandardsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`standards` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_group_name: str, standard_id: str, **kwargs: Any) -> _models.Standard: + """Get a specific security standard for the requested scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :return: Standard. The Standard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Standard + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.Standard] = kwargs.pop("cls", None) + + _request = build_standards_get_request( + resource_group_name=resource_group_name, + standard_id=standard_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Standard, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + resource_group_name: str, + standard_id: str, + standard: _models.Standard, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: ~azure.mgmt.security.models.Standard + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Standard. The Standard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Standard + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + standard_id: str, + standard: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Standard. The Standard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Standard + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + standard_id: str, + standard: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Required. + :type standard: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Standard. The Standard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Standard + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_group_name: str, + standard_id: str, + standard: Union[_models.Standard, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.Standard: + """Create a security standard on the given scope. Available only for custom standards. Will + create/update the required standard definitions. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :param standard: Custom security standard over a pre-defined scope. Is one of the following + types: Standard, JSON, IO[bytes] Required. + :type standard: ~azure.mgmt.security.models.Standard or JSON or IO[bytes] + :return: Standard. The Standard is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Standard + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Standard] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(standard, (IOBase, bytes)): + _content = standard + else: + _content = json.dumps(standard, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_standards_create_or_update_request( + resource_group_name=resource_group_name, + standard_id=standard_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Standard, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, resource_group_name: str, standard_id: str, **kwargs: Any + ) -> None: + """Delete a security standard on a scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param standard_id: The Security Standard key - unique key for the standard type. Required. + :type standard_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_standards_delete_request( + resource_group_name=resource_group_name, + standard_id=standard_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.Standard"]: + """Get security standards on all your resources inside a scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of Standard + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Standard] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[List[_models.Standard]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_standards_list_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Standard], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.Standard"]: + """Get a list of all relevant security standards over a subscription level scope. + + :return: An iterator like instance of Standard + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Standard] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[List[_models.Standard]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_standards_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Standard], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class AssignmentsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`assignments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_group_name: str, assignment_id: str, **kwargs: Any) -> _models.Assignment: + """Get a specific standard assignment for the requested scope by resourceId. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :return: Assignment. The Assignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Assignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[_models.Assignment] = kwargs.pop("cls", None) + + _request = build_assignments_get_request( + resource_group_name=resource_group_name, + assignment_id=assignment_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Assignment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + resource_group_name: str, + assignment_id: str, + assignment: _models.Assignment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Required. + :type assignment: ~azure.mgmt.security.models.Assignment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Assignment. The Assignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Assignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + assignment_id: str, + assignment: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Required. + :type assignment: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Assignment. The Assignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Assignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + assignment_id: str, + assignment: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Required. + :type assignment: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Assignment. The Assignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Assignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_group_name: str, + assignment_id: str, + assignment: Union[_models.Assignment, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.Assignment: + """Create a security assignment on the given scope. Will create/update the required standard + assignment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :param assignment: Custom standard assignment over a pre-defined scope. Is one of the following + types: Assignment, JSON, IO[bytes] Required. + :type assignment: ~azure.mgmt.security.models.Assignment or JSON or IO[bytes] + :return: Assignment. The Assignment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Assignment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Assignment] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(assignment, (IOBase, bytes)): + _content = assignment + else: + _content = json.dumps(assignment, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_assignments_create_or_update_request( + resource_group_name=resource_group_name, + assignment_id=assignment_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Assignment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, resource_group_name: str, assignment_id: str, **kwargs: Any + ) -> None: + """Delete a standard assignment over a given scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param assignment_id: The security assignment key - unique key for the standard assignment. + Required. + :type assignment_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_assignments_delete_request( + resource_group_name=resource_group_name, + assignment_id=assignment_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.Assignment"]: + """Get a list of all relevant standardAssignments available for scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of Assignment + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Assignment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[List[_models.Assignment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_assignments_list_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Assignment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.Assignment"]: + """Get a list of all relevant standardAssignments over a subscription level scope. + + :return: An iterator like instance of Assignment + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Assignment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) + cls: ClsType[List[_models.Assignment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_assignments_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Assignment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class TasksOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`tasks` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get_resource_group_level_task( + self, resource_group_name: str, asc_location: str, task_name: str, **kwargs: Any + ) -> _models.SecurityTask: + """Recommended tasks that will help improve the security of the subscription proactively. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param task_name: Name of the task object, will be a GUID. Required. + :type task_name: str + :return: SecurityTask. The SecurityTask is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityTask + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[_models.SecurityTask] = kwargs.pop("cls", None) + + _request = build_tasks_get_resource_group_level_task_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + task_name=task_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityTask, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_resource_group( + self, resource_group_name: str, asc_location: str, *, filter: Optional[str] = None, **kwargs: Any + ) -> ItemPaged["_models.SecurityTask"]: + """Recommended tasks that will help improve the security of the subscription proactively. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of SecurityTask + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityTask] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[List[_models.SecurityTask]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_tasks_list_by_resource_group_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityTask], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def update_resource_group_level_task_state( # pylint: disable=inconsistent-return-statements + self, + resource_group_name: str, + asc_location: str, + task_name: str, + task_update_action_type: Union[str, _models.TaskUpdateActionType], + **kwargs: Any + ) -> None: + """Recommended tasks that will help improve the security of the subscription proactively. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param task_name: Name of the task object, will be a GUID. Required. + :type task_name: str + :param task_update_action_type: Type of the action to do on the task. Known values are: + "Activate", "Dismiss", "Start", "Resolve", and "Close". Required. + :type task_update_action_type: str or ~azure.mgmt.security.models.TaskUpdateActionType + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_tasks_update_resource_group_level_task_state_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + task_name=task_name, + task_update_action_type=task_update_action_type, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def get_subscription_level_task(self, asc_location: str, task_name: str, **kwargs: Any) -> _models.SecurityTask: + """Recommended tasks that will help improve the security of the subscription proactively. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param task_name: Name of the task object, will be a GUID. Required. + :type task_name: str + :return: SecurityTask. The SecurityTask is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityTask + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[_models.SecurityTask] = kwargs.pop("cls", None) + + _request = build_tasks_get_subscription_level_task_request( + asc_location=asc_location, + task_name=task_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityTask, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_home_region( + self, asc_location: str, *, filter: Optional[str] = None, **kwargs: Any + ) -> ItemPaged["_models.SecurityTask"]: + """Recommended tasks that will help improve the security of the subscription proactively. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of SecurityTask + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityTask] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[List[_models.SecurityTask]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_tasks_list_by_home_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityTask], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def update_subscription_level_task_state( # pylint: disable=inconsistent-return-statements + self, + asc_location: str, + task_name: str, + task_update_action_type: Union[str, _models.TaskUpdateActionType], + **kwargs: Any + ) -> None: + """Recommended tasks that will help improve the security of the subscription proactively. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param task_name: Name of the task object, will be a GUID. Required. + :type task_name: str + :param task_update_action_type: Type of the action to do on the task. Known values are: + "Activate", "Dismiss", "Start", "Resolve", and "Close". Required. + :type task_update_action_type: str or ~azure.mgmt.security.models.TaskUpdateActionType + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_tasks_update_subscription_level_task_state_request( + asc_location=asc_location, + task_name=task_name, + task_update_action_type=task_update_action_type, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, *, filter: Optional[str] = None, **kwargs: Any) -> ItemPaged["_models.SecurityTask"]: + """Recommended tasks that will help improve the security of the subscription proactively. + + :keyword filter: OData filter. Optional. Default value is None. + :paramtype filter: str + :return: An iterator like instance of SecurityTask + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityTask] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[List[_models.SecurityTask]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_tasks_list_request( + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityTask], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class APICollectionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`api_collections` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get_by_azure_api_management_service( + self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any + ) -> _models.ApiCollection: + """Gets an onboarded Azure API Management API. + + Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an + Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor + the operations within the Azure API Management API for intrusive behaviors and provide alerts + for attacks that have been detected. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param service_name: The name of the API Management service. Required. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the API Management service instance. + Non-current revision has ;rev=n as a suffix where n is the revision number. Required. + :type api_id: str + :return: ApiCollection. The ApiCollection is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ApiCollection + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[_models.ApiCollection] = kwargs.pop("cls", None) + + _request = build_api_collections_get_by_azure_api_management_service_request( + resource_group_name=resource_group_name, + service_name=service_name, + api_id=api_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ApiCollection, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + def _onboard_azure_api_management_api_initial( # pylint: disable=name-too-long + self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_api_collections_onboard_azure_api_management_api_request( + resource_group_name=resource_group_name, + service_name=service_name, + api_id=api_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_onboard_azure_api_management_api( + self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any + ) -> LROPoller[_models.ApiCollection]: + """Onboard an Azure API Management API to Microsoft Defender for APIs. + + Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start + monitoring the operations within the Azure Management API for intrusive behaviors and provide + alerts for attacks that have been detected. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param service_name: The name of the API Management service. Required. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the API Management service instance. + Non-current revision has ;rev=n as a suffix where n is the revision number. Required. + :type api_id: str + :return: An instance of LROPoller that returns ApiCollection. The ApiCollection is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.ApiCollection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[_models.ApiCollection] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._onboard_azure_api_management_api_initial( + resource_group_name=resource_group_name, + service_name=service_name, + api_id=api_id, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.ApiCollection, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.ApiCollection].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.ApiCollection]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + def offboard_azure_api_management_api( # pylint: disable=inconsistent-return-statements + self, resource_group_name: str, service_name: str, api_id: str, **kwargs: Any + ) -> None: + """Offboard an Azure API Management API from Microsoft Defender for APIs. + + Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop + monitoring the operations within the Azure API Management API for intrusive behaviors. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param service_name: The name of the API Management service. Required. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the API Management service instance. + Non-current revision has ;rev=n as a suffix where n is the revision number. Required. + :type api_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_api_collections_offboard_azure_api_management_api_request( + resource_group_name=resource_group_name, + service_name=service_name, + api_id=api_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_azure_api_management_service( + self, resource_group_name: str, service_name: str, **kwargs: Any + ) -> ItemPaged["_models.ApiCollection"]: + """Gets a list of onboarded Azure API Management APIs. + + Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for + APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system + will monitor the operations within the Azure API Management API for intrusive behaviors and + provide alerts for attacks that have been detected. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param service_name: The name of the API Management service. Required. + :type service_name: str + :return: An iterator like instance of ApiCollection + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ApiCollection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[List[_models.ApiCollection]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_api_collections_list_by_azure_api_management_service_request( + resource_group_name=resource_group_name, + service_name=service_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ApiCollection], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.ApiCollection"]: + """Gets a list of API collections within a subscription. + + Gets a list of API collections within a subscription that have been onboarded to Microsoft + Defender for APIs. + + :return: An iterator like instance of ApiCollection + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ApiCollection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[List[_models.ApiCollection]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_api_collections_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ApiCollection], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.ApiCollection"]: + """Gets a list of API collections within a resource group. + + Gets a list of API collections within a resource group that have been onboarded to Microsoft + Defender for APIs. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of ApiCollection + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ApiCollection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-11-15")) + cls: ClsType[List[_models.ApiCollection]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_api_collections_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ApiCollection], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class ApplicationOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`application` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, application_id: str, **kwargs: Any) -> _models.Application: + """Get a specific application for the requested scope by applicationId. + + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + cls: ClsType[_models.Application] = kwargs.pop("cls", None) + + _request = build_application_get_request( + application_id=application_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Application, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + application_id: str, + application: _models.Application, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.Application: + """Creates or update a security application on the given subscription. + + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Required. + :type application: ~azure.mgmt.security.models.Application + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, application_id: str, application: JSON, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.Application: + """Creates or update a security application on the given subscription. + + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Required. + :type application: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, application_id: str, application: IO[bytes], *, content_type: str = "application/json", **kwargs: Any + ) -> _models.Application: + """Creates or update a security application on the given subscription. + + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Required. + :type application: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, application_id: str, application: Union[_models.Application, JSON, IO[bytes]], **kwargs: Any + ) -> _models.Application: + """Creates or update a security application on the given subscription. + + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :param application: Application over a subscription scope. Is one of the following types: + Application, JSON, IO[bytes] Required. + :type application: ~azure.mgmt.security.models.Application or JSON or IO[bytes] + :return: Application. The Application is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.Application + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.Application] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(application, (IOBase, bytes)): + _content = application + else: + _content = json.dumps(application, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_application_create_or_update_request( + application_id=application_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.Application, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete(self, application_id: str, **kwargs: Any) -> None: # pylint: disable=inconsistent-return-statements + """Delete an Application over a given scope. + + :param application_id: The security Application key - unique key for the standard application. + Required. + :type application_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_application_delete_request( + application_id=application_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + +class SecurityConnectorApplicationsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`security_connector_applications` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, **kwargs: Any + ) -> ItemPaged["_models.Application"]: + """Get a list of all relevant applications over a security connector level scope. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :return: An iterator like instance of Application + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Application] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) + cls: ClsType[List[_models.Application]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_security_connector_applications_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.Application], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class AssessmentsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`assessments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, + resource_id: str, + assessment_name: str, + *, + expand: Optional[Union[str, _models.ExpandEnum]] = None, + **kwargs: Any + ) -> _models.SecurityAssessmentResponse: + """Get a security assessment on your scanned resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. + :type assessment_name: str + :keyword expand: OData expand. Optional. Known values are: "links" and "metadata". Default + value is None. + :paramtype expand: str or ~azure.mgmt.security.models.ExpandEnum + :return: SecurityAssessmentResponse. The SecurityAssessmentResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[_models.SecurityAssessmentResponse] = kwargs.pop("cls", None) + + _request = build_assessments_get_request( + resource_id=resource_id, + assessment_name=assessment_name, + expand=expand, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityAssessmentResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + resource_id: str, + assessment_name: str, + assessment: _models.SecurityAssessment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityAssessmentResponse: + """Create a security assessment on your resource. An assessment metadata that describes this + assessment must be predefined with the same name before inserting the assessment result. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. + :type assessment_name: str + :param assessment: Calculated assessment on a pre-defined assessment metadata. Required. + :type assessment: ~azure.mgmt.security.models.SecurityAssessment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityAssessmentResponse. The SecurityAssessmentResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_id: str, + assessment_name: str, + assessment: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityAssessmentResponse: + """Create a security assessment on your resource. An assessment metadata that describes this + assessment must be predefined with the same name before inserting the assessment result. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. + :type assessment_name: str + :param assessment: Calculated assessment on a pre-defined assessment metadata. Required. + :type assessment: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityAssessmentResponse. The SecurityAssessmentResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_id: str, + assessment_name: str, + assessment: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SecurityAssessmentResponse: + """Create a security assessment on your resource. An assessment metadata that describes this + assessment must be predefined with the same name before inserting the assessment result. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. + :type assessment_name: str + :param assessment: Calculated assessment on a pre-defined assessment metadata. Required. + :type assessment: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SecurityAssessmentResponse. The SecurityAssessmentResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_id: str, + assessment_name: str, + assessment: Union[_models.SecurityAssessment, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.SecurityAssessmentResponse: + """Create a security assessment on your resource. An assessment metadata that describes this + assessment must be predefined with the same name before inserting the assessment result. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. + :type assessment_name: str + :param assessment: Calculated assessment on a pre-defined assessment metadata. Is one of the + following types: SecurityAssessment, JSON, IO[bytes] Required. + :type assessment: ~azure.mgmt.security.models.SecurityAssessment or JSON or IO[bytes] + :return: SecurityAssessmentResponse. The SecurityAssessmentResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.SecurityAssessmentResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.SecurityAssessmentResponse] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(assessment, (IOBase, bytes)): + _content = assessment + else: + _content = json.dumps(assessment, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_assessments_create_or_update_request( + resource_id=resource_id, + assessment_name=assessment_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecurityAssessmentResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, resource_id: str, assessment_name: str, **kwargs: Any + ) -> None: + """Delete a security assessment on your resource. An assessment metadata that describes this + assessment must be predefined with the same name before inserting the assessment result. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. + :type assessment_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_assessments_delete_request( + resource_id=resource_id, + assessment_name=assessment_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.SecurityAssessmentResponse"]: + """Get security assessments on all your scanned resources inside a scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of SecurityAssessmentResponse + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityAssessmentResponse] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-05-04")) + cls: ClsType[List[_models.SecurityAssessmentResponse]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_assessments_list_request( + scope=scope, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecurityAssessmentResponse], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class AdvancedThreatProtectionOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`advanced_threat_protection` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_id: str, **kwargs: Any) -> _models.AdvancedThreatProtectionSetting: + """Gets the Advanced Threat Protection settings for the specified resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :return: AdvancedThreatProtectionSetting. The AdvancedThreatProtectionSetting is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01")) + setting_name: Literal["current"] = kwargs.pop("setting_name", "current") + cls: ClsType[_models.AdvancedThreatProtectionSetting] = kwargs.pop("cls", None) + + _request = build_advanced_threat_protection_get_request( + resource_id=resource_id, + api_version=api_version, + setting_name=setting_name, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AdvancedThreatProtectionSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create( + self, + resource_id: str, + advanced_threat_protection_setting: _models.AdvancedThreatProtectionSetting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AdvancedThreatProtectionSetting: + """Creates or updates the Advanced Threat Protection settings on a specified resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Required. + :type advanced_threat_protection_setting: + ~azure.mgmt.security.models.AdvancedThreatProtectionSetting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AdvancedThreatProtectionSetting. The AdvancedThreatProtectionSetting is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create( + self, + resource_id: str, + advanced_threat_protection_setting: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AdvancedThreatProtectionSetting: + """Creates or updates the Advanced Threat Protection settings on a specified resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Required. + :type advanced_threat_protection_setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AdvancedThreatProtectionSetting. The AdvancedThreatProtectionSetting is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create( + self, + resource_id: str, + advanced_threat_protection_setting: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AdvancedThreatProtectionSetting: + """Creates or updates the Advanced Threat Protection settings on a specified resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Required. + :type advanced_threat_protection_setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: AdvancedThreatProtectionSetting. The AdvancedThreatProtectionSetting is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create( + self, + resource_id: str, + advanced_threat_protection_setting: Union[_models.AdvancedThreatProtectionSetting, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.AdvancedThreatProtectionSetting: + """Creates or updates the Advanced Threat Protection settings on a specified resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param advanced_threat_protection_setting: Advanced Threat Protection Settings. Is one of the + following types: AdvancedThreatProtectionSetting, JSON, IO[bytes] Required. + :type advanced_threat_protection_setting: + ~azure.mgmt.security.models.AdvancedThreatProtectionSetting or JSON or IO[bytes] + :return: AdvancedThreatProtectionSetting. The AdvancedThreatProtectionSetting is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01")) + setting_name: Literal["current"] = kwargs.pop("setting_name", "current") + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AdvancedThreatProtectionSetting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(advanced_threat_protection_setting, (IOBase, bytes)): + _content = advanced_threat_protection_setting + else: + _content = json.dumps(advanced_threat_protection_setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_advanced_threat_protection_create_request( + resource_id=resource_id, + api_version=api_version, + setting_name=setting_name, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AdvancedThreatProtectionSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class DefenderForStorageOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`defender_for_storage` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any + ) -> _models.DefenderForStorageSetting: + """Gets the Defender for Storage settings for the specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :return: DefenderForStorageSetting. The DefenderForStorageSetting is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + cls: ClsType[_models.DefenderForStorageSetting] = kwargs.pop("cls", None) + + _request = build_defender_for_storage_get_request( + resource_id=resource_id, + setting_name=setting_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DefenderForStorageSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create( + self, + resource_id: str, + setting_name: Union[str, _models.SettingName], + defender_for_storage_setting: _models.DefenderForStorageSetting, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DefenderForStorageSetting: + """Creates or updates the Defender for Storage settings on a specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param defender_for_storage_setting: Defender for Storage Settings. Required. + :type defender_for_storage_setting: ~azure.mgmt.security.models.DefenderForStorageSetting + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: DefenderForStorageSetting. The DefenderForStorageSetting is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create( + self, + resource_id: str, + setting_name: Union[str, _models.SettingName], + defender_for_storage_setting: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DefenderForStorageSetting: + """Creates or updates the Defender for Storage settings on a specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param defender_for_storage_setting: Defender for Storage Settings. Required. + :type defender_for_storage_setting: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: DefenderForStorageSetting. The DefenderForStorageSetting is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create( + self, + resource_id: str, + setting_name: Union[str, _models.SettingName], + defender_for_storage_setting: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.DefenderForStorageSetting: + """Creates or updates the Defender for Storage settings on a specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param defender_for_storage_setting: Defender for Storage Settings. Required. + :type defender_for_storage_setting: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: DefenderForStorageSetting. The DefenderForStorageSetting is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create( + self, + resource_id: str, + setting_name: Union[str, _models.SettingName], + defender_for_storage_setting: Union[_models.DefenderForStorageSetting, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.DefenderForStorageSetting: + """Creates or updates the Defender for Storage settings on a specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param defender_for_storage_setting: Defender for Storage Settings. Is one of the following + types: DefenderForStorageSetting, JSON, IO[bytes] Required. + :type defender_for_storage_setting: ~azure.mgmt.security.models.DefenderForStorageSetting or + JSON or IO[bytes] + :return: DefenderForStorageSetting. The DefenderForStorageSetting is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.DefenderForStorageSetting + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.DefenderForStorageSetting] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(defender_for_storage_setting, (IOBase, bytes)): + _content = defender_for_storage_setting + else: + _content = json.dumps(defender_for_storage_setting, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_defender_for_storage_create_request( + resource_id=resource_id, + setting_name=setting_name, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DefenderForStorageSetting, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, resource_id: str, **kwargs: Any) -> ItemPaged["_models.DefenderForStorageSetting"]: + """Lists the Defender for Storage settings for the specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :return: An iterator like instance of DefenderForStorageSetting + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.DefenderForStorageSetting] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + cls: ClsType[List[_models.DefenderForStorageSetting]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_defender_for_storage_list_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DefenderForStorageSetting], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def start_malware_scan( + self, resource_id: str, setting_name: Union[str, _models.SettingName], **kwargs: Any + ) -> _models.MalwareScan: + """Initiate a Defender for Storage malware scan for the specified storage account. Blobs and Files + will be scanned for malware. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :return: MalwareScan. The MalwareScan is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.MalwareScan + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) + + _request = build_defender_for_storage_start_malware_scan_request( + resource_id=resource_id, + setting_name=setting_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.MalwareScan, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def cancel_malware_scan( + self, resource_id: str, setting_name: Union[str, _models.SettingName], scan_id: str, **kwargs: Any + ) -> _models.MalwareScan: + """Cancels a Defender for Storage malware scan for the specified storage account. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param scan_id: The identifier of the scan. Can be either 'latest' or a GUID. Required. + :type scan_id: str + :return: MalwareScan. The MalwareScan is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.MalwareScan + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) + + _request = build_defender_for_storage_cancel_malware_scan_request( + resource_id=resource_id, + setting_name=setting_name, + scan_id=scan_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.MalwareScan, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def get_malware_scan( + self, resource_id: str, setting_name: Union[str, _models.SettingName], scan_id: str, **kwargs: Any + ) -> _models.MalwareScan: + """Gets the Defender for Storage malware scan for the specified storage resource. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param setting_name: The defender for storage setting name. Known values are: "MCAS", "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", "Sentinel", and "current". + Required. + :type setting_name: str or ~azure.mgmt.security.models.SettingName + :param scan_id: The identifier of the scan. Can be either 'latest' or a GUID. Required. + :type scan_id: str + :return: MalwareScan. The MalwareScan is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.MalwareScan + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01-preview")) + cls: ClsType[_models.MalwareScan] = kwargs.pop("cls", None) + + _request = build_defender_for_storage_get_malware_scan_request( + resource_id=resource_id, + setting_name=setting_name, + scan_id=scan_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.MalwareScan, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class IotSecuritySolutionAnalyticsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`iot_security_solution_analytics` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, solution_name: str, **kwargs: Any + ) -> _models.IoTSecuritySolutionAnalyticsModel: + """Use this method to get IoT Security Analytics metrics. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :return: IoTSecuritySolutionAnalyticsModel. The IoTSecuritySolutionAnalyticsModel is compatible + with MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[_models.IoTSecuritySolutionAnalyticsModel] = kwargs.pop("cls", None) + + _request = build_iot_security_solution_analytics_get_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecuritySolutionAnalyticsModel, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, solution_name: str, **kwargs: Any + ) -> _models.IoTSecuritySolutionAnalyticsModelList: + """Use this method to get IoT security Analytics metrics in an array. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :return: IoTSecuritySolutionAnalyticsModelList. The IoTSecuritySolutionAnalyticsModelList is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionAnalyticsModelList + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[_models.IoTSecuritySolutionAnalyticsModelList] = kwargs.pop("cls", None) + + _request = build_iot_security_solution_analytics_list_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecuritySolutionAnalyticsModelList, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class IotSecuritySolutionOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`iot_security_solution` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_group_name: str, solution_name: str, **kwargs: Any) -> _models.IoTSecuritySolutionModel: + """User this method to get details of a specific IoT Security solution based on solution name. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[_models.IoTSecuritySolutionModel] = kwargs.pop("cls", None) + + _request = build_iot_security_solution_get_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecuritySolutionModel, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + resource_group_name: str, + solution_name: str, + iot_security_solution_data: _models.IoTSecuritySolutionModel, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to create or update yours IoT Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param iot_security_solution_data: The security solution data. Required. + :type iot_security_solution_data: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + solution_name: str, + iot_security_solution_data: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to create or update yours IoT Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param iot_security_solution_data: The security solution data. Required. + :type iot_security_solution_data: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_group_name: str, + solution_name: str, + iot_security_solution_data: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to create or update yours IoT Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param iot_security_solution_data: The security solution data. Required. + :type iot_security_solution_data: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_group_name: str, + solution_name: str, + iot_security_solution_data: Union[_models.IoTSecuritySolutionModel, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to create or update yours IoT Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param iot_security_solution_data: The security solution data. Is one of the following types: + IoTSecuritySolutionModel, JSON, IO[bytes] Required. + :type iot_security_solution_data: ~azure.mgmt.security.models.IoTSecuritySolutionModel or JSON + or IO[bytes] + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.IoTSecuritySolutionModel] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(iot_security_solution_data, (IOBase, bytes)): + _content = iot_security_solution_data + else: + _content = json.dumps(iot_security_solution_data, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_iot_security_solution_create_or_update_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecuritySolutionModel, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def update( + self, + resource_group_name: str, + solution_name: str, + update_iot_security_solution_data: _models.UpdateIotSecuritySolutionData, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to update existing IoT Security solution tags or user defined resources. To + update other fields use the CreateOrUpdate method. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param update_iot_security_solution_data: The security solution data. Required. + :type update_iot_security_solution_data: + ~azure.mgmt.security.models.UpdateIotSecuritySolutionData + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + resource_group_name: str, + solution_name: str, + update_iot_security_solution_data: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to update existing IoT Security solution tags or user defined resources. To + update other fields use the CreateOrUpdate method. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param update_iot_security_solution_data: The security solution data. Required. + :type update_iot_security_solution_data: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + resource_group_name: str, + solution_name: str, + update_iot_security_solution_data: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to update existing IoT Security solution tags or user defined resources. To + update other fields use the CreateOrUpdate method. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param update_iot_security_solution_data: The security solution data. Required. + :type update_iot_security_solution_data: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def update( + self, + resource_group_name: str, + solution_name: str, + update_iot_security_solution_data: Union[_models.UpdateIotSecuritySolutionData, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.IoTSecuritySolutionModel: + """Use this method to update existing IoT Security solution tags or user defined resources. To + update other fields use the CreateOrUpdate method. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param update_iot_security_solution_data: The security solution data. Is one of the following + types: UpdateIotSecuritySolutionData, JSON, IO[bytes] Required. + :type update_iot_security_solution_data: + ~azure.mgmt.security.models.UpdateIotSecuritySolutionData or JSON or IO[bytes] + :return: IoTSecuritySolutionModel. The IoTSecuritySolutionModel is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecuritySolutionModel + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.IoTSecuritySolutionModel] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(update_iot_security_solution_data, (IOBase, bytes)): + _content = update_iot_security_solution_data + else: + _content = json.dumps(update_iot_security_solution_data, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_iot_security_solution_update_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecuritySolutionModel, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete( # pylint: disable=inconsistent-return-statements + self, resource_group_name: str, solution_name: str, **kwargs: Any + ) -> None: + """Use this method to delete yours IoT Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_iot_security_solution_delete_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + @distributed_trace + def list_by_resource_group( + self, resource_group_name: str, *, filter: Optional[str] = None, **kwargs: Any + ) -> ItemPaged["_models.IoTSecuritySolutionModel"]: + """Use this method to get the list IoT Security solutions organized by resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :keyword filter: Filter the IoT Security solution with OData syntax. Supports filtering by + iotHubs. Default value is None. + :paramtype filter: str + :return: An iterator like instance of IoTSecuritySolutionModel + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.IoTSecuritySolutionModel] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[List[_models.IoTSecuritySolutionModel]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_iot_security_solution_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.IoTSecuritySolutionModel], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_subscription( + self, *, filter: Optional[str] = None, **kwargs: Any + ) -> ItemPaged["_models.IoTSecuritySolutionModel"]: + """Use this method to get the list of IoT Security solutions by subscription. + + :keyword filter: Filter the IoT Security solution with OData syntax. Supports filtering by + iotHubs. Default value is None. + :paramtype filter: str + :return: An iterator like instance of IoTSecuritySolutionModel + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.IoTSecuritySolutionModel] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[List[_models.IoTSecuritySolutionModel]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_iot_security_solution_list_by_subscription_request( + subscription_id=self._config.subscription_id, + filter=filter, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.IoTSecuritySolutionModel], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class IotSecuritySolutionsAnalyticsAggregatedAlertOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`iot_security_solutions_analytics_aggregated_alert` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, solution_name: str, aggregated_alert_name: str, **kwargs: Any + ) -> _models.IoTSecurityAggregatedAlert: + """Use this method to get a single the aggregated alert of yours IoT Security solution. This + aggregation is performed by alert name. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param aggregated_alert_name: Identifier of the aggregated alert. Required. + :type aggregated_alert_name: str + :return: IoTSecurityAggregatedAlert. The IoTSecurityAggregatedAlert is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecurityAggregatedAlert + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[_models.IoTSecurityAggregatedAlert] = kwargs.pop("cls", None) + + _request = build_iot_security_solutions_analytics_aggregated_alert_get_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + aggregated_alert_name=aggregated_alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecurityAggregatedAlert, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, solution_name: str, *, top: Optional[int] = None, **kwargs: Any + ) -> ItemPaged["_models.IoTSecurityAggregatedAlert"]: + """Use this method to get the aggregated alert list of yours IoT Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :keyword top: Number of results to retrieve. Default value is None. + :paramtype top: int + :return: An iterator like instance of IoTSecurityAggregatedAlert + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.IoTSecurityAggregatedAlert] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[List[_models.IoTSecurityAggregatedAlert]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_iot_security_solutions_analytics_aggregated_alert_list_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + top=top, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.IoTSecurityAggregatedAlert], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def dismiss( # pylint: disable=inconsistent-return-statements + self, resource_group_name: str, solution_name: str, aggregated_alert_name: str, **kwargs: Any + ) -> None: + """Use this method to dismiss an aggregated IoT Security Solution Alert. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param aggregated_alert_name: Identifier of the aggregated alert. Required. + :type aggregated_alert_name: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_iot_security_solutions_analytics_aggregated_alert_dismiss_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + aggregated_alert_name=aggregated_alert_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + +class IotSecuritySolutionsAnalyticsRecommendationOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`iot_security_solutions_analytics_recommendation` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, solution_name: str, aggregated_recommendation_name: str, **kwargs: Any + ) -> _models.IoTSecurityAggregatedRecommendation: + """Use this method to get the aggregated security analytics recommendation of yours IoT Security + solution. This aggregation is performed by recommendation name. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :param aggregated_recommendation_name: Name of the recommendation aggregated for this query. + Required. + :type aggregated_recommendation_name: str + :return: IoTSecurityAggregatedRecommendation. The IoTSecurityAggregatedRecommendation is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.IoTSecurityAggregatedRecommendation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[_models.IoTSecurityAggregatedRecommendation] = kwargs.pop("cls", None) + + _request = build_iot_security_solutions_analytics_recommendation_get_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + aggregated_recommendation_name=aggregated_recommendation_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.IoTSecurityAggregatedRecommendation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, solution_name: str, *, top: Optional[int] = None, **kwargs: Any + ) -> ItemPaged["_models.IoTSecurityAggregatedRecommendation"]: + """Use this method to get the list of aggregated security analytics recommendations of yours IoT + Security solution. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param solution_name: The name of the IoT Security solution. Required. + :type solution_name: str + :keyword top: Number of results to retrieve. Default value is None. + :paramtype top: int + :return: An iterator like instance of IoTSecurityAggregatedRecommendation + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.IoTSecurityAggregatedRecommendation] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-08-01")) + cls: ClsType[List[_models.IoTSecurityAggregatedRecommendation]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_iot_security_solutions_analytics_recommendation_list_request( + resource_group_name=resource_group_name, + solution_name=solution_name, + subscription_id=self._config.subscription_id, + top=top, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.IoTSecurityAggregatedRecommendation], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class LocationsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`locations` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, asc_location: str, **kwargs: Any) -> _models.AscLocation: + """Details of a specific location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: AscLocation. The AscLocation is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AscLocation + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[_models.AscLocation] = kwargs.pop("cls", None) + + _request = build_locations_get_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AscLocation, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.AscLocation"]: + """The location of the responsible ASC of the specific subscription (home region). For each + subscription there is only one responsible location. The location in the response should be + used to read or write other resources in ASC according to their ID. + + :return: An iterator like instance of AscLocation + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AscLocation] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) + cls: ClsType[List[_models.AscLocation]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_locations_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AscLocation], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class OperationResultsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`operation_results` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( # pylint: disable=inconsistent-return-statements + self, location: str, operation_id: str, **kwargs: Any + ) -> None: + """Returns operation results for long running operations. + + :param location: The name of the Azure region. Required. + :type location: str + :param operation_id: The ID of an ongoing async operation. Required. + :type operation_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_operation_results_get_request( + location=location, + operation_id=operation_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + + if cls: + return cls(pipeline_response, None, response_headers) # type: ignore + + +class OperationStatusesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`operation_statuses` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, location: str, operation_id: str, **kwargs: Any) -> _models.OperationStatusResult: + """Get the status of a long running azure asynchronous operation. + + :param location: The name of the Azure region. Required. + :type location: str + :param operation_id: The ID of an ongoing async operation. Required. + :type operation_id: str + :return: OperationStatusResult. The OperationStatusResult is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.OperationStatusResult + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) + cls: ClsType[_models.OperationStatusResult] = kwargs.pop("cls", None) + + _request = build_operation_statuses_get_request( + location=location, + operation_id=operation_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.OperationStatusResult, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class PrivateLinksOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`private_links` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_group_name: str, private_link_name: str, **kwargs: Any) -> _models.PrivateLinkResource: + """Get a private link resource. Returns the configuration and status of private endpoint + connectivity for Microsoft Defender for Cloud services in the specified region. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :return: PrivateLinkResource. The PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateLinkResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) + + _request = build_private_links_get_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.PrivateLinkResource, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def head(self, resource_group_name: str, private_link_name: str, **kwargs: Any) -> bool: + """Checks whether private link exists. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :return: bool + :rtype: bool + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + + _request = build_private_links_head_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if cls: + return cls(pipeline_response, None, {}) # type: ignore + return 200 <= response.status_code <= 299 + + def _create_initial( + self, + resource_group_name: str, + private_link_name: str, + private_link: Union[_models.PrivateLinkResource, JSON, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(private_link, (IOBase, bytes)): + _content = private_link + else: + _content = json.dumps(private_link, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_private_links_create_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_create( + self, + resource_group_name: str, + private_link_name: str, + private_link: _models.PrivateLinkResource, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.PrivateLinkResource]: + """Create a private link resource. This operation creates the necessary infrastructure to enable + private endpoint connections to Microsoft Defender for Cloud services. For updates to existing + resources, use the PATCH operation. The operation is asynchronous and may take several minutes + to complete. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: Private link request payload containing the resource information for + create operations. Required. + :type private_link: ~azure.mgmt.security.models.PrivateLinkResource + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns PrivateLinkResource. The PrivateLinkResource is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateLinkResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create( + self, + resource_group_name: str, + private_link_name: str, + private_link: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.PrivateLinkResource]: + """Create a private link resource. This operation creates the necessary infrastructure to enable + private endpoint connections to Microsoft Defender for Cloud services. For updates to existing + resources, use the PATCH operation. The operation is asynchronous and may take several minutes + to complete. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: Private link request payload containing the resource information for + create operations. Required. + :type private_link: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns PrivateLinkResource. The PrivateLinkResource is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateLinkResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create( + self, + resource_group_name: str, + private_link_name: str, + private_link: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.PrivateLinkResource]: + """Create a private link resource. This operation creates the necessary infrastructure to enable + private endpoint connections to Microsoft Defender for Cloud services. For updates to existing + resources, use the PATCH operation. The operation is asynchronous and may take several minutes + to complete. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: Private link request payload containing the resource information for + create operations. Required. + :type private_link: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns PrivateLinkResource. The PrivateLinkResource is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateLinkResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_create( + self, + resource_group_name: str, + private_link_name: str, + private_link: Union[_models.PrivateLinkResource, JSON, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.PrivateLinkResource]: + """Create a private link resource. This operation creates the necessary infrastructure to enable + private endpoint connections to Microsoft Defender for Cloud services. For updates to existing + resources, use the PATCH operation. The operation is asynchronous and may take several minutes + to complete. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: Private link request payload containing the resource information for + create operations. Is one of the following types: PrivateLinkResource, JSON, IO[bytes] + Required. + :type private_link: ~azure.mgmt.security.models.PrivateLinkResource or JSON or IO[bytes] + :return: An instance of LROPoller that returns PrivateLinkResource. The PrivateLinkResource is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateLinkResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._create_initial( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + private_link=private_link, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.PrivateLinkResource, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.PrivateLinkResource].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.PrivateLinkResource]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @overload + def update( + self, + resource_group_name: str, + private_link_name: str, + private_link: _models.PrivateLinkUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.PrivateLinkResource: + """Update specific properties of a private link resource. Use this operation to update mutable + properties like tags without affecting the entire resource configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: private link update payload containing only the properties to be updated. + Required. + :type private_link: ~azure.mgmt.security.models.PrivateLinkUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: PrivateLinkResource. The PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateLinkResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + resource_group_name: str, + private_link_name: str, + private_link: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.PrivateLinkResource: + """Update specific properties of a private link resource. Use this operation to update mutable + properties like tags without affecting the entire resource configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: private link update payload containing only the properties to be updated. + Required. + :type private_link: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: PrivateLinkResource. The PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateLinkResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def update( + self, + resource_group_name: str, + private_link_name: str, + private_link: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.PrivateLinkResource: + """Update specific properties of a private link resource. Use this operation to update mutable + properties like tags without affecting the entire resource configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: private link update payload containing only the properties to be updated. + Required. + :type private_link: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: PrivateLinkResource. The PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateLinkResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def update( + self, + resource_group_name: str, + private_link_name: str, + private_link: Union[_models.PrivateLinkUpdate, JSON, IO[bytes]], + **kwargs: Any + ) -> _models.PrivateLinkResource: + """Update specific properties of a private link resource. Use this operation to update mutable + properties like tags without affecting the entire resource configuration. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :param private_link: private link update payload containing only the properties to be updated. + Is one of the following types: PrivateLinkUpdate, JSON, IO[bytes] Required. + :type private_link: ~azure.mgmt.security.models.PrivateLinkUpdate or JSON or IO[bytes] + :return: PrivateLinkResource. The PrivateLinkResource is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.PrivateLinkResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(private_link, (IOBase, bytes)): + _content = private_link + else: + _content = json.dumps(private_link, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_private_links_update_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.PrivateLinkResource, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + def _delete_initial(self, resource_group_name: str, private_link_name: str, **kwargs: Any) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_private_links_delete_request( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_delete(self, resource_group_name: str, private_link_name: str, **kwargs: Any) -> LROPoller[None]: + """Delete a private link resource. This operation will remove the private link infrastructure and + disconnect all associated private endpoints. This operation is asynchronous and may take + several minutes to complete. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param private_link_name: The name of the private link resource. Must be unique within the + resource group and follow Azure naming conventions. Required. + :type private_link_name: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + private_link_name=private_link_name, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def list(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.PrivateLinkResource"]: + """Lists all the private links in the specified resource group. private links enable secure, + private connectivity to Microsoft Defender for Cloud services without exposing traffic to the + public internet. Use the 'nextLink' property in the response to get the next page of private + links for the specified resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of PrivateLinkResource + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.PrivateLinkResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[List[_models.PrivateLinkResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_private_links_list_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.PrivateLinkResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.PrivateLinkResource"]: + """Lists all the private links in the specified subscription. private links enable secure, private + connectivity to Microsoft Defender for Cloud services without exposing traffic to the public + internet. Use the 'nextLink' property in the response to get the next page of private links for + the specified subscription. + + :return: An iterator like instance of PrivateLinkResource + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.PrivateLinkResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) + cls: ClsType[List[_models.PrivateLinkResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_private_links_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.PrivateLinkResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SecureScoresOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`secure_scores` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, secure_score_name: str, **kwargs: Any) -> _models.SecureScoreItem: + """Get secure score for a specific Microsoft Defender for Cloud initiative within your current + scope. For the ASC Default initiative, use 'ascScore'. + + :param secure_score_name: The initiative name. For the ASC Default initiative, use 'ascScore' + as in the sample request below. Required. + :type secure_score_name: str + :return: SecureScoreItem. The SecureScoreItem is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecureScoreItem + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.SecureScoreItem] = kwargs.pop("cls", None) + + _request = build_secure_scores_get_request( + secure_score_name=secure_score_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecureScoreItem, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.SecureScoreItem"]: + """List secure scores for all your Microsoft Defender for Cloud initiatives within your current + scope. + + :return: An iterator like instance of SecureScoreItem + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecureScoreItem] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.SecureScoreItem]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_secure_scores_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecureScoreItem], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SecureScoreControlsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`secure_score_controls` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list_by_secure_score( + self, secure_score_name: str, *, expand: Optional[Union[str, _models.ExpandControlsEnum]] = None, **kwargs: Any + ) -> ItemPaged["_models.SecureScoreControlDetails"]: + """Get all security controls for a specific initiative within a scope. + + :param secure_score_name: The initiative name. For the ASC Default initiative, use 'ascScore' + as in the sample request below. Required. + :type secure_score_name: str + :keyword expand: OData expand. Optional. "definition" Default value is None. + :paramtype expand: str or ~azure.mgmt.security.models.ExpandControlsEnum + :return: An iterator like instance of SecureScoreControlDetails + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecureScoreControlDetails] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.SecureScoreControlDetails]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_secure_score_controls_list_by_secure_score_request( + secure_score_name=secure_score_name, + subscription_id=self._config.subscription_id, + expand=expand, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecureScoreControlDetails], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list( + self, *, expand: Optional[Union[str, _models.ExpandControlsEnum]] = None, **kwargs: Any + ) -> ItemPaged["_models.SecureScoreControlDetails"]: + """Get all security controls within a scope. + + :keyword expand: OData expand. Optional. "definition" Default value is None. + :paramtype expand: str or ~azure.mgmt.security.models.ExpandControlsEnum + :return: An iterator like instance of SecureScoreControlDetails + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecureScoreControlDetails] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.SecureScoreControlDetails]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_secure_score_controls_list_request( + subscription_id=self._config.subscription_id, + expand=expand, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecureScoreControlDetails], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SecureScoreControlDefinitionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`secure_score_control_definitions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.SecureScoreControlDefinitionItem"]: + """List the available security controls, their assessments, and the max score. + + :return: An iterator like instance of SecureScoreControlDefinitionItem + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecureScoreControlDefinitionItem] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.SecureScoreControlDefinitionItem]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_secure_score_control_definitions_list_request( + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecureScoreControlDefinitionItem], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.SecureScoreControlDefinitionItem"]: + """For a specified subscription, list the available security controls, their assessments, and the + max score. + + :return: An iterator like instance of SecureScoreControlDefinitionItem + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecureScoreControlDefinitionItem] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.SecureScoreControlDefinitionItem]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_secure_score_control_definitions_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecureScoreControlDefinitionItem], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class GitLabSubgroupsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`git_lab_subgroups` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, group_fq_name: str, **kwargs: Any + ) -> _models.GitLabGroupListResponse: + """Gets nested subgroups of given GitLab Group which are onboarded to the connector. + + Gets nested subgroups of given GitLab Group which are onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param group_fq_name: Required. + :type group_fq_name: str + :return: GitLabGroupListResponse. The GitLabGroupListResponse is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitLabGroupListResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitLabGroupListResponse] = kwargs.pop("cls", None) + + _request = build_git_lab_subgroups_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + group_fq_name=group_fq_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitLabGroupListResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class DevOpsOperationResultsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`dev_ops_operation_results` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, security_connector_name: str, operation_result_id: str, **kwargs: Any + ) -> _models.OperationStatusResult: + """Get devops long running operation result. + + Get devops long running operation result. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param operation_result_id: Required. + :type operation_result_id: str + :return: OperationStatusResult. The OperationStatusResult is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.OperationStatusResult + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.OperationStatusResult] = kwargs.pop("cls", None) + + _request = build_dev_ops_operation_results_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + operation_result_id=operation_result_id, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.OperationStatusResult, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class AzureDevOpsReposOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`azure_dev_ops_repos` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + **kwargs: Any + ) -> _models.AzureDevOpsRepository: + """Returns a monitored Azure DevOps repository resource. + + Returns a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :return: AzureDevOpsRepository. The AzureDevOpsRepository is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.AzureDevOpsRepository + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) + + _request = build_azure_dev_ops_repos_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + repo_name=repo_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AzureDevOpsRepository, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + def _create_or_update_initial( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, JSON, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(azure_dev_ops_repository, (IOBase, bytes)): + _content = azure_dev_ops_repository + else: + _content = json.dumps(azure_dev_ops_repository, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_azure_dev_ops_repos_create_or_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + repo_name=repo_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: _models.AzureDevOpsRepository, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsRepository]: + """Creates or updates a monitored Azure DevOps repository resource. + + Creates or updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. + :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsRepository. The AzureDevOpsRepository + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsRepository]: + """Creates or updates a monitored Azure DevOps repository resource. + + Creates or updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. + :type azure_dev_ops_repository: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsRepository. The AzureDevOpsRepository + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsRepository]: + """Creates or updates a monitored Azure DevOps repository resource. + + Creates or updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. + :type azure_dev_ops_repository: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsRepository. The AzureDevOpsRepository + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_create_or_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, JSON, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsRepository]: + """Creates or updates a monitored Azure DevOps repository resource. + + Creates or updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Is one of the + following types: AzureDevOpsRepository, JSON, IO[bytes] Required. + :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository or JSON or + IO[bytes] + :return: An instance of LROPoller that returns AzureDevOpsRepository. The AzureDevOpsRepository + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + repo_name=repo_name, + azure_dev_ops_repository=azure_dev_ops_repository, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AzureDevOpsRepository, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AzureDevOpsRepository].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AzureDevOpsRepository]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + def _update_initial( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, JSON, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(azure_dev_ops_repository, (IOBase, bytes)): + _content = azure_dev_ops_repository + else: + _content = json.dumps(azure_dev_ops_repository, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_azure_dev_ops_repos_update_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + repo_name=repo_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: _models.AzureDevOpsRepository, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsRepository]: + """Updates a monitored Azure DevOps repository resource. + + Updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. + :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsRepository. The AzureDevOpsRepository + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: JSON, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsRepository]: + """Updates a monitored Azure DevOps repository resource. + + Updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. + :type azure_dev_ops_repository: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsRepository. The AzureDevOpsRepository + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsRepository]: + """Updates a monitored Azure DevOps repository resource. + + Updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Required. + :type azure_dev_ops_repository: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AzureDevOpsRepository. The AzureDevOpsRepository + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_update( + self, + resource_group_name: str, + security_connector_name: str, + org_name: str, + project_name: str, + repo_name: str, + azure_dev_ops_repository: Union[_models.AzureDevOpsRepository, JSON, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AzureDevOpsRepository]: + """Updates a monitored Azure DevOps repository resource. + + Updates a monitored Azure DevOps repository resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :param repo_name: Required. + :type repo_name: str + :param azure_dev_ops_repository: The Azure DevOps repository resource payload. Is one of the + following types: AzureDevOpsRepository, JSON, IO[bytes] Required. + :type azure_dev_ops_repository: ~azure.mgmt.security.models.AzureDevOpsRepository or JSON or + IO[bytes] + :return: An instance of LROPoller that returns AzureDevOpsRepository. The AzureDevOpsRepository + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AzureDevOpsRepository] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._update_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + repo_name=repo_name, + azure_dev_ops_repository=azure_dev_ops_repository, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AzureDevOpsRepository, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AzureDevOpsRepository].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AzureDevOpsRepository]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, org_name: str, project_name: str, **kwargs: Any + ) -> ItemPaged["_models.AzureDevOpsRepository"]: + """Returns a list of Azure DevOps repositories onboarded to the connector. + + Returns a list of Azure DevOps repositories onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param org_name: Required. + :type org_name: str + :param project_name: Required. + :type project_name: str + :return: An iterator like instance of AzureDevOpsRepository + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AzureDevOpsRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.AzureDevOpsRepository]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_azure_dev_ops_repos_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + org_name=org_name, + project_name=project_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AzureDevOpsRepository], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class GitHubReposOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`git_hub_repos` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, security_connector_name: str, owner_name: str, repo_name: str, **kwargs: Any + ) -> _models.GitHubRepository: + """Returns a monitored GitHub repository. + + Returns a monitored GitHub repository. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :param repo_name: Required. + :type repo_name: str + :return: GitHubRepository. The GitHubRepository is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.GitHubRepository + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[_models.GitHubRepository] = kwargs.pop("cls", None) + + _request = build_git_hub_repos_get_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + repo_name=repo_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GitHubRepository, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_group_name: str, security_connector_name: str, owner_name: str, **kwargs: Any + ) -> ItemPaged["_models.GitHubRepository"]: + """Returns a list of GitHub repositories onboarded to the connector. + + Returns a list of GitHub repositories onboarded to the connector. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :return: An iterator like instance of GitHubRepository + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GitHubRepository] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + cls: ClsType[List[_models.GitHubRepository]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_git_hub_repos_list_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GitHubRepository], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class GitHubIssuesOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`git_hub_issues` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + def _create_initial( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[Union[_models.IssueCreationRequest, JSON, IO[bytes]]] = None, + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if create_issue_request else None + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if create_issue_request else None + _content = None + if isinstance(create_issue_request, (IOBase, bytes)): + _content = create_issue_request + else: + if create_issue_request is not None: + _content = json.dumps(create_issue_request, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + else: + _content = None + + _request = build_git_hub_issues_create_request( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + repo_name=repo_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[_models.IssueCreationRequest] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :param repo_name: Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Default value is None. + :type create_issue_request: ~azure.mgmt.security.models.IssueCreationRequest + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[JSON] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :param repo_name: Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Default value is None. + :type create_issue_request: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[IO[bytes]] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :param repo_name: Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Default value is None. + :type create_issue_request: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_create( + self, + resource_group_name: str, + security_connector_name: str, + owner_name: str, + repo_name: str, + create_issue_request: Optional[Union[_models.IssueCreationRequest, JSON, IO[bytes]]] = None, + **kwargs: Any + ) -> LROPoller[None]: + """Creates a GitHub issue for the specified repository and assessment. + + Creates a GitHub issue for the specified repository and assessment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param security_connector_name: The security connector name. Required. + :type security_connector_name: str + :param owner_name: Required. + :type owner_name: str + :param repo_name: Required. + :type repo_name: str + :param create_issue_request: The request model containing details for creating the GitHub + issue. Is one of the following types: IssueCreationRequest, JSON, IO[bytes] Default value is + None. + :type create_issue_request: ~azure.mgmt.security.models.IssueCreationRequest or JSON or + IO[bytes] + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-11-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if create_issue_request else None + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._create_initial( + resource_group_name=resource_group_name, + security_connector_name=security_connector_name, + owner_name=owner_name, + repo_name=repo_name, + create_issue_request=create_issue_request, + api_version=api_version, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + +class AllowedConnectionsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`allowed_connections` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, + resource_group_name: str, + asc_location: str, + connection_type: Union[str, _models.ConnectionType], + **kwargs: Any + ) -> _models.AllowedConnectionsResource: + """Gets the list of all possible traffic between resources for the subscription and location, + based on connection type. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param connection_type: The type of allowed connections (Internal, External). Known values are: + "Internal" and "External". Required. + :type connection_type: str or ~azure.mgmt.security.models.ConnectionType + :return: AllowedConnectionsResource. The AllowedConnectionsResource is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.AllowedConnectionsResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.AllowedConnectionsResource] = kwargs.pop("cls", None) + + _request = build_allowed_connections_get_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + connection_type=connection_type, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AllowedConnectionsResource, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_home_region(self, asc_location: str, **kwargs: Any) -> ItemPaged["_models.AllowedConnectionsResource"]: + """Gets the list of all possible traffic between resources for the subscription and location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of AllowedConnectionsResource + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AllowedConnectionsResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.AllowedConnectionsResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_allowed_connections_list_by_home_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AllowedConnectionsResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.AllowedConnectionsResource"]: + """Gets the list of all possible traffic between resources for the subscription. + + :return: An iterator like instance of AllowedConnectionsResource + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.AllowedConnectionsResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.AllowedConnectionsResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_allowed_connections_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AllowedConnectionsResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class ServerVulnerabilityAssessmentOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`server_vulnerability_assessment` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any + ) -> _models.ServerVulnerabilityAssessment: + """Gets a server vulnerability assessment onboarding statuses on a given resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_namespace: The parent resource provider namespace. Required. + :type resource_namespace: str + :param resource_type: The type of the resource. Required. + :type resource_type: str + :param resource_name: The name of the resource. Required. + :type resource_name: str + :return: ServerVulnerabilityAssessment. The ServerVulnerabilityAssessment is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") + cls: ClsType[_models.ServerVulnerabilityAssessment] = kwargs.pop("cls", None) + + _request = build_server_vulnerability_assessment_get_request( + resource_group_name=resource_group_name, + resource_namespace=resource_namespace, + resource_type=resource_type, + resource_name=resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + server_vulnerability_assessment=server_vulnerability_assessment, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ServerVulnerabilityAssessment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def create_or_update( + self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any + ) -> _models.ServerVulnerabilityAssessment: + """Creating a server vulnerability assessment on a resource, which will onboard a resource for + having a vulnerability assessment on it. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_namespace: The parent resource provider namespace. Required. + :type resource_namespace: str + :param resource_type: The type of the resource. Required. + :type resource_type: str + :param resource_name: The name of the resource. Required. + :type resource_name: str + :return: ServerVulnerabilityAssessment. The ServerVulnerabilityAssessment is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") + cls: ClsType[_models.ServerVulnerabilityAssessment] = kwargs.pop("cls", None) + + _request = build_server_vulnerability_assessment_create_or_update_request( + resource_group_name=resource_group_name, + resource_namespace=resource_namespace, + resource_type=resource_type, + resource_name=resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + server_vulnerability_assessment=server_vulnerability_assessment, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ServerVulnerabilityAssessment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + def _delete_initial( + self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_server_vulnerability_assessment_delete_request( + resource_group_name=resource_group_name, + resource_namespace=resource_namespace, + resource_type=resource_type, + resource_name=resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + server_vulnerability_assessment=server_vulnerability_assessment, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_delete( + self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any + ) -> LROPoller[None]: + """Removing server vulnerability assessment from a resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_namespace: The parent resource provider namespace. Required. + :type resource_namespace: str + :param resource_type: The type of the resource. Required. + :type resource_type: str + :param resource_name: The name of the resource. Required. + :type resource_name: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + resource_namespace=resource_namespace, + resource_type=resource_type, + resource_name=resource_name, + api_version=api_version, + server_vulnerability_assessment=server_vulnerability_assessment, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def list_by_extended_resource( + self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any + ) -> ItemPaged["_models.ServerVulnerabilityAssessment"]: + """Gets a list of server vulnerability assessment onboarding statuses on a given resource. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_namespace: The parent resource provider namespace. Required. + :type resource_namespace: str + :param resource_type: The type of the resource. Required. + :type resource_type: str + :param resource_name: The name of the resource. Required. + :type resource_name: str + :return: An iterator like instance of ServerVulnerabilityAssessment + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ServerVulnerabilityAssessment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.ServerVulnerabilityAssessment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_server_vulnerability_assessment_list_by_extended_resource_request( + resource_group_name=resource_group_name, + resource_namespace=resource_namespace, + resource_type=resource_type, + resource_name=resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ServerVulnerabilityAssessment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class TopologyOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`topology` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, resource_group_name: str, asc_location: str, topology_resource_name: str, **kwargs: Any + ) -> _models.TopologyResource: + """Gets a specific topology component. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :param topology_resource_name: Name of a topology resources collection. Required. + :type topology_resource_name: str + :return: TopologyResource. The TopologyResource is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.TopologyResource + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.TopologyResource] = kwargs.pop("cls", None) + + _request = build_topology_get_request( + resource_group_name=resource_group_name, + asc_location=asc_location, + topology_resource_name=topology_resource_name, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.TopologyResource, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_home_region(self, asc_location: str, **kwargs: Any) -> ItemPaged["_models.TopologyResource"]: + """Gets a list that allows to build a topology view of a subscription and location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: An iterator like instance of TopologyResource + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.TopologyResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.TopologyResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_topology_list_by_home_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.TopologyResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.TopologyResource"]: + """Gets a list that allows to build a topology view of a subscription. + + :return: An iterator like instance of TopologyResource + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.TopologyResource] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[List[_models.TopologyResource]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_topology_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.TopologyResource], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SecuritySolutionsReferenceDataOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`security_solutions_reference_data` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list(self, **kwargs: Any) -> _models.SecuritySolutionsReferenceDataList: + """Gets a list of all supported Security Solutions for the subscription. + + :return: SecuritySolutionsReferenceDataList. The SecuritySolutionsReferenceDataList is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecuritySolutionsReferenceDataList + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.SecuritySolutionsReferenceDataList] = kwargs.pop("cls", None) + + _request = build_security_solutions_reference_data_list_request( + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecuritySolutionsReferenceDataList, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_home_region(self, asc_location: str, **kwargs: Any) -> _models.SecuritySolutionsReferenceDataList: + """Gets list of all supported Security Solutions for subscription and location. + + :param asc_location: The location where ASC stores the data of the subscription. can be + retrieved from Get locations. Required. + :type asc_location: str + :return: SecuritySolutionsReferenceDataList. The SecuritySolutionsReferenceDataList is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecuritySolutionsReferenceDataList + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) + cls: ClsType[_models.SecuritySolutionsReferenceDataList] = kwargs.pop("cls", None) + + _request = build_security_solutions_reference_data_list_by_home_region_request( + asc_location=asc_location, + subscription_id=self._config.subscription_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecuritySolutionsReferenceDataList, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class SensitivitySettingsOperations: + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`sensitivity_settings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, **kwargs: Any) -> _models.GetSensitivitySettingsResponse: + """Gets data sensitivity settings for sensitive data discovery. + + :return: GetSensitivitySettingsResponse. The GetSensitivitySettingsResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) + cls: ClsType[_models.GetSensitivitySettingsResponse] = kwargs.pop("cls", None) + + _request = build_sensitivity_settings_get_request( + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GetSensitivitySettingsResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + sensitivity_settings: _models.UpdateSensitivitySettingsRequest, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.GetSensitivitySettingsResponse: + """Create or update data sensitivity settings for sensitive data discovery. + + :param sensitivity_settings: The data sensitivity settings to update. Required. + :type sensitivity_settings: ~azure.mgmt.security.models.UpdateSensitivitySettingsRequest + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: GetSensitivitySettingsResponse. The GetSensitivitySettingsResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, sensitivity_settings: JSON, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.GetSensitivitySettingsResponse: + """Create or update data sensitivity settings for sensitive data discovery. + + :param sensitivity_settings: The data sensitivity settings to update. Required. + :type sensitivity_settings: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: GetSensitivitySettingsResponse. The GetSensitivitySettingsResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, sensitivity_settings: IO[bytes], *, content_type: str = "application/json", **kwargs: Any + ) -> _models.GetSensitivitySettingsResponse: + """Create or update data sensitivity settings for sensitive data discovery. + + :param sensitivity_settings: The data sensitivity settings to update. Required. + :type sensitivity_settings: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: GetSensitivitySettingsResponse. The GetSensitivitySettingsResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, sensitivity_settings: Union[_models.UpdateSensitivitySettingsRequest, JSON, IO[bytes]], **kwargs: Any + ) -> _models.GetSensitivitySettingsResponse: + """Create or update data sensitivity settings for sensitive data discovery. + + :param sensitivity_settings: The data sensitivity settings to update. Is one of the following + types: UpdateSensitivitySettingsRequest, JSON, IO[bytes] Required. + :type sensitivity_settings: ~azure.mgmt.security.models.UpdateSensitivitySettingsRequest or + JSON or IO[bytes] + :return: GetSensitivitySettingsResponse. The GetSensitivitySettingsResponse is compatible with + MutableMapping + :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.GetSensitivitySettingsResponse] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(sensitivity_settings, (IOBase, bytes)): + _content = sensitivity_settings + else: + _content = json.dumps(sensitivity_settings, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_sensitivity_settings_create_or_update_request( + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GetSensitivitySettingsResponse, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged["_models.GetSensitivitySettingsResponse"]: + """Gets a list with a single sensitivity settings resource. + + :return: An iterator like instance of GetSensitivitySettingsResponse + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.GetSensitivitySettingsResponse] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) + cls: ClsType[List[_models.GetSensitivitySettingsResponse]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_sensitivity_settings_list_request( + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GetSensitivitySettingsResponse], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SqlVulnerabilityAssessmentSettingsOperations: # pylint: disable=name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`sql_vulnerability_assessment_settings` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_id: str, **kwargs: Any) -> _models.SqlVulnerabilityAssessmentSettings: + """Gets the SQL Vulnerability Assessment settings. + + Gets the SQL Vulnerability Assessment settings. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :return: SqlVulnerabilityAssessmentSettings. The SqlVulnerabilityAssessmentSettings is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.SqlVulnerabilityAssessmentSettings] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_settings_get_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SqlVulnerabilityAssessmentSettings, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @overload + def create_or_update( + self, + resource_id: str, + body: Optional[_models.SqlVulnerabilityAssessmentSettings] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Default value is None. + :type body: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SqlVulnerabilityAssessmentSettings. The SqlVulnerabilityAssessmentSettings is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, resource_id: str, body: Optional[JSON] = None, *, content_type: str = "application/json", **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Default value is None. + :type body: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: SqlVulnerabilityAssessmentSettings. The SqlVulnerabilityAssessmentSettings is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def create_or_update( + self, + resource_id: str, + body: Optional[IO[bytes]] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Default value is None. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: SqlVulnerabilityAssessmentSettings. The SqlVulnerabilityAssessmentSettings is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def create_or_update( + self, + resource_id: str, + body: Optional[Union[_models.SqlVulnerabilityAssessmentSettings, JSON, IO[bytes]]] = None, + **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentSettings: + """Creates or updates the SQL Vulnerability Assessment settings. + + Creates or updates the SQL Vulnerability Assessment settings. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :param body: The SQL Vulnerability Assessment settings. Is one of the following types: + SqlVulnerabilityAssessmentSettings, JSON, IO[bytes] Default value is None. + :type body: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings or JSON or IO[bytes] + :return: SqlVulnerabilityAssessmentSettings. The SqlVulnerabilityAssessmentSettings is + compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + content_type = content_type if body else None + cls: ClsType[_models.SqlVulnerabilityAssessmentSettings] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" if body else None + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + if body is not None: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + else: + _content = None + + _request = build_sql_vulnerability_assessment_settings_create_or_update_request( + resource_id=resource_id, + api_version=api_version, + content_type=content_type, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SqlVulnerabilityAssessmentSettings, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def delete(self, resource_id: str, **kwargs: Any) -> None: # pylint: disable=inconsistent-return-statements + """Deletes the SQL Vulnerability Assessment settings. + + Deletes the SQL Vulnerability Assessment settings. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :return: None + :rtype: None + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[None] = kwargs.pop("cls", None) - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + _request = build_sql_vulnerability_assessment_settings_delete_request( + resource_id=resource_id, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + response = pipeline_response.http_response + + if response.status_code not in [200, 204]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + if cls: + return cls(pipeline_response, None, {}) # type: ignore -class Operations: + +class SqlVulnerabilityAssessmentScansOperations: # pylint: disable=name-too-long """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`operations` attribute. + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`sql_vulnerability_assessment_scans` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + def _initiate_scan_initial( + self, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_scans_initiate_scan_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_initiate_scan( + self, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> LROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult]: + """Initiates a vulnerability assessment scan. + + Initiates a vulnerability assessment scan. + + :param resource_id: Required. + :type resource_id: str + :keyword database_name: Default value is None. + :paramtype database_name: str + :return: An instance of LROPoller that returns SqlVulnerabilityAssessmentScanOperationResult. + The SqlVulnerabilityAssessmentScanOperationResult is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.SqlVulnerabilityAssessmentScanOperationResult] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._initiate_scan_initial( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response_headers = {} + response = pipeline_response.http_response + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = _deserialize(_models.SqlVulnerabilityAssessmentScanOperationResult, response.json()) + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + def get_scan_operation_result( + self, resource_id: str, operation_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> _models.SqlVulnerabilityAssessmentScanOperationResult: + """Gets the result of a scan operation initiated by the InitiateScan action. + + Gets the result of a scan operation initiated by the InitiateScan action. + + :param resource_id: Required. + :type resource_id: str + :param operation_id: Required. + :type operation_id: str + :keyword database_name: Default value is None. + :paramtype database_name: str + :return: SqlVulnerabilityAssessmentScanOperationResult. The + SqlVulnerabilityAssessmentScanOperationResult is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.SqlVulnerabilityAssessmentScanOperationResult] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_scans_get_scan_operation_result_request( + resource_id=resource_id, + operation_id=operation_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SqlVulnerabilityAssessmentScanOperationResult, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def get(self, scan_id: str, resource_id: str, *, database_name: str, **kwargs: Any) -> _models.ScanV2: + """Gets the scan details of a single scan record. + + Gets the scan details of a single scan record. + + :param scan_id: The scan Id. Type 'latest' to get the scan record for the latest scan. + Required. + :type scan_id: str + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Required. + :paramtype database_name: str + :return: ScanV2. The ScanV2 is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.ScanV2 + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[_models.ScanV2] = kwargs.pop("cls", None) + + _request = build_sql_vulnerability_assessment_scans_get_request( + scan_id=scan_id, + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ScanV2, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list( + self, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any + ) -> ItemPaged["_models.ScanV2"]: + """Gets a list of scan records. + + Gets a list of scan records. + + :param resource_id: The fully qualified Azure Resource manager identifier of the resource. + Required. + :type resource_id: str + :keyword database_name: The name of the database to assess. Required when the API is called on + the parent resource (e.g., server level) rather than on a specific database resource, since the + database name is not part of the resource URI. This is the only way to assess system databases + (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. + :paramtype database_name: str + :return: An iterator like instance of ScanV2 + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ScanV2] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) + cls: ClsType[List[_models.ScanV2]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_sql_vulnerability_assessment_scans_list_request( + resource_id=resource_id, + database_name=database_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ScanV2], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class SubAssessmentsOperations: """ + .. warning:: + **DO NOT** instantiate this class directly. - models = _models + Instead, you should access the following operations through + :class:`~azure.mgmt.security.SecurityManagementClient`'s + :attr:`sub_assessments` attribute. + """ def __init__(self, *args, **kwargs) -> None: input_args = list(args) self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._config: SecurityManagementClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.Operation"]: - """Exposes all available operations for discovery purposes. + def get( + self, scope: str, assessment_name: str, sub_assessment_name: str, **kwargs: Any + ) -> _models.SecuritySubAssessment: + """Get a security sub-assessment on your scanned resource. - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Operation] + :param scope: The scope of the sub-assessment. Required. + :type scope: str + :param assessment_name: The security assessment key - unique key for the assessment type. + Required. + :type assessment_name: str + :param sub_assessment_name: The Sub-Assessment Key - Unique key for the sub-assessment type. + Required. + :type sub_assessment_name: str + :return: SecuritySubAssessment. The SecuritySubAssessment is compatible with MutableMapping + :rtype: ~azure.mgmt.security.models.SecuritySubAssessment :raises ~azure.core.exceptions.HttpResponseError: """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + _headers = kwargs.pop("headers", {}) or {} _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-10-01-preview")) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[_models.SecuritySubAssessment] = kwargs.pop("cls", None) + + _request = build_sub_assessments_get_request( + scope=scope, + assessment_name=assessment_name, + sub_assessment_name=sub_assessment_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.SecuritySubAssessment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list(self, scope: str, assessment_name: str, **kwargs: Any) -> ItemPaged["_models.SecuritySubAssessment"]: + """Get security sub-assessments on all your scanned resources inside a scope. + + :param scope: The scope of the sub-assessment. Required. + :type scope: str + :param assessment_name: The security assessment key - unique key for the assessment type. + Required. + :type assessment_name: str + :return: An iterator like instance of SecuritySubAssessment + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecuritySubAssessment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[List[_models.SecuritySubAssessment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_sub_assessments_list_request( + scope=scope, + assessment_name=assessment_name, + api_version=api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + _request = HttpRequest("GET", next_link) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecuritySubAssessment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.CloudError, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + def list_all(self, scope: str, **kwargs: Any) -> ItemPaged["_models.SecuritySubAssessment"]: + """Get security sub-assessments on all your scanned resources inside a subscription scope. + + :param scope: The fully qualified Azure Resource manager identifier of the resource. Required. + :type scope: str + :return: An iterator like instance of SecuritySubAssessment + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecuritySubAssessment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) + cls: ClsType[List[_models.SecuritySubAssessment]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -99,25 +35522,39 @@ def list(self, **kwargs: Any) -> ItemPaged["_models.Operation"]: def prepare_request(next_link=None): if not next_link: - _request = build_list_request( + _request = build_sub_assessments_list_all_request( + scope=scope, api_version=api_version, headers=_headers, params=_params, ) - _request.url = self._client.format_url(_request.url) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) else: _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + return _request def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.SecuritySubAssessment], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) + return deserialized.get("nextLink") or None, iter(list_of_elem) def get_next(next_link=None): _request = prepare_request(next_link) @@ -130,9 +35567,9 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, + error = _failsafe_deserialize( + _models.CloudError, + response, ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_patch.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_patch.py index 8bcb627aa475..87676c65a8f0 100644 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_patch.py +++ b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_patch.py @@ -7,9 +7,9 @@ Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize """ -from typing import List -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level + +__all__: list[str] = [] # Add all objects you want publicly available to users at this package level def patch_sdk(): diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_pricings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_pricings_operations.py deleted file mode 100644 index 75aa244cd744..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_pricings_operations.py +++ /dev/null @@ -1,487 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request(scope_id: str, pricing_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scopeId}/providers/Microsoft.Security/pricings/{pricingName}") - path_format_arguments = { - "scopeId": _SERIALIZER.url("scope_id", scope_id, "str", skip_quote=True), - "pricingName": _SERIALIZER.url("pricing_name", pricing_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request(scope_id: str, pricing_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scopeId}/providers/Microsoft.Security/pricings/{pricingName}") - path_format_arguments = { - "scopeId": _SERIALIZER.url("scope_id", scope_id, "str", skip_quote=True), - "pricingName": _SERIALIZER.url("pricing_name", pricing_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(scope_id: str, pricing_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scopeId}/providers/Microsoft.Security/pricings/{pricingName}") - path_format_arguments = { - "scopeId": _SERIALIZER.url("scope_id", scope_id, "str", skip_quote=True), - "pricingName": _SERIALIZER.url("pricing_name", pricing_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request(scope_id: str, *, filter: Optional[str] = None, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scopeId}/providers/Microsoft.Security/pricings") - path_format_arguments = { - "scopeId": _SERIALIZER.url("scope_id", scope_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if filter is not None: - _params["$filter"] = _SERIALIZER.query("filter", filter, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PricingsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`pricings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get(self, scope_id: str, pricing_name: str, **kwargs: Any) -> _models.Pricing: - """Get the Defender plans pricing configurations of the selected scope (valid scopes are resource - id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, - VMSS and ARC Machines'. - - :param scope_id: The scope id of the pricing. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or a specific resource (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}) - - Supported resources are (VirtualMachines). Required. - :type scope_id: str - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :return: Pricing or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Pricing - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) - cls: ClsType[_models.Pricing] = kwargs.pop("cls", None) - - _request = build_get_request( - scope_id=scope_id, - pricing_name=pricing_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated18, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Pricing", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - scope_id: str, - pricing_name: str, - pricing: _models.Pricing, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Pricing: - """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid - scopes are: subscription id or a specific resource id (Supported resources are: - 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - - :param scope_id: The scope id of the pricing. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or a specific resource (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}) - - Supported resources are (VirtualMachines). Required. - :type scope_id: str - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :param pricing: Pricing object. Required. - :type pricing: ~azure.mgmt.security.models.Pricing - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Pricing or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Pricing - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - scope_id: str, - pricing_name: str, - pricing: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Pricing: - """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid - scopes are: subscription id or a specific resource id (Supported resources are: - 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - - :param scope_id: The scope id of the pricing. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or a specific resource (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}) - - Supported resources are (VirtualMachines). Required. - :type scope_id: str - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :param pricing: Pricing object. Required. - :type pricing: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Pricing or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Pricing - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, scope_id: str, pricing_name: str, pricing: Union[_models.Pricing, IO[bytes]], **kwargs: Any - ) -> _models.Pricing: - """Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid - scopes are: subscription id or a specific resource id (Supported resources are: - 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - - :param scope_id: The scope id of the pricing. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or a specific resource (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}) - - Supported resources are (VirtualMachines). Required. - :type scope_id: str - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :param pricing: Pricing object. Is either a Pricing type or a IO[bytes] type. Required. - :type pricing: ~azure.mgmt.security.models.Pricing or IO[bytes] - :return: Pricing or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Pricing - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Pricing] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(pricing, (IOBase, bytes)): - _content = pricing - else: - _json = self._serialize.body(pricing, "Pricing") - - _request = build_update_request( - scope_id=scope_id, - pricing_name=pricing_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated18, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Pricing", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, scope_id: str, pricing_name: str, **kwargs: Any - ) -> None: - """Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. - Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS, ARC Machines, - and Containers'). - - :param scope_id: The identifier of the resource, (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}). - Required. - :type scope_id: str - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - scope_id=scope_id, - pricing_name=pricing_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated18, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list(self, scope_id: str, filter: Optional[str] = None, **kwargs: Any) -> _models.PricingList: - """Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the - optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported - resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in - ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be - returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes - the pricings set for 'planName1' and 'planName2' only. - - :param scope_id: The scope id of the pricing. Valid scopes are: subscription (format: - 'subscriptions/{subscriptionId}'), or a specific resource (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}) - - Supported resources are (VirtualMachines). Required. - :type scope_id: str - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: PricingList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PricingList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-01-01")) - cls: ClsType[_models.PricingList] = kwargs.pop("cls", None) - - _request = build_list_request( - scope_id=scope_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated18, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PricingList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_endpoint_connections_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index 30cd29a7199a..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,765 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateEndpointConnections", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "privateLinkName": _SERIALIZER.url( - "private_link_name", - private_link_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - private_link_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "privateLinkName": _SERIALIZER.url( - "private_link_name", - private_link_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$", - ), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - private_link_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "privateLinkName": _SERIALIZER.url( - "private_link_name", - private_link_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$", - ), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - private_link_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "privateLinkName": _SERIALIZER.url( - "private_link_name", - private_link_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$", - ), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, private_link_parameters: _models.PrivateLinkParameters, **kwargs: Any - ) -> ItemPaged["_models.PrivateEndpointConnection"]: - """Gets all private endpoint connections for a private link. Returns the list of private endpoints - that are connected or in the process of connecting to this private link. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_list_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets the specified private endpoint connection associated with the private link. Returns the - connection details, status, and configuration for a specific private endpoint. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_endpoint_connection_name: The name of the private endpoint connection associated - with the Azure resource. Required. - :type private_endpoint_connection_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_get_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _create_or_update_initial( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_endpoint_connection: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(private_endpoint_connection, (IOBase, bytes)): - _content = private_endpoint_connection - else: - _json = self._serialize.body(private_endpoint_connection, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_endpoint_connection: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.PrivateEndpointConnection]: - """Update the state of specified private endpoint connection associated with the private link. - This operation is typically used to approve or reject pending private endpoint connections. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_endpoint_connection_name: The name of the private endpoint connection associated - with the Azure resource. Required. - :type private_endpoint_connection_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_endpoint_connection: The private endpoint connection resource. Required. - :type private_endpoint_connection: ~azure.mgmt.security.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either PrivateEndpointConnection or the result - of cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_endpoint_connection: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.PrivateEndpointConnection]: - """Update the state of specified private endpoint connection associated with the private link. - This operation is typically used to approve or reject pending private endpoint connections. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_endpoint_connection_name: The name of the private endpoint connection associated - with the Azure resource. Required. - :type private_endpoint_connection_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_endpoint_connection: The private endpoint connection resource. Required. - :type private_endpoint_connection: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either PrivateEndpointConnection or the result - of cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_endpoint_connection: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.PrivateEndpointConnection]: - """Update the state of specified private endpoint connection associated with the private link. - This operation is typically used to approve or reject pending private endpoint connections. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_endpoint_connection_name: The name of the private endpoint connection associated - with the Azure resource. Required. - :type private_endpoint_connection_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_endpoint_connection: The private endpoint connection resource. Is either a - PrivateEndpointConnection type or a IO[bytes] type. Required. - :type private_endpoint_connection: ~azure.mgmt.security.models.PrivateEndpointConnection or - IO[bytes] - :return: An instance of LROPoller that returns either PrivateEndpointConnection or the result - of cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - private_endpoint_connection_name=private_endpoint_connection_name, - private_link_parameters=private_link_parameters, - private_endpoint_connection=private_endpoint_connection, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.PrivateEndpointConnection].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.PrivateEndpointConnection]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _delete_initial( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_delete_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete( - self, - resource_group_name: str, - private_endpoint_connection_name: str, - private_link_parameters: _models.PrivateLinkParameters, - **kwargs: Any - ) -> LROPoller[None]: - """Deletes the specified private endpoint connection associated with the private link. This - operation will disconnect the private endpoint and remove the connection configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_endpoint_connection_name: The name of the private endpoint connection associated - with the Azure resource. Required. - :type private_endpoint_connection_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - private_endpoint_connection_name=private_endpoint_connection_name, - private_link_parameters=private_link_parameters, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_link_resources_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_link_resources_operations.py deleted file mode 100644 index d4533f55f588..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,295 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateLinkResources", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "privateLinkName": _SERIALIZER.url( - "private_link_name", - private_link_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, private_link_name: str, group_id: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateLinkResources/{groupId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "privateLinkName": _SERIALIZER.url( - "private_link_name", - private_link_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$", - ), - "groupId": _SERIALIZER.url("group_id", group_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, private_link_parameters: _models.PrivateLinkParameters, **kwargs: Any - ) -> ItemPaged["_models.PrivateLinkResourceAutoGenerated"]: - """List all private link resources in a private link. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: An iterator like instance of either PrivateLinkResourceAutoGenerated or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.PrivateLinkResourceAutoGenerated] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateLinkResourceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_list_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateLinkResourceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, - resource_group_name: str, - group_id: str, - private_link_parameters: _models.PrivateLinkParameters, - **kwargs: Any - ) -> _models.PrivateLinkResourceAutoGenerated: - """Get the specified private link resource associated with the private link. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param group_id: The group ID of the private link resource. Required. - :type group_id: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: PrivateLinkResourceAutoGenerated or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PrivateLinkResourceAutoGenerated - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateLinkResourceAutoGenerated] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_get_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - group_id=group_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourceAutoGenerated", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_links_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_links_operations.py deleted file mode 100644 index eee687cca1c0..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_private_links_operations.py +++ /dev/null @@ -1,1086 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression,too-many-lines -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/privateLinks") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "privateLinkName": _SERIALIZER.url( - "private_link_name", - private_link_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_head_request( - resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "privateLinkName": _SERIALIZER.url( - "private_link_name", - private_link_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="HEAD", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_request( - resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "privateLinkName": _SERIALIZER.url( - "private_link_name", - private_link_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "privateLinkName": _SERIALIZER.url( - "private_link_name", - private_link_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, private_link_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "privateLinkName": _SERIALIZER.url( - "private_link_name", - private_link_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateLinksOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`private_links` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.PrivateLinkResource"]: - """Lists all the private links in the specified subscription. private links enable secure, private - connectivity to Microsoft Defender for Cloud services without exposing traffic to the public - internet. Use the 'nextLink' property in the response to get the next page of private links for - the specified subscription. - - :return: An iterator like instance of either PrivateLinkResource or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.PrivateLinkResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateLinksList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateLinksList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.PrivateLinkResource"]: - """Lists all the private links in the specified resource group. private links enable secure, - private connectivity to Microsoft Defender for Cloud services without exposing traffic to the - public internet. Use the 'nextLink' property in the response to get the next page of private - links for the specified resource group. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :return: An iterator like instance of either PrivateLinkResource or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.PrivateLinkResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateLinksList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateLinksList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_group_name: str, private_link_parameters: _models.PrivateLinkParameters, **kwargs: Any - ) -> _models.PrivateLinkResource: - """Get a private link resource. Returns the configuration and status of private endpoint - connectivity for Microsoft Defender for Cloud services in the specified region. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: PrivateLinkResource or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PrivateLinkResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_get_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def head( - self, resource_group_name: str, private_link_parameters: _models.PrivateLinkParameters, **kwargs: Any - ) -> bool: - """Checks whether private link exists. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: bool or the result of cls(response) - :rtype: bool - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_head_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - return 200 <= response.status_code <= 299 - - def _create_initial( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: Union[_models.PrivateLinkResource, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(private_link, (IOBase, bytes)): - _content = private_link - else: - _json = self._serialize.body(private_link, "PrivateLinkResource") - - _request = build_create_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: _models.PrivateLinkResource, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.PrivateLinkResource]: - """Create a private link resource. This operation creates the necessary infrastructure to enable - private endpoint connections to Microsoft Defender for Cloud services. For updates to existing - resources, use the PATCH operation. The operation is asynchronous and may take several minutes - to complete. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_link: Private link request payload containing the resource information for - create operations. Required. - :type private_link: ~azure.mgmt.security.models.PrivateLinkResource - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either PrivateLinkResource or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateLinkResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.PrivateLinkResource]: - """Create a private link resource. This operation creates the necessary infrastructure to enable - private endpoint connections to Microsoft Defender for Cloud services. For updates to existing - resources, use the PATCH operation. The operation is asynchronous and may take several minutes - to complete. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_link: Private link request payload containing the resource information for - create operations. Required. - :type private_link: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either PrivateLinkResource or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateLinkResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: Union[_models.PrivateLinkResource, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.PrivateLinkResource]: - """Create a private link resource. This operation creates the necessary infrastructure to enable - private endpoint connections to Microsoft Defender for Cloud services. For updates to existing - resources, use the PATCH operation. The operation is asynchronous and may take several minutes - to complete. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_link: Private link request payload containing the resource information for - create operations. Is either a PrivateLinkResource type or a IO[bytes] type. Required. - :type private_link: ~azure.mgmt.security.models.PrivateLinkResource or IO[bytes] - :return: An instance of LROPoller that returns either PrivateLinkResource or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.security.models.PrivateLinkResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_initial( - resource_group_name=resource_group_name, - private_link_parameters=private_link_parameters, - private_link=private_link, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("PrivateLinkResource", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.PrivateLinkResource].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.PrivateLinkResource]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @overload - def update( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: _models.PrivateLinkUpdate, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateLinkResource: - """Update specific properties of a private link resource. Use this operation to update mutable - properties like tags without affecting the entire resource configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_link: private link update payload containing only the properties to be updated. - Required. - :type private_link: ~azure.mgmt.security.models.PrivateLinkUpdate - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateLinkResource or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PrivateLinkResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateLinkResource: - """Update specific properties of a private link resource. Use this operation to update mutable - properties like tags without affecting the entire resource configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_link: private link update payload containing only the properties to be updated. - Required. - :type private_link: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateLinkResource or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PrivateLinkResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - resource_group_name: str, - private_link_parameters: _models.PrivateLinkParameters, - private_link: Union[_models.PrivateLinkUpdate, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateLinkResource: - """Update specific properties of a private link resource. Use this operation to update mutable - properties like tags without affecting the entire resource configuration. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :param private_link: private link update payload containing only the properties to be updated. - Is either a PrivateLinkUpdate type or a IO[bytes] type. Required. - :type private_link: ~azure.mgmt.security.models.PrivateLinkUpdate or IO[bytes] - :return: PrivateLinkResource or the result of cls(response) - :rtype: ~azure.mgmt.security.models.PrivateLinkResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateLinkResource] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(private_link, (IOBase, bytes)): - _content = private_link - else: - _json = self._serialize.body(private_link, "PrivateLinkUpdate") - - _request = build_update_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _delete_initial( - self, resource_group_name: str, private_link_parameters: _models.PrivateLinkParameters, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _private_link_name = None - if private_link_parameters is not None: - _private_link_name = private_link_parameters.private_link_name - - _request = build_delete_request( - resource_group_name=resource_group_name, - private_link_name=_private_link_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponseAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete( - self, resource_group_name: str, private_link_parameters: _models.PrivateLinkParameters, **kwargs: Any - ) -> LROPoller[None]: - """Delete a private link resource. This operation will remove the private link infrastructure and - disconnect all associated private endpoints. This operation is asynchronous and may take - several minutes to complete. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param private_link_parameters: Parameter group. Required. - :type private_link_parameters: ~azure.mgmt.security.models.PrivateLinkParameters - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - private_link_parameters=private_link_parameters, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_assessments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_assessments_operations.py deleted file mode 100644 index 1cb2844e4f93..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_assessments_operations.py +++ /dev/null @@ -1,301 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - regulatory_compliance_standard_name: str, - regulatory_compliance_control_name: str, - subscription_id: str, - *, - filter: Optional[str] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls/{regulatoryComplianceControlName}/regulatoryComplianceAssessments", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "regulatoryComplianceStandardName": _SERIALIZER.url( - "regulatory_compliance_standard_name", regulatory_compliance_standard_name, "str" - ), - "regulatoryComplianceControlName": _SERIALIZER.url( - "regulatory_compliance_control_name", regulatory_compliance_control_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if filter is not None: - _params["$filter"] = _SERIALIZER.query("filter", filter, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - regulatory_compliance_standard_name: str, - regulatory_compliance_control_name: str, - regulatory_compliance_assessment_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls/{regulatoryComplianceControlName}/regulatoryComplianceAssessments/{regulatoryComplianceAssessmentName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "regulatoryComplianceStandardName": _SERIALIZER.url( - "regulatory_compliance_standard_name", regulatory_compliance_standard_name, "str" - ), - "regulatoryComplianceControlName": _SERIALIZER.url( - "regulatory_compliance_control_name", regulatory_compliance_control_name, "str" - ), - "regulatoryComplianceAssessmentName": _SERIALIZER.url( - "regulatory_compliance_assessment_name", regulatory_compliance_assessment_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class RegulatoryComplianceAssessmentsOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`regulatory_compliance_assessments` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, - regulatory_compliance_standard_name: str, - regulatory_compliance_control_name: str, - filter: Optional[str] = None, - **kwargs: Any - ) -> ItemPaged["_models.RegulatoryComplianceAssessment"]: - """Details and state of assessments mapped to selected regulatory compliance control. - - :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. - Required. - :type regulatory_compliance_standard_name: str - :param regulatory_compliance_control_name: Name of the regulatory compliance control object. - Required. - :type regulatory_compliance_control_name: str - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: An iterator like instance of either RegulatoryComplianceAssessment or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.RegulatoryComplianceAssessment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.RegulatoryComplianceAssessmentList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - regulatory_compliance_standard_name=regulatory_compliance_standard_name, - regulatory_compliance_control_name=regulatory_compliance_control_name, - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("RegulatoryComplianceAssessmentList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, - regulatory_compliance_standard_name: str, - regulatory_compliance_control_name: str, - regulatory_compliance_assessment_name: str, - **kwargs: Any - ) -> _models.RegulatoryComplianceAssessment: - """Supported regulatory compliance details and state for selected assessment. - - :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. - Required. - :type regulatory_compliance_standard_name: str - :param regulatory_compliance_control_name: Name of the regulatory compliance control object. - Required. - :type regulatory_compliance_control_name: str - :param regulatory_compliance_assessment_name: Name of the regulatory compliance assessment - object. Required. - :type regulatory_compliance_assessment_name: str - :return: RegulatoryComplianceAssessment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RegulatoryComplianceAssessment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.RegulatoryComplianceAssessment] = kwargs.pop("cls", None) - - _request = build_get_request( - regulatory_compliance_standard_name=regulatory_compliance_standard_name, - regulatory_compliance_control_name=regulatory_compliance_control_name, - regulatory_compliance_assessment_name=regulatory_compliance_assessment_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RegulatoryComplianceAssessment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_controls_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_controls_operations.py deleted file mode 100644 index 6b7a9654bbd9..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_controls_operations.py +++ /dev/null @@ -1,272 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - regulatory_compliance_standard_name: str, subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "regulatoryComplianceStandardName": _SERIALIZER.url( - "regulatory_compliance_standard_name", regulatory_compliance_standard_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if filter is not None: - _params["$filter"] = _SERIALIZER.query("filter", filter, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - regulatory_compliance_standard_name: str, - regulatory_compliance_control_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls/{regulatoryComplianceControlName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "regulatoryComplianceStandardName": _SERIALIZER.url( - "regulatory_compliance_standard_name", regulatory_compliance_standard_name, "str" - ), - "regulatoryComplianceControlName": _SERIALIZER.url( - "regulatory_compliance_control_name", regulatory_compliance_control_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class RegulatoryComplianceControlsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`regulatory_compliance_controls` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, regulatory_compliance_standard_name: str, filter: Optional[str] = None, **kwargs: Any - ) -> ItemPaged["_models.RegulatoryComplianceControl"]: - """All supported regulatory compliance controls details and state for selected standard. - - :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. - Required. - :type regulatory_compliance_standard_name: str - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: An iterator like instance of either RegulatoryComplianceControl or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.RegulatoryComplianceControl] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.RegulatoryComplianceControlList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - regulatory_compliance_standard_name=regulatory_compliance_standard_name, - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("RegulatoryComplianceControlList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, regulatory_compliance_standard_name: str, regulatory_compliance_control_name: str, **kwargs: Any - ) -> _models.RegulatoryComplianceControl: - """Selected regulatory compliance control details and state. - - :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. - Required. - :type regulatory_compliance_standard_name: str - :param regulatory_compliance_control_name: Name of the regulatory compliance control object. - Required. - :type regulatory_compliance_control_name: str - :return: RegulatoryComplianceControl or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RegulatoryComplianceControl - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.RegulatoryComplianceControl] = kwargs.pop("cls", None) - - _request = build_get_request( - regulatory_compliance_standard_name=regulatory_compliance_standard_name, - regulatory_compliance_control_name=regulatory_compliance_control_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RegulatoryComplianceControl", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_standards_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_standards_operations.py deleted file mode 100644 index 6dc13ae8e1c9..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_regulatory_compliance_standards_operations.py +++ /dev/null @@ -1,246 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if filter is not None: - _params["$filter"] = _SERIALIZER.query("filter", filter, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(regulatory_compliance_standard_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "regulatoryComplianceStandardName": _SERIALIZER.url( - "regulatory_compliance_standard_name", regulatory_compliance_standard_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class RegulatoryComplianceStandardsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`regulatory_compliance_standards` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, filter: Optional[str] = None, **kwargs: Any) -> ItemPaged["_models.RegulatoryComplianceStandard"]: - """Supported regulatory compliance standards details and state. - - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: An iterator like instance of either RegulatoryComplianceStandard or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.RegulatoryComplianceStandard] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.RegulatoryComplianceStandardList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("RegulatoryComplianceStandardList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, regulatory_compliance_standard_name: str, **kwargs: Any) -> _models.RegulatoryComplianceStandard: - """Supported regulatory compliance details state for selected standard. - - :param regulatory_compliance_standard_name: Name of the regulatory compliance standard object. - Required. - :type regulatory_compliance_standard_name: str - :return: RegulatoryComplianceStandard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RegulatoryComplianceStandard - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.RegulatoryComplianceStandard] = kwargs.pop("cls", None) - - _request = build_get_request( - regulatory_compliance_standard_name=regulatory_compliance_standard_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RegulatoryComplianceStandard", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_control_definitions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_control_definitions_operations.py deleted file mode 100644 index 2fadfc18c77d..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_control_definitions_operations.py +++ /dev/null @@ -1,241 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.Security/secureScoreControlDefinitions") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScoreControlDefinitions" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SecureScoreControlDefinitionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`secure_score_control_definitions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.SecureScoreControlDefinitionItem"]: - """List the available security controls, their assessments, and the max score. - - :return: An iterator like instance of either SecureScoreControlDefinitionItem or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecureScoreControlDefinitionItem] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecureScoreControlDefinitionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecureScoreControlDefinitionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.SecureScoreControlDefinitionItem"]: - """For a specified subscription, list the available security controls, their assessments, and the - max score. - - :return: An iterator like instance of either SecureScoreControlDefinitionItem or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecureScoreControlDefinitionItem] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecureScoreControlDefinitionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecureScoreControlDefinitionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_controls_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_controls_operations.py deleted file mode 100644 index ee7fada8a255..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_score_controls_operations.py +++ /dev/null @@ -1,277 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar, Union - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_secure_score_request( - secure_score_name: str, - subscription_id: str, - *, - expand: Optional[Union[str, _models.ExpandControlsEnum]] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScores/{secureScoreName}/secureScoreControls", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "secureScoreName": _SERIALIZER.url("secure_score_name", secure_score_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if expand is not None: - _params["$expand"] = _SERIALIZER.query("expand", expand, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request( - subscription_id: str, *, expand: Optional[Union[str, _models.ExpandControlsEnum]] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScoreControls" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if expand is not None: - _params["$expand"] = _SERIALIZER.query("expand", expand, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SecureScoreControlsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`secure_score_controls` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_secure_score( - self, secure_score_name: str, expand: Optional[Union[str, _models.ExpandControlsEnum]] = None, **kwargs: Any - ) -> ItemPaged["_models.SecureScoreControlDetails"]: - """Get all security controls for a specific initiative within a scope. - - :param secure_score_name: The initiative name. For the ASC Default initiative, use 'ascScore' - as in the sample request below. Required. - :type secure_score_name: str - :param expand: OData expand. Optional. "definition" Default value is None. - :type expand: str or ~azure.mgmt.security.models.ExpandControlsEnum - :return: An iterator like instance of either SecureScoreControlDetails or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecureScoreControlDetails] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecureScoreControlList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_secure_score_request( - secure_score_name=secure_score_name, - subscription_id=self._config.subscription_id, - expand=expand, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecureScoreControlList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list( - self, expand: Optional[Union[str, _models.ExpandControlsEnum]] = None, **kwargs: Any - ) -> ItemPaged["_models.SecureScoreControlDetails"]: - """Get all security controls within a scope. - - :param expand: OData expand. Optional. "definition" Default value is None. - :type expand: str or ~azure.mgmt.security.models.ExpandControlsEnum - :return: An iterator like instance of either SecureScoreControlDetails or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecureScoreControlDetails] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecureScoreControlList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - expand=expand, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecureScoreControlList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_scores_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_scores_operations.py deleted file mode 100644 index f3a5447743c9..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_secure_scores_operations.py +++ /dev/null @@ -1,236 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScores") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(secure_score_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScores/{secureScoreName}" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "secureScoreName": _SERIALIZER.url("secure_score_name", secure_score_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SecureScoresOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`secure_scores` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.SecureScoreItem"]: - """List secure scores for all your Microsoft Defender for Cloud initiatives within your current - scope. - - :return: An iterator like instance of either SecureScoreItem or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecureScoreItem] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecureScoresList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecureScoresList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, secure_score_name: str, **kwargs: Any) -> _models.SecureScoreItem: - """Get secure score for a specific Microsoft Defender for Cloud initiative within your current - scope. For the ASC Default initiative, use 'ascScore'. - - :param secure_score_name: The initiative name. For the ASC Default initiative, use 'ascScore' - as in the sample request below. Required. - :type secure_score_name: str - :return: SecureScoreItem or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecureScoreItem - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecureScoreItem] = kwargs.pop("cls", None) - - _request = build_get_request( - secure_score_name=secure_score_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecureScoreItem", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_application_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_application_operations.py deleted file mode 100644 index bcc31cf94441..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_application_operations.py +++ /dev/null @@ -1,431 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request( - resource_group_name: str, security_connector_name: str, application_id: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/providers/Microsoft.Security/applications/{applicationId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "applicationId": _SERIALIZER.url("application_id", application_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, security_connector_name: str, application_id: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/providers/Microsoft.Security/applications/{applicationId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "applicationId": _SERIALIZER.url("application_id", application_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, security_connector_name: str, application_id: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/providers/Microsoft.Security/applications/{applicationId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - "applicationId": _SERIALIZER.url("application_id", application_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - - -class SecurityConnectorApplicationOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`security_connector_application` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get( - self, resource_group_name: str, security_connector_name: str, application_id: str, **kwargs: Any - ) -> _models.Application: - """Get a specific application for the requested scope by applicationId. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - cls: ClsType[_models.Application] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - application_id=application_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated5, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Application", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - application_id: str, - application: _models.Application, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Application: - """Creates or update a security Application on the given security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :param application: Application over a subscription scope. Required. - :type application: ~azure.mgmt.security.models.Application - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - application_id: str, - application: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Application: - """Creates or update a security Application on the given security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :param application: Application over a subscription scope. Required. - :type application: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - application_id: str, - application: Union[_models.Application, IO[bytes]], - **kwargs: Any - ) -> _models.Application: - """Creates or update a security Application on the given security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :param application: Application over a subscription scope. Is either a Application type or a - IO[bytes] type. Required. - :type application: ~azure.mgmt.security.models.Application or IO[bytes] - :return: Application or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Application - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Application] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(application, (IOBase, bytes)): - _content = application - else: - _json = self._serialize.body(application, "Application") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - application_id=application_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated5, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Application", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, security_connector_name: str, application_id: str, **kwargs: Any - ) -> None: - """Delete an Application over a given scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param application_id: The security Application key - unique key for the standard application. - Required. - :type application_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - application_id=application_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_applications_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_applications_operations.py deleted file mode 100644 index ee30c6e00f46..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connector_applications_operations.py +++ /dev/null @@ -1,168 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/providers/Microsoft.Security/applications", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SecurityConnectorApplicationsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`security_connector_applications` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list( - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> ItemPaged["_models.Application"]: - """Get a list of all relevant applications over a security connector level scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: An iterator like instance of either Application or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Application] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-07-01-preview")) - cls: ClsType[_models.ApplicationsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ApplicationsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated5, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connectors_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connectors_operations.py deleted file mode 100644 index 35166fcc323c..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_connectors_operations.py +++ /dev/null @@ -1,789 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityConnectors") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, security_connector_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "securityConnectorName": _SERIALIZER.url("security_connector_name", security_connector_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class SecurityConnectorsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`security_connectors` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.SecurityConnector"]: - """Lists all the security connectors in the specified subscription. Use the 'nextLink' property in - the response to get the next page of security connectors for the specified subscription. - - :return: An iterator like instance of either SecurityConnector or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityConnector] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - cls: ClsType[_models.SecurityConnectorsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityConnectorsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated10, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.SecurityConnector"]: - """Lists all the security connectors in the specified resource group. Use the 'nextLink' property - in the response to get the next page of security connectors for the specified resource group. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either SecurityConnector or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityConnector] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - cls: ClsType[_models.SecurityConnectorsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityConnectorsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated10, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, resource_group_name: str, security_connector_name: str, **kwargs: Any) -> _models.SecurityConnector: - """Retrieves details of a specific security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - cls: ClsType[_models.SecurityConnector] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated10, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityConnector", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - security_connector: _models.SecurityConnector, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityConnector: - """Creates or updates a security connector. If a security connector is already created and a - subsequent request is issued for the same security connector id, then it will be updated. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param security_connector: The security connector resource. Required. - :type security_connector: ~azure.mgmt.security.models.SecurityConnector - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - security_connector: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityConnector: - """Creates or updates a security connector. If a security connector is already created and a - subsequent request is issued for the same security connector id, then it will be updated. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param security_connector: The security connector resource. Required. - :type security_connector: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - security_connector_name: str, - security_connector: Union[_models.SecurityConnector, IO[bytes]], - **kwargs: Any - ) -> _models.SecurityConnector: - """Creates or updates a security connector. If a security connector is already created and a - subsequent request is issued for the same security connector id, then it will be updated. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param security_connector: The security connector resource. Is either a SecurityConnector type - or a IO[bytes] type. Required. - :type security_connector: ~azure.mgmt.security.models.SecurityConnector or IO[bytes] - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SecurityConnector] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(security_connector, (IOBase, bytes)): - _content = security_connector - else: - _json = self._serialize.body(security_connector, "SecurityConnector") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated10, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityConnector", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - resource_group_name: str, - security_connector_name: str, - security_connector: _models.SecurityConnector, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityConnector: - """Updates a security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param security_connector: The security connector resource. Required. - :type security_connector: ~azure.mgmt.security.models.SecurityConnector - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - resource_group_name: str, - security_connector_name: str, - security_connector: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityConnector: - """Updates a security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param security_connector: The security connector resource. Required. - :type security_connector: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - resource_group_name: str, - security_connector_name: str, - security_connector: Union[_models.SecurityConnector, IO[bytes]], - **kwargs: Any - ) -> _models.SecurityConnector: - """Updates a security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :param security_connector: The security connector resource. Is either a SecurityConnector type - or a IO[bytes] type. Required. - :type security_connector: ~azure.mgmt.security.models.SecurityConnector or IO[bytes] - :return: SecurityConnector or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityConnector - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SecurityConnector] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(security_connector, (IOBase, bytes)): - _content = security_connector - else: - _json = self._serialize.body(security_connector, "SecurityConnector") - - _request = build_update_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated10, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityConnector", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, security_connector_name: str, **kwargs: Any - ) -> None: - """Deletes a security connector. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param security_connector_name: The security connector name. Required. - :type security_connector_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - security_connector_name=security_connector_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated10, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_operators_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_operators_operations.py deleted file mode 100644 index 745f7ceb770c..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_operators_operations.py +++ /dev/null @@ -1,443 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(pricing_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}/securityOperators", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "pricingName": _SERIALIZER.url( - "pricing_name", pricing_name, "str", max_length=63, min_length=3, pattern=r"^[a-zA-Z][a-zA-Z0-9_]+$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - pricing_name: str, security_operator_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}/securityOperators/{securityOperatorName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "pricingName": _SERIALIZER.url( - "pricing_name", pricing_name, "str", max_length=63, min_length=3, pattern=r"^[a-zA-Z][a-zA-Z0-9_]+$" - ), - "securityOperatorName": _SERIALIZER.url( - "security_operator_name", - security_operator_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[a-zA-Z][a-zA-Z0-9_]+$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - pricing_name: str, security_operator_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}/securityOperators/{securityOperatorName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "pricingName": _SERIALIZER.url( - "pricing_name", pricing_name, "str", max_length=63, min_length=3, pattern=r"^[a-zA-Z][a-zA-Z0-9_]+$" - ), - "securityOperatorName": _SERIALIZER.url( - "security_operator_name", - security_operator_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[a-zA-Z][a-zA-Z0-9_]+$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - pricing_name: str, security_operator_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}/securityOperators/{securityOperatorName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "pricingName": _SERIALIZER.url( - "pricing_name", pricing_name, "str", max_length=63, min_length=3, pattern=r"^[a-zA-Z][a-zA-Z0-9_]+$" - ), - "securityOperatorName": _SERIALIZER.url( - "security_operator_name", - security_operator_name, - "str", - max_length=63, - min_length=3, - pattern=r"^[a-zA-Z][a-zA-Z0-9_]+$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class SecurityOperatorsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`security_operators` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, pricing_name: str, **kwargs: Any) -> _models.SecurityOperatorList: - """Lists Microsoft Defender for Cloud securityOperators in the subscription. - - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :return: SecurityOperatorList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityOperatorList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) - cls: ClsType[_models.SecurityOperatorList] = kwargs.pop("cls", None) - - _request = build_list_request( - pricing_name=pricing_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated6, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityOperatorList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get(self, pricing_name: str, security_operator_name: str, **kwargs: Any) -> _models.SecurityOperator: - """Get a specific security operator for the requested scope. - - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :param security_operator_name: name of the securityOperator. Required. - :type security_operator_name: str - :return: SecurityOperator or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityOperator - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) - cls: ClsType[_models.SecurityOperator] = kwargs.pop("cls", None) - - _request = build_get_request( - pricing_name=pricing_name, - security_operator_name=security_operator_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated6, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityOperator", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def create_or_update( - self, pricing_name: str, security_operator_name: str, **kwargs: Any - ) -> _models.SecurityOperator: - """Creates Microsoft Defender for Cloud security operator on the given scope. - - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :param security_operator_name: name of the securityOperator. Required. - :type security_operator_name: str - :return: SecurityOperator or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityOperator - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) - cls: ClsType[_models.SecurityOperator] = kwargs.pop("cls", None) - - _request = build_create_or_update_request( - pricing_name=pricing_name, - security_operator_name=security_operator_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated6, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityOperator", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, pricing_name: str, security_operator_name: str, **kwargs: Any - ) -> None: - """Delete Microsoft Defender for Cloud securityOperator in the subscription. - - :param pricing_name: name of the pricing configuration. Required. - :type pricing_name: str - :param security_operator_name: name of the securityOperator. Required. - :type security_operator_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-01-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - pricing_name=pricing_name, - security_operator_name=security_operator_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated6, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_operations.py deleted file mode 100644 index 9b251e508537..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_operations.py +++ /dev/null @@ -1,251 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securitySolutions") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, asc_location: str, security_solution_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/securitySolutions/{securitySolutionName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "securitySolutionName": _SERIALIZER.url("security_solution_name", security_solution_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SecuritySolutionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`security_solutions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.SecuritySolution"]: - """Gets a list of Security Solutions for the subscription. - - :return: An iterator like instance of either SecuritySolution or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecuritySolution] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecuritySolutionList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecuritySolutionList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_group_name: str, asc_location: str, security_solution_name: str, **kwargs: Any - ) -> _models.SecuritySolution: - """Gets a specific Security Solution. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param security_solution_name: Name of security solution. Required. - :type security_solution_name: str - :return: SecuritySolution or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecuritySolution - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecuritySolution] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - security_solution_name=security_solution_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecuritySolution", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_reference_data_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_reference_data_operations.py deleted file mode 100644 index f2906c89c0dc..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_solutions_reference_data_operations.py +++ /dev/null @@ -1,222 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securitySolutionsReferenceData" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_home_region_request(asc_location: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/securitySolutionsReferenceData", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SecuritySolutionsReferenceDataOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`security_solutions_reference_data` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> _models.SecuritySolutionsReferenceDataList: - """Gets a list of all supported Security Solutions for the subscription. - - :return: SecuritySolutionsReferenceDataList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecuritySolutionsReferenceDataList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecuritySolutionsReferenceDataList] = kwargs.pop("cls", None) - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecuritySolutionsReferenceDataList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_home_region(self, asc_location: str, **kwargs: Any) -> _models.SecuritySolutionsReferenceDataList: - """Gets list of all supported Security Solutions for subscription and location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: SecuritySolutionsReferenceDataList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecuritySolutionsReferenceDataList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.SecuritySolutionsReferenceDataList] = kwargs.pop("cls", None) - - _request = build_list_by_home_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecuritySolutionsReferenceDataList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_standards_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_standards_operations.py deleted file mode 100644 index 9807b145706b..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_security_standards_operations.py +++ /dev/null @@ -1,497 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(scope: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/securityStandards") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(scope: str, standard_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/securityStandards/{standardId}") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "standardId": _SERIALIZER.url( - "standard_id", standard_id, "str", pattern=r"[{]?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request(scope: str, standard_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/securityStandards/{standardId}") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "standardId": _SERIALIZER.url( - "standard_id", standard_id, "str", pattern=r"[{]?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(scope: str, standard_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/securityStandards/{standardId}") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - "standardId": _SERIALIZER.url( - "standard_id", standard_id, "str", pattern=r"[{]?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class SecurityStandardsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`security_standards` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.SecurityStandard"]: - """Get a list of all relevant security standards over a scope. - - :param scope: The scope of the security standard. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :return: An iterator like instance of either SecurityStandard or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityStandard] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[_models.SecurityStandardList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityStandardList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, scope: str, standard_id: str, **kwargs: Any) -> _models.SecurityStandard: - """Get a specific security standard for the requested scope by standardId. - - :param scope: The scope of the security standard. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :return: SecurityStandard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityStandard - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[_models.SecurityStandard] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - standard_id=standard_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityStandard", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - scope: str, - standard_id: str, - standard: _models.SecurityStandard, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityStandard: - """Creates or updates a security standard over a given scope. - - :param scope: The scope of the security standard. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :param standard: Custom security standard over a pre-defined scope. Required. - :type standard: ~azure.mgmt.security.models.SecurityStandard - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityStandard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityStandard - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - scope: str, - standard_id: str, - standard: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SecurityStandard: - """Creates or updates a security standard over a given scope. - - :param scope: The scope of the security standard. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :param standard: Custom security standard over a pre-defined scope. Required. - :type standard: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SecurityStandard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityStandard - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, scope: str, standard_id: str, standard: Union[_models.SecurityStandard, IO[bytes]], **kwargs: Any - ) -> _models.SecurityStandard: - """Creates or updates a security standard over a given scope. - - :param scope: The scope of the security standard. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :param standard: Custom security standard over a pre-defined scope. Is either a - SecurityStandard type or a IO[bytes] type. Required. - :type standard: ~azure.mgmt.security.models.SecurityStandard or IO[bytes] - :return: SecurityStandard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityStandard - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SecurityStandard] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(standard, (IOBase, bytes)): - _content = standard - else: - _json = self._serialize.body(standard, "SecurityStandard") - - _request = build_create_or_update_request( - scope=scope, - standard_id=standard_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityStandard", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, scope: str, standard_id: str, **kwargs: Any - ) -> None: - """Delete a security standard over a given scope. - - :param scope: The scope of the security standard. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - scope=scope, - standard_id=standard_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sensitivity_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sensitivity_settings_operations.py deleted file mode 100644 index 38f2a77a3e2d..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sensitivity_settings_operations.py +++ /dev/null @@ -1,323 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_create_or_update_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.Security/sensitivitySettings/current") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.Security/sensitivitySettings/current") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.Security/sensitivitySettings") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SensitivitySettingsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`sensitivity_settings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @overload - def create_or_update( - self, - sensitivity_settings: _models.UpdateSensitivitySettingsRequest, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.GetSensitivitySettingsResponse: - """Create or update data sensitivity settings for sensitive data discovery. - - :param sensitivity_settings: The data sensitivity settings to update. Required. - :type sensitivity_settings: ~azure.mgmt.security.models.UpdateSensitivitySettingsRequest - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: GetSensitivitySettingsResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, sensitivity_settings: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.GetSensitivitySettingsResponse: - """Create or update data sensitivity settings for sensitive data discovery. - - :param sensitivity_settings: The data sensitivity settings to update. Required. - :type sensitivity_settings: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: GetSensitivitySettingsResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, sensitivity_settings: Union[_models.UpdateSensitivitySettingsRequest, IO[bytes]], **kwargs: Any - ) -> _models.GetSensitivitySettingsResponse: - """Create or update data sensitivity settings for sensitive data discovery. - - :param sensitivity_settings: The data sensitivity settings to update. Is either a - UpdateSensitivitySettingsRequest type or a IO[bytes] type. Required. - :type sensitivity_settings: ~azure.mgmt.security.models.UpdateSensitivitySettingsRequest or - IO[bytes] - :return: GetSensitivitySettingsResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.GetSensitivitySettingsResponse] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(sensitivity_settings, (IOBase, bytes)): - _content = sensitivity_settings - else: - _json = self._serialize.body(sensitivity_settings, "UpdateSensitivitySettingsRequest") - - _request = build_create_or_update_request( - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated8, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GetSensitivitySettingsResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get(self, **kwargs: Any) -> _models.GetSensitivitySettingsResponse: - """Gets data sensitivity settings for sensitive data discovery. - - :return: GetSensitivitySettingsResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) - cls: ClsType[_models.GetSensitivitySettingsResponse] = kwargs.pop("cls", None) - - _request = build_get_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated8, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GetSensitivitySettingsResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list(self, **kwargs: Any) -> _models.GetSensitivitySettingsListResponse: - """Gets a list with a single sensitivity settings resource. - - :return: GetSensitivitySettingsListResponse or the result of cls(response) - :rtype: ~azure.mgmt.security.models.GetSensitivitySettingsListResponse - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-02-15-preview")) - cls: ClsType[_models.GetSensitivitySettingsListResponse] = kwargs.pop("cls", None) - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated8, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("GetSensitivitySettingsListResponse", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessment_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessment_operations.py deleted file mode 100644 index 320065343ffb..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessment_operations.py +++ /dev/null @@ -1,569 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Iterator, Literal, Optional, TypeVar, Union, cast - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_extended_resource_request( - resource_group_name: str, - resource_namespace: str, - resource_type: str, - resource_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "resourceNamespace": _SERIALIZER.url("resource_namespace", resource_namespace, "str"), - "resourceType": _SERIALIZER.url("resource_type", resource_type, "str"), - "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - resource_namespace: str, - resource_type: str, - resource_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments/{serverVulnerabilityAssessment}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "resourceNamespace": _SERIALIZER.url("resource_namespace", resource_namespace, "str"), - "resourceType": _SERIALIZER.url("resource_type", resource_type, "str"), - "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"), - "serverVulnerabilityAssessment": _SERIALIZER.url( - "server_vulnerability_assessment", server_vulnerability_assessment, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - resource_namespace: str, - resource_type: str, - resource_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments/{serverVulnerabilityAssessment}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "resourceNamespace": _SERIALIZER.url("resource_namespace", resource_namespace, "str"), - "resourceType": _SERIALIZER.url("resource_type", resource_type, "str"), - "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"), - "serverVulnerabilityAssessment": _SERIALIZER.url( - "server_vulnerability_assessment", server_vulnerability_assessment, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - resource_namespace: str, - resource_type: str, - resource_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments/{serverVulnerabilityAssessment}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "resourceNamespace": _SERIALIZER.url("resource_namespace", resource_namespace, "str"), - "resourceType": _SERIALIZER.url("resource_type", resource_type, "str"), - "resourceName": _SERIALIZER.url("resource_name", resource_name, "str"), - "serverVulnerabilityAssessment": _SERIALIZER.url( - "server_vulnerability_assessment", server_vulnerability_assessment, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class ServerVulnerabilityAssessmentOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`server_vulnerability_assessment` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_extended_resource( - self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any - ) -> _models.ServerVulnerabilityAssessmentsList: - """Gets a list of server vulnerability assessment onboarding statuses on a given resource. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param resource_namespace: The Namespace of the resource. Required. - :type resource_namespace: str - :param resource_type: The type of the resource. Required. - :type resource_type: str - :param resource_name: Name of the resource. Required. - :type resource_name: str - :return: ServerVulnerabilityAssessmentsList or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsList - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.ServerVulnerabilityAssessmentsList] = kwargs.pop("cls", None) - - _request = build_list_by_extended_resource_request( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ServerVulnerabilityAssessmentsList", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any - ) -> _models.ServerVulnerabilityAssessment: - """Gets a server vulnerability assessment onboarding statuses on a given resource. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param resource_namespace: The Namespace of the resource. Required. - :type resource_namespace: str - :param resource_type: The type of the resource. Required. - :type resource_type: str - :param resource_name: Name of the resource. Required. - :type resource_name: str - :return: ServerVulnerabilityAssessment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.ServerVulnerabilityAssessment] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - subscription_id=self._config.subscription_id, - server_vulnerability_assessment=server_vulnerability_assessment, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ServerVulnerabilityAssessment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def create_or_update( - self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any - ) -> _models.ServerVulnerabilityAssessment: - """Creating a server vulnerability assessment on a resource, which will onboard a resource for - having a vulnerability assessment on it. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param resource_namespace: The Namespace of the resource. Required. - :type resource_namespace: str - :param resource_type: The type of the resource. Required. - :type resource_type: str - :param resource_name: Name of the resource. Required. - :type resource_name: str - :return: ServerVulnerabilityAssessment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.ServerVulnerabilityAssessment] = kwargs.pop("cls", None) - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - subscription_id=self._config.subscription_id, - server_vulnerability_assessment=server_vulnerability_assessment, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ServerVulnerabilityAssessment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _delete_initial( - self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - subscription_id=self._config.subscription_id, - server_vulnerability_assessment=server_vulnerability_assessment, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete( - self, resource_group_name: str, resource_namespace: str, resource_type: str, resource_name: str, **kwargs: Any - ) -> LROPoller[None]: - """Removing server vulnerability assessment from a resource. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param resource_namespace: The Namespace of the resource. Required. - :type resource_namespace: str - :param resource_type: The type of the resource. Required. - :type resource_type: str - :param resource_name: Name of the resource. Required. - :type resource_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - server_vulnerability_assessment: Literal["default"] = kwargs.pop("server_vulnerability_assessment", "default") - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - resource_namespace=resource_namespace, - resource_type=resource_type, - resource_name=resource_name, - server_vulnerability_assessment=server_vulnerability_assessment, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessments_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessments_settings_operations.py deleted file mode 100644 index df8c8ce86d0d..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_server_vulnerability_assessments_settings_operations.py +++ /dev/null @@ -1,509 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings/{settingKind}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "settingKind": _SERIALIZER.url("setting_kind", setting_kind, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings/{settingKind}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "settingKind": _SERIALIZER.url("setting_kind", setting_kind, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings/{settingKind}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "settingKind": _SERIALIZER.url("setting_kind", setting_kind, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class ServerVulnerabilityAssessmentsSettingsOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`server_vulnerability_assessments_settings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.ServerVulnerabilityAssessmentsSetting"]: - """Get a list of all the server vulnerability assessments settings over a subscription level - scope. - - :return: An iterator like instance of either ServerVulnerabilityAssessmentsSetting or the - result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) - cls: ClsType[_models.ServerVulnerabilityAssessmentsSettingsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ServerVulnerabilityAssessmentsSettingsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], **kwargs: Any - ) -> _models.ServerVulnerabilityAssessmentsSetting: - """Get a server vulnerability assessments setting of the requested kind, that is set on the - subscription. - - :param setting_kind: The kind of the server vulnerability assessments setting. - "azureServersSetting" Required. - :type setting_kind: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName - :return: ServerVulnerabilityAssessmentsSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) - cls: ClsType[_models.ServerVulnerabilityAssessmentsSetting] = kwargs.pop("cls", None) - - _request = build_get_request( - setting_kind=setting_kind, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ServerVulnerabilityAssessmentsSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], - server_vulnerability_assessments_setting: _models.ServerVulnerabilityAssessmentsSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ServerVulnerabilityAssessmentsSetting: - """Create or update a server vulnerability assessments setting of the requested kind on the - subscription. - - :param setting_kind: The kind of the server vulnerability assessments setting. - "azureServersSetting" Required. - :type setting_kind: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName - :param server_vulnerability_assessments_setting: A server vulnerability assessments setting - over a predefined scope. Required. - :type server_vulnerability_assessments_setting: - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ServerVulnerabilityAssessmentsSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], - server_vulnerability_assessments_setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ServerVulnerabilityAssessmentsSetting: - """Create or update a server vulnerability assessments setting of the requested kind on the - subscription. - - :param setting_kind: The kind of the server vulnerability assessments setting. - "azureServersSetting" Required. - :type setting_kind: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName - :param server_vulnerability_assessments_setting: A server vulnerability assessments setting - over a predefined scope. Required. - :type server_vulnerability_assessments_setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ServerVulnerabilityAssessmentsSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], - server_vulnerability_assessments_setting: Union[_models.ServerVulnerabilityAssessmentsSetting, IO[bytes]], - **kwargs: Any - ) -> _models.ServerVulnerabilityAssessmentsSetting: - """Create or update a server vulnerability assessments setting of the requested kind on the - subscription. - - :param setting_kind: The kind of the server vulnerability assessments setting. - "azureServersSetting" Required. - :type setting_kind: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName - :param server_vulnerability_assessments_setting: A server vulnerability assessments setting - over a predefined scope. Is either a ServerVulnerabilityAssessmentsSetting type or a IO[bytes] - type. Required. - :type server_vulnerability_assessments_setting: - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting or IO[bytes] - :return: ServerVulnerabilityAssessmentsSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ServerVulnerabilityAssessmentsSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(server_vulnerability_assessments_setting, (IOBase, bytes)): - _content = server_vulnerability_assessments_setting - else: - _json = self._serialize.body( - server_vulnerability_assessments_setting, "ServerVulnerabilityAssessmentsSetting" - ) - - _request = build_create_or_update_request( - setting_kind=setting_kind, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ServerVulnerabilityAssessmentsSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, setting_kind: Union[str, _models.ServerVulnerabilityAssessmentsSettingKindName], **kwargs: Any - ) -> None: - """Delete the server vulnerability assessments setting of the requested kind from the - subscription. - - :param setting_kind: The kind of the server vulnerability assessments setting. - "azureServersSetting" Required. - :type setting_kind: str or - ~azure.mgmt.security.models.ServerVulnerabilityAssessmentsSettingKindName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2023-05-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - setting_kind=setting_kind, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_settings_operations.py deleted file mode 100644 index a92a8d37a819..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_settings_operations.py +++ /dev/null @@ -1,391 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/settings") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - setting_name: Union[str, _models.SettingName], subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/settings/{settingName}" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - setting_name: Union[str, _models.SettingName], subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/settings/{settingName}" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "settingName": _SERIALIZER.url("setting_name", setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -class SettingsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`settings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.Setting"]: - """Settings about different configurations in Microsoft Defender for Cloud. - - :return: An iterator like instance of either Setting or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Setting] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) - cls: ClsType[_models.SettingsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SettingsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated17, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, setting_name: Union[str, _models.SettingName], **kwargs: Any) -> _models.Setting: - """Settings of different configurations in Microsoft Defender for Cloud. - - :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", - "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName - :return: Setting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Setting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) - cls: ClsType[_models.Setting] = kwargs.pop("cls", None) - - _request = build_get_request( - setting_name=setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated17, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Setting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - setting_name: Union[str, _models.SettingName], - setting: _models.Setting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Setting: - """updating settings about different configurations in Microsoft Defender for Cloud. - - :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", - "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName - :param setting: Setting object. Required. - :type setting: ~azure.mgmt.security.models.Setting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Setting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Setting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - setting_name: Union[str, _models.SettingName], - setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Setting: - """updating settings about different configurations in Microsoft Defender for Cloud. - - :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", - "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName - :param setting: Setting object. Required. - :type setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Setting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Setting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, setting_name: Union[str, _models.SettingName], setting: Union[_models.Setting, IO[bytes]], **kwargs: Any - ) -> _models.Setting: - """updating settings about different configurations in Microsoft Defender for Cloud. - - :param setting_name: The name of the setting. Known values are: "MCAS", "WDATP", - "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", "WDATP_UNIFIED_SOLUTION", and "Sentinel". Required. - :type setting_name: str or ~azure.mgmt.security.models.SettingName - :param setting: Setting object. Is either a Setting type or a IO[bytes] type. Required. - :type setting: ~azure.mgmt.security.models.Setting or IO[bytes] - :return: Setting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Setting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Setting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(setting, (IOBase, bytes)): - _content = setting - else: - _json = self._serialize.body(setting, "Setting") - - _request = build_update_request( - setting_name=setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated17, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Setting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_baseline_rules_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_baseline_rules_operations.py deleted file mode 100644 index eefbbb289469..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_baseline_rules_operations.py +++ /dev/null @@ -1,732 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_create_or_update_request( - resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules/{ruleId}", - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - if database_name is not None: - _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules/{ruleId}", - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - if database_name is not None: - _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_id: str, rule_id: str, *, database_name: Optional[str] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules/{ruleId}", - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "ruleId": _SERIALIZER.url("rule_id", rule_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - if database_name is not None: - _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request(resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - if database_name is not None: - _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_add_request(resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - if database_name is not None: - _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class SqlVulnerabilityAssessmentBaselineRulesOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`sql_vulnerability_assessment_baseline_rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @overload - def create_or_update( - self, - resource_id: str, - rule_id: str, - database_name: Optional[str] = None, - body: Optional[_models.RuleResultsInput] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.RuleResults: - """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - - Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param rule_id: The rule Id. Required. - :type rule_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :param body: The baseline results for this rule. Default value is None. - :type body: ~azure.mgmt.security.models.RuleResultsInput - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: RuleResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RuleResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_id: str, - rule_id: str, - database_name: Optional[str] = None, - body: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.RuleResults: - """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - - Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param rule_id: The rule Id. Required. - :type rule_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :param body: The baseline results for this rule. Default value is None. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: RuleResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RuleResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_id: str, - rule_id: str, - database_name: Optional[str] = None, - body: Optional[Union[_models.RuleResultsInput, IO[bytes]]] = None, - **kwargs: Any - ) -> _models.RuleResults: - """Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - - Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param rule_id: The rule Id. Required. - :type rule_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :param body: The baseline results for this rule. Is either a RuleResultsInput type or a - IO[bytes] type. Default value is None. - :type body: ~azure.mgmt.security.models.RuleResultsInput or IO[bytes] - :return: RuleResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RuleResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if body else None - cls: ClsType[_models.RuleResults] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" if body else None - _json = None - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - if body is not None: - _json = self._serialize.body(body, "RuleResultsInput") - else: - _json = None - - _request = build_create_or_update_request( - resource_id=resource_id, - rule_id=rule_id, - database_name=database_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RuleResults", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get( - self, resource_id: str, rule_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> _models.RuleResults: - """Gets the results for a given rule in the Baseline. - - Gets the results for a given rule in the Baseline. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param rule_id: The rule Id. Required. - :type rule_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: RuleResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RuleResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.RuleResults] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - rule_id=rule_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RuleResults", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_id: str, rule_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> None: - """Deletes a rule from the Baseline of a given database. - - Deletes a rule from the Baseline of a given database. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param rule_id: The rule Id. Required. - :type rule_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_id=resource_id, - rule_id=rule_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list( - self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> ItemPaged["_models.RuleResults"]: - """Gets the results for all rules in the Baseline. - - Gets the results for all rules in the Baseline. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: An iterator like instance of either RuleResults or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.RuleResults] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.RulesResults] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("RulesResults", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def add( - self, - resource_id: str, - database_name: Optional[str] = None, - body: Optional[_models.RulesResultsInput] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.RulesResults: - """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - - Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :param body: The baseline rules. Default value is None. - :type body: ~azure.mgmt.security.models.RulesResultsInput - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: RulesResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RulesResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def add( - self, - resource_id: str, - database_name: Optional[str] = None, - body: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.RulesResults: - """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - - Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :param body: The baseline rules. Default value is None. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: RulesResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RulesResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def add( - self, - resource_id: str, - database_name: Optional[str] = None, - body: Optional[Union[_models.RulesResultsInput, IO[bytes]]] = None, - **kwargs: Any - ) -> _models.RulesResults: - """Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - - Set a list of baseline rules. Will overwrite any previously existing results (for all rules). - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :param body: The baseline rules. Is either a RulesResultsInput type or a IO[bytes] type. - Default value is None. - :type body: ~azure.mgmt.security.models.RulesResultsInput or IO[bytes] - :return: RulesResults or the result of cls(response) - :rtype: ~azure.mgmt.security.models.RulesResults - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if body else None - cls: ClsType[_models.RulesResults] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" if body else None - _json = None - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - if body is not None: - _json = self._serialize.body(body, "RulesResultsInput") - else: - _json = None - - _request = build_add_request( - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("RulesResults", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scan_results_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scan_results_operations.py deleted file mode 100644 index 170a5e1a013f..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scan_results_operations.py +++ /dev/null @@ -1,276 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request( - scan_id: str, scan_result_id: str, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/{scanId}/scanResults/{scanResultId}", - ) - path_format_arguments = { - "scanId": _SERIALIZER.url("scan_id", scan_id, "str"), - "scanResultId": _SERIALIZER.url("scan_result_id", scan_result_id, "str"), - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - if database_name is not None: - _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request( - scan_id: str, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/{scanId}/scanResults", - ) - path_format_arguments = { - "scanId": _SERIALIZER.url("scan_id", scan_id, "str"), - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - if database_name is not None: - _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SqlVulnerabilityAssessmentScanResultsOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`sql_vulnerability_assessment_scan_results` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get( - self, scan_id: str, scan_result_id: str, resource_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> _models.ScanResult: - """Gets the scan results of a single rule in a scan record. - - Gets the scan results of a single rule in a scan record. - - :param scan_id: The scan Id. Type 'latest' to get the scan results for the latest scan. - Required. - :type scan_id: str - :param scan_result_id: The rule Id of the results. Required. - :type scan_result_id: str - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: ScanResult or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ScanResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.ScanResult] = kwargs.pop("cls", None) - - _request = build_get_request( - scan_id=scan_id, - scan_result_id=scan_result_id, - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ScanResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, scan_id: str, resource_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> ItemPaged["_models.ScanResult"]: - """Gets a list of scan results for a single scan record. - - Gets a list of scan results for a single scan record. - - :param scan_id: The scan Id. Type 'latest' to get the scan results for the latest scan. - Required. - :type scan_id: str - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: An iterator like instance of either ScanResult or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ScanResult] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.ScanResults] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scan_id=scan_id, - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ScanResults", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scans_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scans_operations.py deleted file mode 100644 index e8d84796384b..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_scans_operations.py +++ /dev/null @@ -1,519 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Iterator, Optional, TypeVar, Union, cast - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request( - scan_id: str, resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/{scanId}" - ) - path_format_arguments = { - "scanId": _SERIALIZER.url("scan_id", scan_id, "str"), - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - if database_name is not None: - _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request(resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - if database_name is not None: - _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_initiate_scan_request(resource_id: str, *, database_name: Optional[str] = None, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/initiateScan", - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - if database_name is not None: - _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_scan_operation_result_request( - resource_id: str, operation_id: str, *, database_name: Optional[str] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/scanOperationResults/{operationId}", - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "operationId": _SERIALIZER.url("operation_id", operation_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - if database_name is not None: - _params["databaseName"] = _SERIALIZER.query("database_name", database_name, "str") - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SqlVulnerabilityAssessmentScansOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`sql_vulnerability_assessment_scans` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get(self, scan_id: str, resource_id: str, database_name: Optional[str] = None, **kwargs: Any) -> _models.ScanV2: - """Gets the scan details of a single scan record. - - Gets the scan details of a single scan record. - - :param scan_id: The scan Id. Type 'latest' to get the scan record for the latest scan. - Required. - :type scan_id: str - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: ScanV2 or the result of cls(response) - :rtype: ~azure.mgmt.security.models.ScanV2 - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.ScanV2] = kwargs.pop("cls", None) - - _request = build_get_request( - scan_id=scan_id, - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ScanV2", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list(self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any) -> ItemPaged["_models.ScanV2"]: - """Gets a list of scan records. - - Gets a list of scan records. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: An iterator like instance of either ScanV2 or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.ScanV2] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.ScansV2] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ScansV2", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _initiate_scan_initial( - self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_initiate_scan_request( - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_initiate_scan( - self, resource_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> LROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult]: - """Initiates a vulnerability assessment scan. - - Initiates a vulnerability assessment scan. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: An instance of LROPoller that returns either - SqlVulnerabilityAssessmentScanOperationResult or the result of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.SqlVulnerabilityAssessmentScanOperationResult] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._initiate_scan_initial( - resource_id=resource_id, - database_name=database_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize( - "SqlVulnerabilityAssessmentScanOperationResult", pipeline_response.http_response - ) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.SqlVulnerabilityAssessmentScanOperationResult]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace - def get_scan_operation_result( - self, resource_id: str, operation_id: str, database_name: Optional[str] = None, **kwargs: Any - ) -> _models.SqlVulnerabilityAssessmentScanOperationResult: - """Gets the result of a scan operation initiated by the InitiateScan action. - - Gets the result of a scan operation initiated by the InitiateScan action. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param operation_id: The operation id. Required. - :type operation_id: str - :param database_name: The name of the database to assess. Required when the API is called on - the parent resource (e.g., server level) rather than on a specific database resource, since the - database name is not part of the resource URI. This is the only way to assess system databases - (e.g., master), which cannot be referenced directly in the resource URI. Default value is None. - :type database_name: str - :return: SqlVulnerabilityAssessmentScanOperationResult or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentScanOperationResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.SqlVulnerabilityAssessmentScanOperationResult] = kwargs.pop("cls", None) - - _request = build_get_scan_operation_result_request( - resource_id=resource_id, - operation_id=operation_id, - database_name=database_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize( - "SqlVulnerabilityAssessmentScanOperationResult", pipeline_response.http_response - ) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_settings_operations.py deleted file mode 100644 index 0ef540b35165..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sql_vulnerability_assessment_settings_operations.py +++ /dev/null @@ -1,369 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request(resource_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default") - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request(resource_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default") - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(resource_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default") - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class SqlVulnerabilityAssessmentSettingsOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`sql_vulnerability_assessment_settings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get(self, resource_id: str, **kwargs: Any) -> _models.SqlVulnerabilityAssessmentSettings: - """Gets the SQL Vulnerability Assessment settings. - - Gets the SQL Vulnerability Assessment settings. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[_models.SqlVulnerabilityAssessmentSettings] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SqlVulnerabilityAssessmentSettings", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - resource_id: str, - body: Optional[_models.SqlVulnerabilityAssessmentSettings] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SqlVulnerabilityAssessmentSettings: - """Creates or updates the SQL Vulnerability Assessment settings. - - Creates or updates the SQL Vulnerability Assessment settings. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param body: The SQL Vulnerability Assessment settings. Default value is None. - :type body: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_id: str, - body: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SqlVulnerabilityAssessmentSettings: - """Creates or updates the SQL Vulnerability Assessment settings. - - Creates or updates the SQL Vulnerability Assessment settings. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param body: The SQL Vulnerability Assessment settings. Default value is None. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_id: str, - body: Optional[Union[_models.SqlVulnerabilityAssessmentSettings, IO[bytes]]] = None, - **kwargs: Any - ) -> _models.SqlVulnerabilityAssessmentSettings: - """Creates or updates the SQL Vulnerability Assessment settings. - - Creates or updates the SQL Vulnerability Assessment settings. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param body: The SQL Vulnerability Assessment settings. Is either a - SqlVulnerabilityAssessmentSettings type or a IO[bytes] type. Default value is None. - :type body: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings or IO[bytes] - :return: SqlVulnerabilityAssessmentSettings or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SqlVulnerabilityAssessmentSettings - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - content_type = content_type if body else None - cls: ClsType[_models.SqlVulnerabilityAssessmentSettings] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" if body else None - _json = None - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - if body is not None: - _json = self._serialize.body(body, "SqlVulnerabilityAssessmentSettings") - else: - _json = None - - _request = build_create_or_update_request( - resource_id=resource_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SqlVulnerabilityAssessmentSettings", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete(self, resource_id: str, **kwargs: Any) -> None: # pylint: disable=inconsistent-return-statements - """Deletes the SQL Vulnerability Assessment settings. - - Deletes the SQL Vulnerability Assessment settings. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-04-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_id=resource_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated7, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standard_assignments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standard_assignments_operations.py deleted file mode 100644 index 26a8a3162908..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standard_assignments_operations.py +++ /dev/null @@ -1,520 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request(resource_id: str, standard_assignment_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "standardAssignmentName": _SERIALIZER.url( - "standard_assignment_name", - standard_assignment_name, - "str", - pattern=r"[{]?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_request(resource_id: str, standard_assignment_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "standardAssignmentName": _SERIALIZER.url( - "standard_assignment_name", - standard_assignment_name, - "str", - pattern=r"[{]?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(resource_id: str, standard_assignment_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{resourceId}/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}" - ) - path_format_arguments = { - "resourceId": _SERIALIZER.url("resource_id", resource_id, "str", skip_quote=True), - "standardAssignmentName": _SERIALIZER.url( - "standard_assignment_name", - standard_assignment_name, - "str", - pattern=r"[{]?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$", - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request(scope: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/standardAssignments") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class StandardAssignmentsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`standard_assignments` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get(self, resource_id: str, standard_assignment_name: str, **kwargs: Any) -> _models.StandardAssignment: - """Retrieves a standard assignment. - - This operation retrieves a single standard assignment, given its name and the scope it was - created at. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param standard_assignment_name: The standard assignments assignment key - unique key for the - standard assignment. Required. - :type standard_assignment_name: str - :return: StandardAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.StandardAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[_models.StandardAssignment] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_id=resource_id, - standard_assignment_name=standard_assignment_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("StandardAssignment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create( - self, - resource_id: str, - standard_assignment_name: str, - standard_assignment: _models.StandardAssignment, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.StandardAssignment: - """Creates or updates a standard assignment. - - This operation creates or updates a standard assignment with the given scope and name. standard - assignments apply to all resources contained within their scope. For example, when you assign a - policy at resource group scope, that policy applies to all resources in the group. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param standard_assignment_name: The standard assignments assignment key - unique key for the - standard assignment. Required. - :type standard_assignment_name: str - :param standard_assignment: Custom standard assignment over a pre-defined scope. Required. - :type standard_assignment: ~azure.mgmt.security.models.StandardAssignment - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: StandardAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.StandardAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create( - self, - resource_id: str, - standard_assignment_name: str, - standard_assignment: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.StandardAssignment: - """Creates or updates a standard assignment. - - This operation creates or updates a standard assignment with the given scope and name. standard - assignments apply to all resources contained within their scope. For example, when you assign a - policy at resource group scope, that policy applies to all resources in the group. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param standard_assignment_name: The standard assignments assignment key - unique key for the - standard assignment. Required. - :type standard_assignment_name: str - :param standard_assignment: Custom standard assignment over a pre-defined scope. Required. - :type standard_assignment: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: StandardAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.StandardAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create( - self, - resource_id: str, - standard_assignment_name: str, - standard_assignment: Union[_models.StandardAssignment, IO[bytes]], - **kwargs: Any - ) -> _models.StandardAssignment: - """Creates or updates a standard assignment. - - This operation creates or updates a standard assignment with the given scope and name. standard - assignments apply to all resources contained within their scope. For example, when you assign a - policy at resource group scope, that policy applies to all resources in the group. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param standard_assignment_name: The standard assignments assignment key - unique key for the - standard assignment. Required. - :type standard_assignment_name: str - :param standard_assignment: Custom standard assignment over a pre-defined scope. Is either a - StandardAssignment type or a IO[bytes] type. Required. - :type standard_assignment: ~azure.mgmt.security.models.StandardAssignment or IO[bytes] - :return: StandardAssignment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.StandardAssignment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.StandardAssignment] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(standard_assignment, (IOBase, bytes)): - _content = standard_assignment - else: - _json = self._serialize.body(standard_assignment, "StandardAssignment") - - _request = build_create_request( - resource_id=resource_id, - standard_assignment_name=standard_assignment_name, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("StandardAssignment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_id: str, standard_assignment_name: str, **kwargs: Any - ) -> None: - """Deletes a standard assignment. - - This operation deletes a standard assignment, given its name and the scope it was created in. - The scope of a standard assignment is the part of its ID preceding - '/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}'. - - :param resource_id: The identifier of the resource. Required. - :type resource_id: str - :param standard_assignment_name: The standard assignments assignment key - unique key for the - standard assignment. Required. - :type standard_assignment_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_id=resource_id, - standard_assignment_name=standard_assignment_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list(self, scope: str, **kwargs: Any) -> ItemPaged["_models.StandardAssignment"]: - """Get a list of all relevant standard assignments over a scope. - - :param scope: The scope of the standard assignment. Valid scopes are: management group (format: - 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: - 'subscriptions/{subscriptionId}'), or security connector (format: - 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'. - Required. - :type scope: str - :return: An iterator like instance of either StandardAssignment or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.StandardAssignment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-08-01")) - cls: ClsType[_models.StandardAssignmentsList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("StandardAssignmentsList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.ErrorResponse, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standards_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standards_operations.py deleted file mode 100644 index b3e948073b39..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_standards_operations.py +++ /dev/null @@ -1,609 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/standards") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(resource_group_name: str, standard_id: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards/{standardId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "standardId": _SERIALIZER.url("standard_id", standard_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, standard_id: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards/{standardId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "standardId": _SERIALIZER.url("standard_id", standard_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, standard_id: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards/{standardId}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "standardId": _SERIALIZER.url("standard_id", standard_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class StandardsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`standards` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.Standard"]: - """Get a list of all relevant security standards over a subscription level scope. - - :return: An iterator like instance of either Standard or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Standard] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[_models.StandardList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("StandardList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.Standard"]: - """Get security standards on all your resources inside a scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :return: An iterator like instance of either Standard or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.Standard] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[_models.StandardList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("StandardList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, resource_group_name: str, standard_id: str, **kwargs: Any) -> _models.Standard: - """Get a specific security standard for the requested scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :return: Standard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Standard - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[_models.Standard] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - standard_id=standard_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Standard", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update( - self, - resource_group_name: str, - standard_id: str, - standard: _models.Standard, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Standard: - """Create a security standard on the given scope. Available only for custom standards. Will - create/update the required standard definitions. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :param standard: Custom security standard over a pre-defined scope. Required. - :type standard: ~azure.mgmt.security.models.Standard - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Standard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Standard - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - standard_id: str, - standard: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Standard: - """Create a security standard on the given scope. Available only for custom standards. Will - create/update the required standard definitions. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :param standard: Custom security standard over a pre-defined scope. Required. - :type standard: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Standard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Standard - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, resource_group_name: str, standard_id: str, standard: Union[_models.Standard, IO[bytes]], **kwargs: Any - ) -> _models.Standard: - """Create a security standard on the given scope. Available only for custom standards. Will - create/update the required standard definitions. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :param standard: Custom security standard over a pre-defined scope. Is either a Standard type - or a IO[bytes] type. Required. - :type standard: ~azure.mgmt.security.models.Standard or IO[bytes] - :return: Standard or the result of cls(response) - :rtype: ~azure.mgmt.security.models.Standard - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Standard] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(standard, (IOBase, bytes)): - _content = standard - else: - _json = self._serialize.body(standard, "Standard") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - standard_id=standard_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Standard", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, standard_id: str, **kwargs: Any - ) -> None: - """Delete a security standard on a scope. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param standard_id: The Security Standard key - unique key for the standard type. Required. - :type standard_id: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-08-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - standard_id=standard_id, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated19, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sub_assessments_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sub_assessments_operations.py deleted file mode 100644 index 7c25a9a0e050..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_sub_assessments_operations.py +++ /dev/null @@ -1,348 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_all_request(scope: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/{scope}/providers/Microsoft.Security/subAssessments") - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request(scope: str, assessment_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/{scope}/providers/Microsoft.Security/assessments/{assessmentName}/subAssessments" - ) - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), - "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(scope: str, assessment_name: str, sub_assessment_name: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/{scope}/providers/Microsoft.Security/assessments/{assessmentName}/subAssessments/{subAssessmentName}", - ) - path_format_arguments = { - "scope": _SERIALIZER.url("scope", scope, "str", skip_quote=True), - "assessmentName": _SERIALIZER.url("assessment_name", assessment_name, "str"), - "subAssessmentName": _SERIALIZER.url("sub_assessment_name", sub_assessment_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SubAssessmentsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`sub_assessments` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_all(self, scope: str, **kwargs: Any) -> ItemPaged["_models.SecuritySubAssessment"]: - """Get security sub-assessments on all your scanned resources inside a subscription scope. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :return: An iterator like instance of either SecuritySubAssessment or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecuritySubAssessment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.SecuritySubAssessmentList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_all_request( - scope=scope, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecuritySubAssessmentList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list(self, scope: str, assessment_name: str, **kwargs: Any) -> ItemPaged["_models.SecuritySubAssessment"]: - """Get security sub-assessments on all your scanned resources inside a scope. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :return: An iterator like instance of either SecuritySubAssessment or the result of - cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecuritySubAssessment] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.SecuritySubAssessmentList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - scope=scope, - assessment_name=assessment_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecuritySubAssessmentList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, scope: str, assessment_name: str, sub_assessment_name: str, **kwargs: Any - ) -> _models.SecuritySubAssessment: - """Get a security sub-assessment on your scanned resource. - - :param scope: Scope of the query, can be subscription - (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group - (/providers/Microsoft.Management/managementGroups/mgName). Required. - :type scope: str - :param assessment_name: The Assessment Key - Unique key for the assessment type. Required. - :type assessment_name: str - :param sub_assessment_name: The Sub-Assessment Key - Unique key for the sub-assessment type. - Required. - :type sub_assessment_name: str - :return: SecuritySubAssessment or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecuritySubAssessment - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2019-01-01-preview")) - cls: ClsType[_models.SecuritySubAssessment] = kwargs.pop("cls", None) - - _request = build_get_request( - scope=scope, - assessment_name=assessment_name, - sub_assessment_name=sub_assessment_name, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated2, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecuritySubAssessment", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_tasks_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_tasks_operations.py deleted file mode 100644 index 3735a2f29c89..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_tasks_operations.py +++ /dev/null @@ -1,761 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar, Union - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/tasks") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if filter is not None: - _params["$filter"] = _SERIALIZER.query("filter", filter, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_home_region_request( - asc_location: str, subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/tasks" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if filter is not None: - _params["$filter"] = _SERIALIZER.query("filter", filter, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_subscription_level_task_request( # pylint: disable=name-too-long - asc_location: str, task_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "taskName": _SERIALIZER.url("task_name", task_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_subscription_level_task_state_request( # pylint: disable=name-too-long - asc_location: str, - task_name: str, - task_update_action_type: Union[str, _models.TaskUpdateActionType], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}/{taskUpdateActionType}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "taskName": _SERIALIZER.url("task_name", task_name, "str"), - "taskUpdateActionType": _SERIALIZER.url("task_update_action_type", task_update_action_type, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request( - resource_group_name: str, asc_location: str, subscription_id: str, *, filter: Optional[str] = None, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/tasks", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if filter is not None: - _params["$filter"] = _SERIALIZER.query("filter", filter, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_resource_group_level_task_request( # pylint: disable=name-too-long - resource_group_name: str, asc_location: str, task_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "taskName": _SERIALIZER.url("task_name", task_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_resource_group_level_task_state_request( # pylint: disable=name-too-long - resource_group_name: str, - asc_location: str, - task_name: str, - task_update_action_type: Union[str, _models.TaskUpdateActionType], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}/{taskUpdateActionType}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "taskName": _SERIALIZER.url("task_name", task_name, "str"), - "taskUpdateActionType": _SERIALIZER.url("task_update_action_type", task_update_action_type, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class TasksOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`tasks` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, filter: Optional[str] = None, **kwargs: Any) -> ItemPaged["_models.SecurityTask"]: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: An iterator like instance of either SecurityTask or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityTask] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.SecurityTaskList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityTaskList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_home_region( - self, asc_location: str, filter: Optional[str] = None, **kwargs: Any - ) -> ItemPaged["_models.SecurityTask"]: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: An iterator like instance of either SecurityTask or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityTask] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.SecurityTaskList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_home_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityTaskList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get_subscription_level_task(self, asc_location: str, task_name: str, **kwargs: Any) -> _models.SecurityTask: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param task_name: Name of the task object, will be a GUID. Required. - :type task_name: str - :return: SecurityTask or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityTask - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.SecurityTask] = kwargs.pop("cls", None) - - _request = build_get_subscription_level_task_request( - asc_location=asc_location, - task_name=task_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityTask", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def update_subscription_level_task_state( # pylint: disable=inconsistent-return-statements - self, - asc_location: str, - task_name: str, - task_update_action_type: Union[str, _models.TaskUpdateActionType], - **kwargs: Any - ) -> None: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param task_name: Name of the task object, will be a GUID. Required. - :type task_name: str - :param task_update_action_type: Type of the action to do on the task. Known values are: - "Activate", "Dismiss", "Start", "Resolve", and "Close". Required. - :type task_update_action_type: str or ~azure.mgmt.security.models.TaskUpdateActionType - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_subscription_level_task_state_request( - asc_location=asc_location, - task_name=task_name, - task_update_action_type=task_update_action_type, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, asc_location: str, filter: Optional[str] = None, **kwargs: Any - ) -> ItemPaged["_models.SecurityTask"]: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param filter: OData filter. Optional. Default value is None. - :type filter: str - :return: An iterator like instance of either SecurityTask or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.SecurityTask] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.SecurityTaskList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - subscription_id=self._config.subscription_id, - filter=filter, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SecurityTaskList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get_resource_group_level_task( - self, resource_group_name: str, asc_location: str, task_name: str, **kwargs: Any - ) -> _models.SecurityTask: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param task_name: Name of the task object, will be a GUID. Required. - :type task_name: str - :return: SecurityTask or the result of cls(response) - :rtype: ~azure.mgmt.security.models.SecurityTask - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[_models.SecurityTask] = kwargs.pop("cls", None) - - _request = build_get_resource_group_level_task_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - task_name=task_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SecurityTask", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def update_resource_group_level_task_state( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - asc_location: str, - task_name: str, - task_update_action_type: Union[str, _models.TaskUpdateActionType], - **kwargs: Any - ) -> None: - """Recommended tasks that will help improve the security of the subscription proactively. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param task_name: Name of the task object, will be a GUID. Required. - :type task_name: str - :param task_update_action_type: Type of the action to do on the task. Known values are: - "Activate", "Dismiss", "Start", "Resolve", and "Close". Required. - :type task_update_action_type: str or ~azure.mgmt.security.models.TaskUpdateActionType - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-06-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_update_resource_group_level_task_state_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - task_name=task_name, - task_update_action_type=task_update_action_type, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_topology_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_topology_operations.py deleted file mode 100644 index 720691f16cee..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_topology_operations.py +++ /dev/null @@ -1,352 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from typing import Any, Callable, Optional, TypeVar - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/topologies") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_home_region_request(asc_location: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/topologies", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, asc_location: str, topology_resource_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/topologies/{topologyResourceName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1, pattern=r"^[-\w\._\(\)]+$" - ), - "ascLocation": _SERIALIZER.url("asc_location", asc_location, "str"), - "topologyResourceName": _SERIALIZER.url("topology_resource_name", topology_resource_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class TopologyOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`topology` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.TopologyResource"]: - """Gets a list that allows to build a topology view of a subscription. - - :return: An iterator like instance of either TopologyResource or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.TopologyResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.TopologyList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("TopologyList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_home_region(self, asc_location: str, **kwargs: Any) -> ItemPaged["_models.TopologyResource"]: - """Gets a list that allows to build a topology view of a subscription and location. - - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :return: An iterator like instance of either TopologyResource or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.TopologyResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.TopologyList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_home_region_request( - asc_location=asc_location, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("TopologyList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get( - self, resource_group_name: str, asc_location: str, topology_resource_name: str, **kwargs: Any - ) -> _models.TopologyResource: - """Gets a specific topology component. - - :param resource_group_name: The name of the resource group within the user's subscription. The - name is case insensitive. Required. - :type resource_group_name: str - :param asc_location: The location where ASC stores the data of the subscription. can be - retrieved from Get locations. Required. - :type asc_location: str - :param topology_resource_name: Name of a topology resources collection. Required. - :type topology_resource_name: str - :return: TopologyResource or the result of cls(response) - :rtype: ~azure.mgmt.security.models.TopologyResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2020-01-01")) - cls: ClsType[_models.TopologyResource] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - asc_location=asc_location, - topology_resource_name=topology_resource_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated15, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("TopologyResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_workspace_settings_operations.py b/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_workspace_settings_operations.py deleted file mode 100644 index d1fbc851da64..000000000000 --- a/sdk/security/azure-mgmt-security/azure/mgmt/security/operations/_workspace_settings_operations.py +++ /dev/null @@ -1,623 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, IO, Optional, TypeVar, Union, overload - -from azure.core import PipelineClient -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from .._configuration import SecurityCenterConfiguration -from .._utils.serialization import Deserializer, Serializer - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -List = list - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request(workspace_setting_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "workspaceSettingName": _SERIALIZER.url("workspace_setting_name", workspace_setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_request(workspace_setting_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "workspaceSettingName": _SERIALIZER.url("workspace_setting_name", workspace_setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request(workspace_setting_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "workspaceSettingName": _SERIALIZER.url("workspace_setting_name", workspace_setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request(workspace_setting_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url( - "subscription_id", subscription_id, "str", pattern=r"^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$" - ), - "workspaceSettingName": _SERIALIZER.url("workspace_setting_name", workspace_setting_name, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -class WorkspaceSettingsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.security.SecurityCenter`'s - :attr:`workspace_settings` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: SecurityCenterConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.WorkspaceSetting"]: - """Settings about where we should store your security data and logs. If the result is empty, it - means that no custom-workspace configuration was set. - - :return: An iterator like instance of either WorkspaceSetting or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.security.models.WorkspaceSetting] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.WorkspaceSettingList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - _request = HttpRequest("GET", next_link) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("WorkspaceSettingList", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get(self, workspace_setting_name: str, **kwargs: Any) -> _models.WorkspaceSetting: - """Settings about where we should store your security data and logs. If the result is empty, it - means that no custom-workspace configuration was set. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[_models.WorkspaceSetting] = kwargs.pop("cls", None) - - _request = build_get_request( - workspace_setting_name=workspace_setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("WorkspaceSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create( - self, - workspace_setting_name: str, - workspace_setting: _models.WorkspaceSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.WorkspaceSetting: - """creating settings about where we should store your security data and logs. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :param workspace_setting: Security data setting object. Required. - :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create( - self, - workspace_setting_name: str, - workspace_setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.WorkspaceSetting: - """creating settings about where we should store your security data and logs. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :param workspace_setting: Security data setting object. Required. - :type workspace_setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create( - self, workspace_setting_name: str, workspace_setting: Union[_models.WorkspaceSetting, IO[bytes]], **kwargs: Any - ) -> _models.WorkspaceSetting: - """creating settings about where we should store your security data and logs. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :param workspace_setting: Security data setting object. Is either a WorkspaceSetting type or a - IO[bytes] type. Required. - :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting or IO[bytes] - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.WorkspaceSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(workspace_setting, (IOBase, bytes)): - _content = workspace_setting - else: - _json = self._serialize.body(workspace_setting, "WorkspaceSetting") - - _request = build_create_request( - workspace_setting_name=workspace_setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("WorkspaceSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - workspace_setting_name: str, - workspace_setting: _models.WorkspaceSetting, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.WorkspaceSetting: - """Settings about where we should store your security data and logs. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :param workspace_setting: Security data setting object. Required. - :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - workspace_setting_name: str, - workspace_setting: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.WorkspaceSetting: - """Settings about where we should store your security data and logs. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :param workspace_setting: Security data setting object. Required. - :type workspace_setting: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, workspace_setting_name: str, workspace_setting: Union[_models.WorkspaceSetting, IO[bytes]], **kwargs: Any - ) -> _models.WorkspaceSetting: - """Settings about where we should store your security data and logs. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :param workspace_setting: Security data setting object. Is either a WorkspaceSetting type or a - IO[bytes] type. Required. - :type workspace_setting: ~azure.mgmt.security.models.WorkspaceSetting or IO[bytes] - :return: WorkspaceSetting or the result of cls(response) - :rtype: ~azure.mgmt.security.models.WorkspaceSetting - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.WorkspaceSetting] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(workspace_setting, (IOBase, bytes)): - _content = workspace_setting - else: - _json = self._serialize.body(workspace_setting, "WorkspaceSetting") - - _request = build_update_request( - workspace_setting_name=workspace_setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("WorkspaceSetting", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, workspace_setting_name: str, **kwargs: Any - ) -> None: - """Deletes the custom workspace settings for this subscription. new VMs will report to the default - workspace. - - :param workspace_setting_name: Name of the security setting. Required. - :type workspace_setting_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-08-01-preview")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - workspace_setting_name=workspace_setting_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize( - _models.CloudErrorAutoGenerated, - pipeline_response, - ) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/security/azure-mgmt-security/code_report_typespec.json b/sdk/security/azure-mgmt-security/code_report_typespec.json new file mode 100644 index 000000000000..0898467c2303 --- /dev/null +++ b/sdk/security/azure-mgmt-security/code_report_typespec.json @@ -0,0 +1,120818 @@ +{ + "azure.mgmt.security": { + "class_nodes": { + "SecurityManagementClient": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "credential": { + "default": null, + "param_type": "positional_or_keyword" + }, + "subscription_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "base_url": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "cloud_setting": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "close": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "send_request": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "request": { + "default": null, + "param_type": "positional_or_keyword" + }, + "stream": { + "default": "bool", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "client_side_validation": { + "attr_type": false + }, + "alerts": { + "attr_type": "AlertsOperations" + }, + "alerts_suppression_rules": { + "attr_type": "AlertsSuppressionRulesOperations" + }, + "applications": { + "attr_type": "ApplicationsOperations" + }, + "security_connector_application": { + "attr_type": "SecurityConnectorApplicationOperations" + }, + "assessments_metadata": { + "attr_type": "AssessmentsMetadataOperations" + }, + "automations": { + "attr_type": "AutomationsOperations" + }, + "security_contacts": { + "attr_type": "SecurityContactsOperations" + }, + "compliance_results": { + "attr_type": "ComplianceResultsOperations" + }, + "governance_assignments": { + "attr_type": "GovernanceAssignmentsOperations" + }, + "governance_rules": { + "attr_type": "GovernanceRulesOperations" + }, + "health_reports": { + "attr_type": "HealthReportsOperations" + }, + "device_security_groups": { + "attr_type": "DeviceSecurityGroupsOperations" + }, + "auto_provisioning_settings": { + "attr_type": "AutoProvisioningSettingsOperations" + }, + "compliances": { + "attr_type": "CompliancesOperations" + }, + "information_protection_policies": { + "attr_type": "InformationProtectionPoliciesOperations" + }, + "workspace_settings": { + "attr_type": "WorkspaceSettingsOperations" + }, + "mde_onboardings": { + "attr_type": "MdeOnboardingsOperations" + }, + "operations": { + "attr_type": "Operations" + }, + "pricings": { + "attr_type": "PricingsOperations" + }, + "private_link_resources": { + "attr_type": "PrivateLinkResourcesOperations" + }, + "private_endpoint_connections": { + "attr_type": "PrivateEndpointConnectionsOperations" + }, + "regulatory_compliance_standards": { + "attr_type": "RegulatoryComplianceStandardsOperations" + }, + "regulatory_compliance_controls": { + "attr_type": "RegulatoryComplianceControlsOperations" + }, + "regulatory_compliance_assessments": { + "attr_type": "RegulatoryComplianceAssessmentsOperations" + }, + "security_connectors": { + "attr_type": "SecurityConnectorsOperations" + }, + "azure_dev_ops_orgs": { + "attr_type": "AzureDevOpsOrgsOperations" + }, + "git_hub_owners": { + "attr_type": "GitHubOwnersOperations" + }, + "git_lab_groups": { + "attr_type": "GitLabGroupsOperations" + }, + "dev_ops_configurations": { + "attr_type": "DevOpsConfigurationsOperations" + }, + "azure_dev_ops_projects": { + "attr_type": "AzureDevOpsProjectsOperations" + }, + "git_lab_projects": { + "attr_type": "GitLabProjectsOperations" + }, + "security_operators": { + "attr_type": "SecurityOperatorsOperations" + }, + "discovered_security_solutions": { + "attr_type": "DiscoveredSecuritySolutionsOperations" + }, + "external_security_solutions": { + "attr_type": "ExternalSecuritySolutionsOperations" + }, + "jit_network_access_policies": { + "attr_type": "JitNetworkAccessPoliciesOperations" + }, + "security_solutions": { + "attr_type": "SecuritySolutionsOperations" + }, + "security_standards": { + "attr_type": "SecurityStandardsOperations" + }, + "standard_assignments": { + "attr_type": "StandardAssignmentsOperations" + }, + "custom_recommendations": { + "attr_type": "CustomRecommendationsOperations" + }, + "server_vulnerability_assessments_settings": { + "attr_type": "ServerVulnerabilityAssessmentsSettingsOperations" + }, + "settings": { + "attr_type": "SettingsOperations" + }, + "sql_vulnerability_assessment_baseline_rules": { + "attr_type": "SqlVulnerabilityAssessmentBaselineRulesOperations" + }, + "sql_vulnerability_assessment_scan_results": { + "attr_type": "SqlVulnerabilityAssessmentScanResultsOperations" + }, + "standards": { + "attr_type": "StandardsOperations" + }, + "assignments": { + "attr_type": "AssignmentsOperations" + }, + "tasks": { + "attr_type": "TasksOperations" + }, + "api_collections": { + "attr_type": "APICollectionsOperations" + }, + "application": { + "attr_type": "ApplicationOperations" + }, + "security_connector_applications": { + "attr_type": "SecurityConnectorApplicationsOperations" + }, + "assessments": { + "attr_type": "AssessmentsOperations" + }, + "advanced_threat_protection": { + "attr_type": "AdvancedThreatProtectionOperations" + }, + "defender_for_storage": { + "attr_type": "DefenderForStorageOperations" + }, + "iot_security_solution_analytics": { + "attr_type": "IotSecuritySolutionAnalyticsOperations" + }, + "iot_security_solution": { + "attr_type": "IotSecuritySolutionOperations" + }, + "iot_security_solutions_analytics_aggregated_alert": { + "attr_type": "IotSecuritySolutionsAnalyticsAggregatedAlertOperations" + }, + "iot_security_solutions_analytics_recommendation": { + "attr_type": "IotSecuritySolutionsAnalyticsRecommendationOperations" + }, + "locations": { + "attr_type": "LocationsOperations" + }, + "operation_results": { + "attr_type": "OperationResultsOperations" + }, + "operation_statuses": { + "attr_type": "OperationStatusesOperations" + }, + "private_links": { + "attr_type": "PrivateLinksOperations" + }, + "secure_scores": { + "attr_type": "SecureScoresOperations" + }, + "secure_score_controls": { + "attr_type": "SecureScoreControlsOperations" + }, + "secure_score_control_definitions": { + "attr_type": "SecureScoreControlDefinitionsOperations" + }, + "git_lab_subgroups": { + "attr_type": "GitLabSubgroupsOperations" + }, + "dev_ops_operation_results": { + "attr_type": "DevOpsOperationResultsOperations" + }, + "azure_dev_ops_repos": { + "attr_type": "AzureDevOpsReposOperations" + }, + "git_hub_repos": { + "attr_type": "GitHubReposOperations" + }, + "git_hub_issues": { + "attr_type": "GitHubIssuesOperations" + }, + "allowed_connections": { + "attr_type": "AllowedConnectionsOperations" + }, + "server_vulnerability_assessment": { + "attr_type": "ServerVulnerabilityAssessmentOperations" + }, + "topology": { + "attr_type": "TopologyOperations" + }, + "security_solutions_reference_data": { + "attr_type": "SecuritySolutionsReferenceDataOperations" + }, + "sensitivity_settings": { + "attr_type": "SensitivitySettingsOperations" + }, + "sql_vulnerability_assessment_settings": { + "attr_type": "SqlVulnerabilityAssessmentSettingsOperations" + }, + "sql_vulnerability_assessment_scans": { + "attr_type": "SqlVulnerabilityAssessmentScansOperations" + }, + "sub_assessments": { + "attr_type": "SubAssessmentsOperations" + } + } + } + }, + "function_nodes": {} + }, + "azure.mgmt.security.operations": { + "class_nodes": { + "APICollectionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_onboard_azure_api_management_api": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "api_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_by_azure_api_management_service": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "api_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_azure_api_management_service": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "offboard_azure_api_management_api": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "api_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AdvancedThreatProtectionOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "type": "AdvancedThreatProtectionSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AlertsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_simulate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "type": "AlertSimulatorRequestBody", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get_resource_group_level": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_subscription_level": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_resource_group_level_by_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_subscription_level_by_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_state_to_activate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_state_to_dismiss": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_state_to_in_progress": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_state_to_resolve": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_subscription_level_state_to_activate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_subscription_level_state_to_dismiss": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_subscription_level_state_to_in_progress": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_subscription_level_state_to_resolve": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AlertsSuppressionRulesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_type": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "type": "AlertsSuppressionRule", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "AllowedConnectionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "connection_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ApplicationOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "Application", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ApplicationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AssessmentsMetadataOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_in_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "type": "SecurityAssessmentMetadataResponse", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete_in_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_in_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AssessmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "type": "SecurityAssessment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expand": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AssignmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "type": "Assignment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AutoProvisioningSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "AutoProvisioningSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AutomationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "Automation", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "AutomationUpdateModel", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "validate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "Automation", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "AzureDevOpsOrgsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "AzureDevOpsOrg", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "AzureDevOpsOrg", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_available": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AzureDevOpsProjectsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "AzureDevOpsProject", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "AzureDevOpsProject", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AzureDevOpsReposOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "AzureDevOpsRepository", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "AzureDevOpsRepository", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ComplianceResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "compliance_result_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "CompliancesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "compliance_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "CustomRecommendationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "type": "CustomRecommendation", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DefenderForStorageOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "cancel_malware_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "type": "DefenderForStorageSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_malware_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "start_malware_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DevOpsConfigurationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "DevOpsConfiguration", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "DevOpsConfiguration", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DevOpsOperationResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_result_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DeviceSecurityGroupsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "type": "DeviceSecurityGroup", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DiscoveredSecuritySolutionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "discovered_security_solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ExternalSecuritySolutionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "external_security_solutions_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitHubIssuesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "type": "Optional[IssueCreationRequest]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "type": "Optional[JSON]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "GitHubOwnersOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_available": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitHubReposOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitLabGroupsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_available": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitLabProjectsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitLabSubgroupsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GovernanceAssignmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "type": "GovernanceAssignment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GovernanceRulesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_execute": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "type": "Optional[ExecuteGovernanceRuleParams]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "type": "Optional[JSON]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "type": "GovernanceRule", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "operation_results": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "HealthReportsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "health_report_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "InformationProtectionPoliciesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "type": "Union[str, InformationProtectionPolicyName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "type": "InformationProtectionPolicy", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "type": "Union[str, InformationProtectionPolicyName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "type": "Union[str, InformationProtectionPolicyName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "IotSecuritySolutionAnalyticsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "IotSecuritySolutionOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "type": "IoTSecuritySolutionModel", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "type": "UpdateIotSecuritySolutionData", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "IotSecuritySolutionsAnalyticsAggregatedAlertOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "dismiss": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "aggregated_alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "aggregated_alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "top": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "IotSecuritySolutionsAnalyticsRecommendationOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "aggregated_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "top": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "JitNetworkAccessPoliciesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "JitNetworkAccessPolicy", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "initiate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "JitNetworkAccessPolicyInitiateRequest", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group_and_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "LocationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "MdeOnboardingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "OperationResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "OperationStatusesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "Operations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PricingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "type": "Pricing", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "PrivateEndpointConnectionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "type": "PrivateEndpointConnection", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PrivateLinkResourcesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PrivateLinksOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "PrivateLinkResource", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "head": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "PrivateLinkUpdate", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "RegulatoryComplianceAssessmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_control_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_control_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "RegulatoryComplianceControlsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_control_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "RegulatoryComplianceStandardsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecureScoreControlDefinitionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecureScoreControlsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expand": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_secure_score": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "secure_score_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expand": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecureScoresOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "secure_score_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityConnectorApplicationOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "Application", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityConnectorApplicationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityConnectorsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "SecurityConnector", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "SecurityConnector", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "SecurityContactsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact_name": { + "type": "Union[str, SecurityContactName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact": { + "type": "SecurityContact", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact_name": { + "type": "Union[str, SecurityContactName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact_name": { + "type": "Union[str, SecurityContactName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityOperatorsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_operator_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_operator_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_operator_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecuritySolutionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecuritySolutionsReferenceDataOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityStandardsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "SecurityStandard", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SensitivitySettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "type": "UpdateSensitivitySettingsRequest", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ServerVulnerabilityAssessmentOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_extended_resource": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ServerVulnerabilityAssessmentsSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "type": "Union[str, ServerVulnerabilityAssessmentsSettingKindName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "type": "ServerVulnerabilityAssessmentsSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "type": "Union[str, ServerVulnerabilityAssessmentsSettingKindName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "type": "Union[str, ServerVulnerabilityAssessmentsSettingKindName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "Setting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentBaselineRulesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "add": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[RulesResultsInput]", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[JSON]", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[RuleResultsInput]", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[JSON]", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentScanResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_result_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentScansOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_initiate_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_scan_operation_result": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[SqlVulnerabilityAssessmentSettings]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[JSON]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "StandardAssignmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "type": "StandardAssignment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "StandardsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "Standard", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SubAssessmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "sub_assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_all": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "TasksOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_resource_group_level_task": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_subscription_level_task": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_task_state": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_update_action_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_subscription_level_task_state": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_update_action_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "TopologyOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "topology_resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "WorkspaceSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "WorkspaceSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "WorkspaceSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + } + ] + } + }, + "properties": {} + } + }, + "function_nodes": {} + }, + "azure.mgmt.security.models": { + "class_nodes": { + "AadConnectivityStateEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "CONNECTED": "CONNECTED", + "DISCOVERED": "DISCOVERED", + "NOT_LICENSED": "NOT_LICENSED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AadExternalSecuritySolution": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AadSolutionProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + }, + "kind": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "kind": null, + "location": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AadSolutionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "device_vendor": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "device_type": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "workspace": { + "type": "Optional[_models.ConnectedWorkspace]", + "default": null, + "param_type": "keyword_only" + }, + "connectivity_state": { + "type": "Optional[Union[str, _models.AadConnectivityStateEnum]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "device_vendor": "Optional", + "device_type": "Optional", + "workspace": "Optional", + "connectivity_state": "Optional" + } + }, + "AccessTokenAuthentication": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "username": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "access_token": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "authentication_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "username": "Optional", + "access_token": "Optional", + "authentication_type": null + } + }, + "ActionType": { + "type": "Enum", + "methods": {}, + "properties": { + "EVENT_HUB": "EVENT_HUB", + "INTERNAL": "INTERNAL", + "LOGIC_APP": "LOGIC_APP", + "WORKSPACE": "WORKSPACE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ActionableRemediation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "state": { + "type": "Optional[Union[str, _models.ActionableRemediationState]]", + "default": null, + "param_type": "keyword_only" + }, + "category_configurations": { + "type": "Optional[list[_models.CategoryConfiguration]]", + "default": null, + "param_type": "keyword_only" + }, + "branch_configuration": { + "type": "Optional[_models.TargetBranchConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "inherit_from_parent_state": { + "type": "Optional[Union[str, _models.InheritFromParentState]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "state": "Optional", + "category_configurations": "Optional", + "branch_configuration": "Optional", + "inherit_from_parent_state": "Optional" + } + }, + "ActionableRemediationState": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "NONE": "NONE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AdditionalData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessed_resource_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "assessed_resource_type": null + } + }, + "AdditionalWorkspaceDataType": { + "type": "Enum", + "methods": {}, + "properties": { + "ALERTS": "ALERTS", + "RAW_EVENTS": "RAW_EVENTS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AdditionalWorkspaceType": { + "type": "Enum", + "methods": {}, + "properties": { + "SENTINEL": "SENTINEL", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AdditionalWorkspacesProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "type": { + "type": "Optional[Union[str, _models.AdditionalWorkspaceType]]", + "default": null, + "param_type": "keyword_only" + }, + "data_types": { + "type": "Optional[list[Union[str, _models.AdditionalWorkspaceDataType]]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workspace": "Optional", + "type": "Optional", + "data_types": "Optional" + } + }, + "AdvancedThreatProtectionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "is_enabled": "Optional" + } + }, + "AdvancedThreatProtectionSetting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AdvancedThreatProtectionProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AgentlessConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "agentless_enabled": { + "type": "Optional[Union[str, _models.AgentlessEnablement]]", + "default": null, + "param_type": "keyword_only" + }, + "agentless_auto_discovery": { + "type": "Optional[Union[str, _models.AutoDiscovery]]", + "default": null, + "param_type": "keyword_only" + }, + "scanners": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "inventory_list_type": { + "type": "Optional[Union[str, _models.InventoryListKind]]", + "default": null, + "param_type": "keyword_only" + }, + "inventory_list": { + "type": "Optional[list[_models.InventoryList]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "agentless_enabled": "Optional", + "agentless_auto_discovery": "Optional", + "scanners": "Optional", + "inventory_list_type": "Optional", + "inventory_list": "Optional" + } + }, + "AgentlessEnablement": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Alert": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AlertProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AlertEntity": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": "Optional" + } + }, + "AlertProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "extended_properties": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "supporting_evidence": { + "type": "Optional[_models.AlertPropertiesSupportingEvidence]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "version": "Optional", + "alert_type": "Optional", + "system_alert_id": "Optional", + "product_component_name": "Optional", + "alert_display_name": "Optional", + "description": "Optional", + "severity": "Optional", + "intent": "Optional", + "start_time_utc": "Optional", + "end_time_utc": "Optional", + "resource_identifiers": "Optional", + "remediation_steps": "Optional", + "vendor_name": "Optional", + "status": "Optional", + "extended_links": "Optional", + "alert_uri": "Optional", + "time_generated_utc": "Optional", + "product_name": "Optional", + "processing_end_time_utc": "Optional", + "entities": "Optional", + "is_incident": "Optional", + "correlation_key": "Optional", + "extended_properties": "Optional", + "compromised_entity": "Optional", + "techniques": "Optional", + "sub_techniques": "Optional", + "supporting_evidence": "Optional" + } + }, + "AlertPropertiesSupportingEvidence": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": "Optional" + } + }, + "AlertSeverity": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "INFORMATIONAL": "INFORMATIONAL", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AlertSimulatorBundlesRequestProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "bundles": { + "type": "Optional[list[Union[str, _models.BundleType]]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "bundles": "Optional", + "kind": null + } + }, + "AlertSimulatorRequestBody": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AlertSimulatorRequestProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional" + } + }, + "AlertSimulatorRequestProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "kind": null + } + }, + "AlertStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "ACTIVE": "ACTIVE", + "DISMISSED": "DISMISSED", + "IN_PROGRESS": "IN_PROGRESS", + "RESOLVED": "RESOLVED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AlertSyncSettingProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": null + } + }, + "AlertSyncSettings": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AlertSyncSettingProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "properties": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "kind": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AlertsSuppressionRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AlertsSuppressionRuleProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AlertsSuppressionRuleProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "reason": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "state": { + "type": "Union[str, _models.RuleState]", + "default": null, + "param_type": "keyword_only" + }, + "expiration_date_utc": { + "type": "Optional[datetime]", + "default": null, + "param_type": "keyword_only" + }, + "comment": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "suppression_alerts_scope": { + "type": "Optional[_models.SuppressionAlertsScope]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "alert_type": null, + "last_modified_utc": "Optional", + "expiration_date_utc": "Optional", + "reason": null, + "state": "Union", + "comment": "Optional", + "suppression_alerts_scope": "Optional" + } + }, + "AllowedConnectionsResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "location": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AllowedConnectionsResourceProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "calculated_date_time": "Optional", + "connectable_resources": "Optional" + } + }, + "AllowlistCustomAlertRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + }, + "allowlist_values": { + "type": "list[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + }, + "rule_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "allowlist_values": "list", + "rule_type": null, + "value_type": "Optional", + "display_name": "Optional", + "description": "Optional", + "is_enabled": null + } + }, + "AnnotateDefaultBranchState": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ApiCollection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.ApiCollectionProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "ApiCollectionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_state": "Optional", + "display_name": "Optional", + "discovered_via": "Optional", + "base_url": "Optional", + "number_of_api_endpoints": "Optional", + "number_of_inactive_api_endpoints": "Optional", + "number_of_unauthenticated_api_endpoints": "Optional", + "number_of_external_api_endpoints": "Optional", + "number_of_api_endpoints_with_sensitive_data_exposed": "Optional", + "sensitivity_label": "Optional" + } + }, + "Application": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.ApplicationProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "ApplicationProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "source_resource_type": { + "type": "Union[str, _models.ApplicationSourceResourceType]", + "default": null, + "param_type": "keyword_only" + }, + "condition_sets": { + "type": "list[Any]", + "default": null, + "param_type": "keyword_only" + }, + "display_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": "Optional", + "description": "Optional", + "source_resource_type": "Union", + "condition_sets": "list" + } + }, + "ApplicationSourceResourceType": { + "type": "Enum", + "methods": {}, + "properties": { + "ASSESSMENTS": "ASSESSMENTS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ArcAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "ArcAutoProvisioningAws": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional", + "enabled": "Optional", + "configuration": "Optional" + } + }, + "ArcAutoProvisioningConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "proxy": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "private_link_scope": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "proxy": "Optional", + "private_link_scope": "Optional" + } + }, + "ArcAutoProvisioningGcp": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "ArmActionType": { + "type": "Enum", + "methods": {}, + "properties": { + "INTERNAL": "INTERNAL", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ArmErrorAdditionalInfo": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": "Optional", + "info": "Optional" + } + }, + "AscLocation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AssessedResourceType": { + "type": "Enum", + "methods": {}, + "properties": { + "CONTAINER_REGISTRY_VULNERABILITY": "CONTAINER_REGISTRY_VULNERABILITY", + "SERVER_VULNERABILITY": "SERVER_VULNERABILITY", + "SQL_SERVER_VULNERABILITY": "SQL_SERVER_VULNERABILITY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AssessmentLinks": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "azure_portal_uri": "Optional" + } + }, + "AssessmentStatus": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "code": { + "type": "Union[str, _models.AssessmentStatusCode]", + "default": null, + "param_type": "keyword_only" + }, + "cause": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": "Union", + "cause": "Optional", + "description": "Optional" + } + }, + "AssessmentStatusCode": { + "type": "Enum", + "methods": {}, + "properties": { + "HEALTHY": "HEALTHY", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "UNHEALTHY": "UNHEALTHY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AssessmentStatusResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "code": { + "type": "Union[str, _models.AssessmentStatusCode]", + "default": null, + "param_type": "keyword_only" + }, + "cause": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "code": { + "type": "Union[str, _models.AssessmentStatusCode]", + "default": null, + "param_type": "keyword_only" + }, + "cause": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "first_evaluation_date": "Optional", + "status_change_date": "Optional", + "code": "Union", + "cause": "Optional", + "description": "Optional" + } + }, + "AssessmentType": { + "type": "Enum", + "methods": {}, + "properties": { + "BUILT_IN": "BUILT_IN", + "BUILT_IN_POLICY": "BUILT_IN_POLICY", + "CUSTOM": "CUSTOM", + "CUSTOMER_MANAGED": "CUSTOMER_MANAGED", + "CUSTOM_POLICY": "CUSTOM_POLICY", + "DYNAMIC_BUILT_IN": "DYNAMIC_BUILT_IN", + "MANUAL_BUILT_IN": "MANUAL_BUILT_IN", + "MANUAL_BUILT_IN_POLICY": "MANUAL_BUILT_IN_POLICY", + "MANUAL_CUSTOM_POLICY": "MANUAL_CUSTOM_POLICY", + "UNKNOWN": "UNKNOWN", + "VERIFIED_PARTNER": "VERIFIED_PARTNER", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AssignedAssessmentItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_key": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "assessment_key": "Optional" + } + }, + "AssignedComponentItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "key": "Optional" + } + }, + "AssignedStandardItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional" + } + }, + "Assignment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AssignmentProperties]", + "default": null, + "param_type": "keyword_only" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "location": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "kind": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "etag": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "tags": "Optional", + "location": "Optional", + "kind": "Optional", + "etag": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AssignmentProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "assigned_standard": { + "type": "Optional[_models.AssignedStandardItem]", + "default": null, + "param_type": "keyword_only" + }, + "assigned_component": { + "type": "Optional[_models.AssignedComponentItem]", + "default": null, + "param_type": "keyword_only" + }, + "scope": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "effect": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "expires_on": { + "type": "Optional[datetime]", + "default": null, + "param_type": "keyword_only" + }, + "additional_data": { + "type": "Optional[_models.AssignmentPropertiesAdditionalData]", + "default": null, + "param_type": "keyword_only" + }, + "metadata": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": "Optional", + "description": "Optional", + "assigned_standard": "Optional", + "assigned_component": "Optional", + "scope": "Optional", + "effect": "Optional", + "expires_on": "Optional", + "additional_data": "Optional", + "metadata": "Optional" + } + }, + "AssignmentPropertiesAdditionalData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "exemption_category": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "exemption_category": "Optional" + } + }, + "AtaExternalSecuritySolution": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AtaSolutionProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + }, + "kind": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "kind": null, + "location": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AtaSolutionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "device_vendor": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "device_type": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "workspace": { + "type": "Optional[_models.ConnectedWorkspace]", + "default": null, + "param_type": "keyword_only" + }, + "last_event_received": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "device_vendor": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "device_type": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "workspace": { + "type": "Optional[_models.ConnectedWorkspace]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "last_event_received": "Optional", + "device_vendor": "Optional", + "device_type": "Optional", + "workspace": "Optional" + } + }, + "AttestationComplianceState": { + "type": "Enum", + "methods": {}, + "properties": { + "COMPLIANT": "COMPLIANT", + "NON_COMPLIANT": "NON_COMPLIANT", + "UNKNOWN": "UNKNOWN", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AttestationEvidence": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "source_url": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": "Optional", + "source_url": "Optional" + } + }, + "Authentication": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "authentication_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "authentication_type": null + } + }, + "AuthenticationType": { + "type": "Enum", + "methods": {}, + "properties": { + "ACCESS_TOKEN": "ACCESS_TOKEN", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Authorization": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "code": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": "Optional" + } + }, + "AutoDiscovery": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AutoProvision": { + "type": "Enum", + "methods": {}, + "properties": { + "OFF": "OFF", + "ON": "ON", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "AutoProvisioningSetting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AutoProvisioningSettingProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AutoProvisioningSettingProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "auto_provision": { + "type": "Union[str, _models.AutoProvision]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "auto_provision": "Union" + } + }, + "AutomatedResponseType": { + "type": "Enum", + "methods": {}, + "properties": { + "BLOB_SOFT_DELETE": "BLOB_SOFT_DELETE", + "NONE": "NONE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Automation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AutomationProperties]", + "default": null, + "param_type": "keyword_only" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "location": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "kind": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "etag": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "tags": "Optional", + "location": "Optional", + "kind": "Optional", + "etag": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AutomationAction": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "action_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "action_type": null + } + }, + "AutomationActionEventHub": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "event_hub_resource_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "connection_string": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "is_trusted_service_enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "action_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "event_hub_resource_id": "Optional", + "sas_policy_name": "Optional", + "connection_string": "Optional", + "is_trusted_service_enabled": "Optional", + "action_type": null + } + }, + "AutomationActionLogicApp": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "logic_app_resource_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "uri": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "action_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "logic_app_resource_id": "Optional", + "uri": "Optional", + "action_type": null + } + }, + "AutomationActionWorkspace": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_resource_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "action_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workspace_resource_id": "Optional", + "action_type": null + } + }, + "AutomationProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "is_enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "scopes": { + "type": "Optional[list[_models.AutomationScope]]", + "default": null, + "param_type": "keyword_only" + }, + "sources": { + "type": "Optional[list[_models.AutomationSource]]", + "default": null, + "param_type": "keyword_only" + }, + "actions": { + "type": "Optional[list[_models.AutomationAction]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": "Optional", + "is_enabled": "Optional", + "scopes": "Optional", + "sources": "Optional", + "actions": "Optional" + } + }, + "AutomationRuleSet": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "rules": { + "type": "Optional[list[_models.AutomationTriggeringRule]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rules": "Optional" + } + }, + "AutomationScope": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "scope_path": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": "Optional", + "scope_path": "Optional" + } + }, + "AutomationSource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "event_source": { + "type": "Optional[Union[str, _models.EventSource]]", + "default": null, + "param_type": "keyword_only" + }, + "rule_sets": { + "type": "Optional[list[_models.AutomationRuleSet]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "event_source": "Optional", + "rule_sets": "Optional" + } + }, + "AutomationTriggeringRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "property_j_path": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "property_type": { + "type": "Optional[Union[str, _models.PropertyType]]", + "default": null, + "param_type": "keyword_only" + }, + "expected_value": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "operator": { + "type": "Optional[Union[str, _models.Operator]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "property_j_path": "Optional", + "property_type": "Optional", + "expected_value": "Optional", + "operator": "Optional" + } + }, + "AutomationUpdateModel": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "properties": { + "type": "Optional[_models.AutomationProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "tags": "Optional" + } + }, + "AutomationValidationStatus": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_valid": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "message": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "is_valid": "Optional", + "message": "Optional" + } + }, + "AwsEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "organizational_data": { + "type": "Optional[_models.AwsOrganizationalData]", + "default": null, + "param_type": "keyword_only" + }, + "regions": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "scan_interval": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "environment_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "organizational_data": "Optional", + "regions": "Optional", + "account_name": "Optional", + "scan_interval": "Optional", + "environment_type": null + } + }, + "AwsOrganizationalData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "organization_membership_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "organization_membership_type": null + } + }, + "AwsOrganizationalDataMaster": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "stackset_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "excluded_account_ids": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "organization_membership_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "stackset_name": "Optional", + "excluded_account_ids": "Optional", + "organization_membership_type": null + } + }, + "AwsOrganizationalDataMember": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "parent_hierarchy_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "organization_membership_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "parent_hierarchy_id": "Optional", + "organization_membership_type": null + } + }, + "AzureDevOpsOrg": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AzureDevOpsOrgProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AzureDevOpsOrgListResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "type": "Optional[list[_models.AzureDevOpsOrg]]", + "default": null, + "param_type": "keyword_only" + }, + "next_link": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": "Optional", + "next_link": "Optional" + } + }, + "AzureDevOpsOrgProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "onboarding_state": { + "type": "Optional[Union[str, _models.OnboardingState]]", + "default": null, + "param_type": "keyword_only" + }, + "actionable_remediation": { + "type": "Optional[_models.ActionableRemediation]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": "Optional", + "provisioning_status_update_time_utc": "Optional", + "provisioning_state": "Optional", + "onboarding_state": "Optional", + "actionable_remediation": "Optional" + } + }, + "AzureDevOpsProject": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AzureDevOpsProjectProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AzureDevOpsProjectProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "parent_org_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "onboarding_state": { + "type": "Optional[Union[str, _models.OnboardingState]]", + "default": null, + "param_type": "keyword_only" + }, + "actionable_remediation": { + "type": "Optional[_models.ActionableRemediation]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": "Optional", + "provisioning_status_update_time_utc": "Optional", + "provisioning_state": "Optional", + "parent_org_name": "Optional", + "project_id": "Optional", + "onboarding_state": "Optional", + "actionable_remediation": "Optional" + } + }, + "AzureDevOpsRepository": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.AzureDevOpsRepositoryProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "AzureDevOpsRepositoryProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "parent_org_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "parent_project_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "onboarding_state": { + "type": "Optional[Union[str, _models.OnboardingState]]", + "default": null, + "param_type": "keyword_only" + }, + "actionable_remediation": { + "type": "Optional[_models.ActionableRemediation]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": "Optional", + "provisioning_status_update_time_utc": "Optional", + "provisioning_state": "Optional", + "parent_org_name": "Optional", + "parent_project_name": "Optional", + "repo_id": "Optional", + "repo_url": "Optional", + "visibility": "Optional", + "onboarding_state": "Optional", + "actionable_remediation": "Optional" + } + }, + "AzureDevOpsScopeEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "environment_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "environment_type": null + } + }, + "AzureResourceDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "source": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional", + "source": null + } + }, + "AzureResourceIdentifier": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "azure_resource_id": "Optional", + "type": null + } + }, + "AzureResourceLink": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional" + } + }, + "AzureServersSetting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.ServerVulnerabilityAssessmentsAzureSettingProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "properties": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "kind": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "Baseline": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "expected_results": { + "type": "Optional[list[list[str]]]", + "default": null, + "param_type": "keyword_only" + }, + "updated_time": { + "type": "Optional[datetime]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "expected_results": "Optional", + "updated_time": "Optional" + } + }, + "BaselineAdjustedResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "baseline": { + "type": "Optional[_models.Baseline]", + "default": null, + "param_type": "keyword_only" + }, + "status": { + "type": "Optional[Union[str, _models.RuleStatus]]", + "default": null, + "param_type": "keyword_only" + }, + "results_not_in_baseline": { + "type": "Optional[list[list[str]]]", + "default": null, + "param_type": "keyword_only" + }, + "results_only_in_baseline": { + "type": "Optional[list[list[str]]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "baseline": "Optional", + "status": "Optional", + "results_not_in_baseline": "Optional", + "results_only_in_baseline": "Optional" + } + }, + "BenchmarkReference": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "benchmark": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "reference": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "benchmark": "Optional", + "reference": "Optional" + } + }, + "BlobScanResultsOptions": { + "type": "Enum", + "methods": {}, + "properties": { + "BLOB_INDEX_TAGS": "BLOB_INDEX_TAGS", + "NONE": "NONE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "BlobsScanSummary": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "total_blobs_scanned": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "malicious_blobs_count": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "skipped_blobs_count": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "failed_blobs_count": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "scanned_blobs_in_gb": { + "type": "Optional[float]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "total_blobs_scanned": "Optional", + "malicious_blobs_count": "Optional", + "skipped_blobs_count": "Optional", + "failed_blobs_count": "Optional", + "scanned_blobs_in_gb": "Optional" + } + }, + "BuiltInInfoType": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "type": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": "Optional", + "id": "Optional", + "type": "Optional" + } + }, + "BundleType": { + "type": "Enum", + "methods": {}, + "properties": { + "APP_SERVICES": "APP_SERVICES", + "COSMOS_DBS": "COSMOS_DBS", + "DNS": "DNS", + "KEY_VAULTS": "KEY_VAULTS", + "KUBERNETES_SERVICE": "KUBERNETES_SERVICE", + "RESOURCE_MANAGER": "RESOURCE_MANAGER", + "SQL_SERVERS": "SQL_SERVERS", + "STORAGE_ACCOUNTS": "STORAGE_ACCOUNTS", + "VIRTUAL_MACHINES": "VIRTUAL_MACHINES", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "CVE": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "title": "Optional", + "link": "Optional" + } + }, + "CVSS": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "base": "Optional" + } + }, + "Categories": { + "type": "Enum", + "methods": {}, + "properties": { + "APP_SERVICES": "APP_SERVICES", + "COMPUTE": "COMPUTE", + "CONTAINER": "CONTAINER", + "DATA": "DATA", + "IDENTITY_AND_ACCESS": "IDENTITY_AND_ACCESS", + "IO_T": "IO_T", + "NETWORKING": "NETWORKING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "CategoryConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "minimum_severity_level": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "category": { + "type": "Optional[Union[str, _models.RuleCategory]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "minimum_severity_level": "Optional", + "category": "Optional" + } + }, + "CefExternalSecuritySolution": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.CefSolutionProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + }, + "kind": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "kind": null, + "location": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "CefSolutionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "device_vendor": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "device_type": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "workspace": { + "type": "Optional[_models.ConnectedWorkspace]", + "default": null, + "param_type": "keyword_only" + }, + "hostname": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "agent": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "last_event_received": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "device_vendor": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "device_type": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "workspace": { + "type": "Optional[_models.ConnectedWorkspace]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "hostname": "Optional", + "agent": "Optional", + "last_event_received": "Optional", + "device_vendor": "Optional", + "device_type": "Optional", + "workspace": "Optional" + } + }, + "CloudError": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "error": { + "type": "Optional[_models.CloudErrorBody]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "error": "Optional" + } + }, + "CloudErrorBody": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": "Optional", + "message": "Optional", + "target": "Optional", + "details": "Optional", + "additional_info": "Optional" + } + }, + "CloudName": { + "type": "Enum", + "methods": {}, + "properties": { + "AWS": "AWS", + "AZURE": "AZURE", + "AZURE_DEV_OPS": "AZURE_DEV_OPS", + "DOCKER_HUB": "DOCKER_HUB", + "GCP": "GCP", + "GITHUB": "GITHUB", + "GIT_LAB": "GIT_LAB", + "J_FROG": "J_FROG", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "CloudOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": null, + "description": "Optional" + } + }, + "CommonResourceDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "source": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "source": null + } + }, + "Compliance": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.ComplianceProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "ComplianceProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "assessment_timestamp_utc_date": "Optional", + "resource_count": "Optional", + "assessment_result": "Optional" + } + }, + "ComplianceResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.ComplianceResultProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "ComplianceResultProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "resource_status": "Optional" + } + }, + "ComplianceSegment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "segment_type": "Optional", + "percentage": "Optional" + } + }, + "ConnectableResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional", + "inbound_connected_resources": "Optional", + "outbound_connected_resources": "Optional" + } + }, + "ConnectedResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "connected_resource_id": "Optional", + "tcp_ports": "Optional", + "udp_ports": "Optional" + } + }, + "ConnectedWorkspace": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional" + } + }, + "ConnectionType": { + "type": "Enum", + "methods": {}, + "properties": { + "EXTERNAL": "EXTERNAL", + "INTERNAL": "INTERNAL", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ContainerRegistryVulnerabilityProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessed_resource_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": "Optional", + "cvss": "Optional", + "patchable": "Optional", + "cve": "Optional", + "published_time": "Optional", + "vendor_references": "Optional", + "repository_name": "Optional", + "image_digest": "Optional", + "assessed_resource_type": null + } + }, + "ControlType": { + "type": "Enum", + "methods": {}, + "properties": { + "BUILT_IN": "BUILT_IN", + "CUSTOM": "CUSTOM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "CreatedByType": { + "type": "Enum", + "methods": {}, + "properties": { + "APPLICATION": "APPLICATION", + "KEY": "KEY", + "MANAGED_IDENTITY": "MANAGED_IDENTITY", + "USER": "USER", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "CspmMonitorAwsOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "native_cloud_connection": { + "type": "Optional[_models.CspmMonitorAwsOfferingNativeCloudConnection]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "native_cloud_connection": "Optional", + "offering_type": null, + "description": "Optional" + } + }, + "CspmMonitorAwsOfferingNativeCloudConnection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional" + } + }, + "CspmMonitorAzureDevOpsOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": null, + "description": "Optional" + } + }, + "CspmMonitorDockerHubOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": null, + "description": "Optional" + } + }, + "CspmMonitorGcpOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "native_cloud_connection": { + "type": "Optional[_models.CspmMonitorGcpOfferingNativeCloudConnection]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "native_cloud_connection": "Optional", + "offering_type": null, + "description": "Optional" + } + }, + "CspmMonitorGcpOfferingNativeCloudConnection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workload_identity_provider_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "service_account_email_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workload_identity_provider_id": "Optional", + "service_account_email_address": "Optional" + } + }, + "CspmMonitorGitLabOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": null, + "description": "Optional" + } + }, + "CspmMonitorGithubOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": null, + "description": "Optional" + } + }, + "CspmMonitorJFrogOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": null, + "description": "Optional" + } + }, + "CustomAlertRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + }, + "rule_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": "Optional", + "description": "Optional", + "is_enabled": null, + "rule_type": null + } + }, + "CustomRecommendation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.CustomRecommendationProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "CustomRecommendationProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "query": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_providers": { + "type": "Optional[list[Union[str, _models.RecommendationSupportedClouds]]]", + "default": null, + "param_type": "keyword_only" + }, + "severity": { + "type": "Optional[Union[str, _models.SeverityEnum]]", + "default": null, + "param_type": "keyword_only" + }, + "security_issue": { + "type": "Optional[Union[str, _models.SecurityIssue]]", + "default": null, + "param_type": "keyword_only" + }, + "display_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "remediation_description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "query": "Optional", + "cloud_providers": "Optional", + "severity": "Optional", + "security_issue": "Optional", + "display_name": "Optional", + "description": "Optional", + "remediation_description": "Optional", + "assessment_key": "Optional" + } + }, + "DataExportSettingProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": null + } + }, + "DataExportSettings": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.DataExportSettingProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "properties": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "kind": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "DataSource": { + "type": "Enum", + "methods": {}, + "properties": { + "TWIN_DATA": "TWIN_DATA", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "DefenderCspmAwsOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "vm_scanners": { + "type": "Optional[_models.DefenderCspmAwsOfferingVmScanners]", + "default": null, + "param_type": "keyword_only" + }, + "data_sensitivity_discovery": { + "type": "Optional[_models.DefenderCspmAwsOfferingDataSensitivityDiscovery]", + "default": null, + "param_type": "keyword_only" + }, + "databases_dspm": { + "type": "Optional[_models.DefenderCspmAwsOfferingDatabasesDspm]", + "default": null, + "param_type": "keyword_only" + }, + "ciem": { + "type": "Optional[_models.DefenderCspmAwsOfferingCiem]", + "default": null, + "param_type": "keyword_only" + }, + "mdc_containers_image_assessment": { + "type": "Optional[_models.DefenderCspmAwsOfferingMdcContainersImageAssessment]", + "default": null, + "param_type": "keyword_only" + }, + "mdc_containers_agentless_discovery_k8_s": { + "type": "Optional[_models.DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "vm_scanners": "Optional", + "data_sensitivity_discovery": "Optional", + "databases_dspm": "Optional", + "ciem": "Optional", + "mdc_containers_image_assessment": "Optional", + "mdc_containers_agentless_discovery_k8_s": "Optional", + "offering_type": null, + "description": "Optional" + } + }, + "DefenderCspmAwsOfferingCiem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "ciem_discovery": { + "type": "Optional[_models.DefenderCspmAwsOfferingCiemCiemDiscovery]", + "default": null, + "param_type": "keyword_only" + }, + "ciem_oidc": { + "type": "Optional[_models.DefenderCspmAwsOfferingCiemCiemOidc]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "ciem_discovery": "Optional", + "ciem_oidc": "Optional" + } + }, + "DefenderCspmAwsOfferingCiemCiemDiscovery": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional" + } + }, + "DefenderCspmAwsOfferingCiemCiemOidc": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "azure_active_directory_app_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional", + "azure_active_directory_app_name": "Optional" + } + }, + "DefenderCspmAwsOfferingDataSensitivityDiscovery": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "cloud_role_arn": "Optional" + } + }, + "DefenderCspmAwsOfferingDatabasesDspm": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "cloud_role_arn": "Optional" + } + }, + "DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "cloud_role_arn": "Optional" + } + }, + "DefenderCspmAwsOfferingMdcContainersImageAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "cloud_role_arn": "Optional" + } + }, + "DefenderCspmAwsOfferingVmScanners": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional", + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderCspmDockerHubOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": null, + "description": "Optional" + } + }, + "DefenderCspmGcpOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "ciem_discovery": { + "type": "Optional[_models.DefenderCspmGcpOfferingCiemDiscovery]", + "default": null, + "param_type": "keyword_only" + }, + "vm_scanners": { + "type": "Optional[_models.DefenderCspmGcpOfferingVmScanners]", + "default": null, + "param_type": "keyword_only" + }, + "data_sensitivity_discovery": { + "type": "Optional[_models.DefenderCspmGcpOfferingDataSensitivityDiscovery]", + "default": null, + "param_type": "keyword_only" + }, + "mdc_containers_image_assessment": { + "type": "Optional[_models.DefenderCspmGcpOfferingMdcContainersImageAssessment]", + "default": null, + "param_type": "keyword_only" + }, + "mdc_containers_agentless_discovery_k8_s": { + "type": "Optional[_models.DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "ciem_discovery": "Optional", + "vm_scanners": "Optional", + "data_sensitivity_discovery": "Optional", + "mdc_containers_image_assessment": "Optional", + "mdc_containers_agentless_discovery_k8_s": "Optional", + "offering_type": null, + "description": "Optional" + } + }, + "DefenderCspmGcpOfferingCiemDiscovery": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workload_identity_provider_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "service_account_email_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "azure_active_directory_app_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workload_identity_provider_id": "Optional", + "service_account_email_address": "Optional", + "azure_active_directory_app_name": "Optional" + } + }, + "DefenderCspmGcpOfferingDataSensitivityDiscovery": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "service_account_email_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "workload_identity_provider_id": "Optional", + "service_account_email_address": "Optional" + } + }, + "DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "service_account_email_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "workload_identity_provider_id": "Optional", + "service_account_email_address": "Optional" + } + }, + "DefenderCspmGcpOfferingMdcContainersImageAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "service_account_email_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "workload_identity_provider_id": "Optional", + "service_account_email_address": "Optional" + } + }, + "DefenderCspmGcpOfferingVmScanners": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderCspmJFrogOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mdc_containers_image_assessment": { + "type": "Optional[_models.DefenderCspmJFrogOfferingMdcContainersImageAssessment]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "mdc_containers_image_assessment": "Optional", + "offering_type": null, + "description": "Optional" + } + }, + "DefenderCspmJFrogOfferingMdcContainersImageAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional" + } + }, + "DefenderFoDatabasesAwsOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "arc_auto_provisioning": { + "type": "Optional[_models.DefenderFoDatabasesAwsOfferingArcAutoProvisioning]", + "default": null, + "param_type": "keyword_only" + }, + "rds": { + "type": "Optional[_models.DefenderFoDatabasesAwsOfferingRds]", + "default": null, + "param_type": "keyword_only" + }, + "databases_dspm": { + "type": "Optional[_models.DefenderFoDatabasesAwsOfferingDatabasesDspm]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "arc_auto_provisioning": "Optional", + "rds": "Optional", + "databases_dspm": "Optional", + "offering_type": null, + "description": "Optional" + } + }, + "DefenderFoDatabasesAwsOfferingArcAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional", + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderFoDatabasesAwsOfferingDatabasesDspm": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "cloud_role_arn": "Optional" + } + }, + "DefenderFoDatabasesAwsOfferingRds": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "cloud_role_arn": "Optional" + } + }, + "DefenderForContainersAwsOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "kubernetes_service": { + "type": "Optional[_models.DefenderForContainersAwsOfferingKubernetesService]", + "default": null, + "param_type": "keyword_only" + }, + "kubernetes_data_collection": { + "type": "Optional[_models.DefenderForContainersAwsOfferingKubernetesDataCollection]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_watch_to_kinesis": { + "type": "Optional[_models.DefenderForContainersAwsOfferingCloudWatchToKinesis]", + "default": null, + "param_type": "keyword_only" + }, + "kinesis_to_s3": { + "type": "Optional[_models.DefenderForContainersAwsOfferingKinesisToS3]", + "default": null, + "param_type": "keyword_only" + }, + "enable_audit_logs_auto_provisioning": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "enable_defender_agent_auto_provisioning": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "enable_policy_agent_auto_provisioning": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "kube_audit_retention_time": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "data_collection_external_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "mdc_containers_image_assessment": { + "type": "Optional[_models.DefenderForContainersAwsOfferingMdcContainersImageAssessment]", + "default": null, + "param_type": "keyword_only" + }, + "mdc_containers_agentless_discovery_k8_s": { + "type": "Optional[_models.DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S]", + "default": null, + "param_type": "keyword_only" + }, + "vm_scanners": { + "type": "Optional[_models.DefenderForContainersAwsOfferingVmScanners]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "kubernetes_service": "Optional", + "kubernetes_data_collection": "Optional", + "cloud_watch_to_kinesis": "Optional", + "kinesis_to_s3": "Optional", + "enable_audit_logs_auto_provisioning": "Optional", + "enable_defender_agent_auto_provisioning": "Optional", + "enable_policy_agent_auto_provisioning": "Optional", + "kube_audit_retention_time": "Optional", + "data_collection_external_id": "Optional", + "mdc_containers_image_assessment": "Optional", + "mdc_containers_agentless_discovery_k8_s": "Optional", + "vm_scanners": "Optional", + "offering_type": null, + "description": "Optional" + } + }, + "DefenderForContainersAwsOfferingCloudWatchToKinesis": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional" + } + }, + "DefenderForContainersAwsOfferingKinesisToS3": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional" + } + }, + "DefenderForContainersAwsOfferingKubernetesDataCollection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional" + } + }, + "DefenderForContainersAwsOfferingKubernetesService": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional" + } + }, + "DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "cloud_role_arn": "Optional" + } + }, + "DefenderForContainersAwsOfferingMdcContainersImageAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "cloud_role_arn": "Optional" + } + }, + "DefenderForContainersAwsOfferingVmScanners": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional", + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderForContainersDockerHubOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": null, + "description": "Optional" + } + }, + "DefenderForContainersGcpOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "native_cloud_connection": { + "type": "Optional[_models.DefenderForContainersGcpOfferingNativeCloudConnection]", + "default": null, + "param_type": "keyword_only" + }, + "data_pipeline_native_cloud_connection": { + "type": "Optional[_models.DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection]", + "default": null, + "param_type": "keyword_only" + }, + "enable_audit_logs_auto_provisioning": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "enable_defender_agent_auto_provisioning": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "enable_policy_agent_auto_provisioning": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "mdc_containers_image_assessment": { + "type": "Optional[_models.DefenderForContainersGcpOfferingMdcContainersImageAssessment]", + "default": null, + "param_type": "keyword_only" + }, + "mdc_containers_agentless_discovery_k8_s": { + "type": "Optional[_models.DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S]", + "default": null, + "param_type": "keyword_only" + }, + "vm_scanners": { + "type": "Optional[_models.DefenderForContainersGcpOfferingVmScanners]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "native_cloud_connection": "Optional", + "data_pipeline_native_cloud_connection": "Optional", + "enable_audit_logs_auto_provisioning": "Optional", + "enable_defender_agent_auto_provisioning": "Optional", + "enable_policy_agent_auto_provisioning": "Optional", + "mdc_containers_image_assessment": "Optional", + "mdc_containers_agentless_discovery_k8_s": "Optional", + "vm_scanners": "Optional", + "offering_type": null, + "description": "Optional" + } + }, + "DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "service_account_email_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "service_account_email_address": "Optional", + "workload_identity_provider_id": "Optional" + } + }, + "DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "service_account_email_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "workload_identity_provider_id": "Optional", + "service_account_email_address": "Optional" + } + }, + "DefenderForContainersGcpOfferingMdcContainersImageAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "service_account_email_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "workload_identity_provider_id": "Optional", + "service_account_email_address": "Optional" + } + }, + "DefenderForContainersGcpOfferingNativeCloudConnection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "service_account_email_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "service_account_email_address": "Optional", + "workload_identity_provider_id": "Optional" + } + }, + "DefenderForContainersGcpOfferingVmScanners": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderForContainersJFrogOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "offering_type": null, + "description": "Optional" + } + }, + "DefenderForDatabasesGcpOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "arc_auto_provisioning": { + "type": "Optional[_models.DefenderForDatabasesGcpOfferingArcAutoProvisioning]", + "default": null, + "param_type": "keyword_only" + }, + "defender_for_databases_arc_auto_provisioning": { + "type": "Optional[_models.DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "arc_auto_provisioning": "Optional", + "defender_for_databases_arc_auto_provisioning": "Optional", + "offering_type": null, + "description": "Optional" + } + }, + "DefenderForDatabasesGcpOfferingArcAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "service_account_email_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "service_account_email_address": "Optional", + "workload_identity_provider_id": "Optional" + } + }, + "DefenderForServersAwsOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_servers": { + "type": "Optional[_models.DefenderForServersAwsOfferingDefenderForServers]", + "default": null, + "param_type": "keyword_only" + }, + "arc_auto_provisioning": { + "type": "Optional[_models.DefenderForServersAwsOfferingArcAutoProvisioning]", + "default": null, + "param_type": "keyword_only" + }, + "va_auto_provisioning": { + "type": "Optional[_models.DefenderForServersAwsOfferingVaAutoProvisioning]", + "default": null, + "param_type": "keyword_only" + }, + "mde_auto_provisioning": { + "type": "Optional[_models.DefenderForServersAwsOfferingMdeAutoProvisioning]", + "default": null, + "param_type": "keyword_only" + }, + "sub_plan": { + "type": "Optional[_models.DefenderForServersAwsOfferingSubPlan]", + "default": null, + "param_type": "keyword_only" + }, + "vm_scanners": { + "type": "Optional[_models.DefenderForServersAwsOfferingVmScanners]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "defender_for_servers": "Optional", + "arc_auto_provisioning": "Optional", + "va_auto_provisioning": "Optional", + "mde_auto_provisioning": "Optional", + "sub_plan": "Optional", + "vm_scanners": "Optional", + "offering_type": null, + "description": "Optional" + } + }, + "DefenderForServersAwsOfferingArcAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional", + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderForServersAwsOfferingDefenderForServers": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional" + } + }, + "DefenderForServersAwsOfferingMdeAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderForServersAwsOfferingSubPlan": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "type": "Optional[Union[str, _models.SubPlan]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": "Optional" + } + }, + "DefenderForServersAwsOfferingVaAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.DefenderForServersAwsOfferingVaAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderForServersAwsOfferingVaAutoProvisioningConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "type": "Optional[Union[str, _models.Type]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": "Optional" + } + }, + "DefenderForServersAwsOfferingVmScanners": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional", + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderForServersGcpOffering": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_servers": { + "type": "Optional[_models.DefenderForServersGcpOfferingDefenderForServers]", + "default": null, + "param_type": "keyword_only" + }, + "arc_auto_provisioning": { + "type": "Optional[_models.DefenderForServersGcpOfferingArcAutoProvisioning]", + "default": null, + "param_type": "keyword_only" + }, + "va_auto_provisioning": { + "type": "Optional[_models.DefenderForServersGcpOfferingVaAutoProvisioning]", + "default": null, + "param_type": "keyword_only" + }, + "mde_auto_provisioning": { + "type": "Optional[_models.DefenderForServersGcpOfferingMdeAutoProvisioning]", + "default": null, + "param_type": "keyword_only" + }, + "sub_plan": { + "type": "Optional[_models.DefenderForServersGcpOfferingSubPlan]", + "default": null, + "param_type": "keyword_only" + }, + "vm_scanners": { + "type": "Optional[_models.DefenderForServersGcpOfferingVmScanners]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "offering_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "defender_for_servers": "Optional", + "arc_auto_provisioning": "Optional", + "va_auto_provisioning": "Optional", + "mde_auto_provisioning": "Optional", + "sub_plan": "Optional", + "vm_scanners": "Optional", + "offering_type": null, + "description": "Optional" + } + }, + "DefenderForServersGcpOfferingArcAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.ArcAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderForServersGcpOfferingDefenderForServers": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workload_identity_provider_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "service_account_email_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workload_identity_provider_id": "Optional", + "service_account_email_address": "Optional" + } + }, + "DefenderForServersGcpOfferingMdeAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderForServersGcpOfferingSubPlan": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "type": "Optional[Union[str, _models.SubPlan]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": "Optional" + } + }, + "DefenderForServersGcpOfferingVaAutoProvisioning": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.DefenderForServersGcpOfferingVaAutoProvisioningConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderForServersGcpOfferingVaAutoProvisioningConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "type": "Optional[Union[str, _models.Type]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": "Optional" + } + }, + "DefenderForServersGcpOfferingVmScanners": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "DefenderForStorageSetting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.DefenderForStorageSettingProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "DefenderForStorageSettingProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "malware_scanning": { + "type": "Optional[_models.MalwareScanningProperties]", + "default": null, + "param_type": "keyword_only" + }, + "sensitive_data_discovery": { + "type": "Optional[_models.SensitiveDataDiscoveryProperties]", + "default": null, + "param_type": "keyword_only" + }, + "override_subscription_level_settings": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "is_enabled": "Optional", + "malware_scanning": "Optional", + "sensitive_data_discovery": "Optional", + "override_subscription_level_settings": "Optional" + } + }, + "DenylistCustomAlertRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + }, + "denylist_values": { + "type": "list[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + }, + "rule_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "denylist_values": "list", + "rule_type": null, + "value_type": "Optional", + "display_name": "Optional", + "description": "Optional", + "is_enabled": null + } + }, + "DevOpsCapability": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": "Optional", + "value": "Optional" + } + }, + "DevOpsConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.DevOpsConfigurationProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "DevOpsConfigurationProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "authorization": { + "type": "Optional[_models.Authorization]", + "default": null, + "param_type": "keyword_only" + }, + "auto_discovery": { + "type": "Optional[Union[str, _models.AutoDiscovery]]", + "default": null, + "param_type": "keyword_only" + }, + "top_level_inventory_list": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "agentless_configuration": { + "type": "Optional[_models.AgentlessConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": "Optional", + "provisioning_status_update_time_utc": "Optional", + "provisioning_state": "Optional", + "authorization": "Optional", + "auto_discovery": "Optional", + "top_level_inventory_list": "Optional", + "capabilities": "Optional", + "agentless_configuration": "Optional" + } + }, + "DevOpsProvisioningState": { + "type": "Enum", + "methods": {}, + "properties": { + "CANCELED": "CANCELED", + "DELETION_FAILURE": "DELETION_FAILURE", + "DELETION_SUCCESS": "DELETION_SUCCESS", + "FAILED": "FAILED", + "PENDING": "PENDING", + "PENDING_DELETION": "PENDING_DELETION", + "SUCCEEDED": "SUCCEEDED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "DeviceSecurityGroup": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.DeviceSecurityGroupProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "DeviceSecurityGroupProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "threshold_rules": { + "type": "Optional[list[_models.ThresholdCustomAlertRule]]", + "default": null, + "param_type": "keyword_only" + }, + "time_window_rules": { + "type": "Optional[list[_models.TimeWindowCustomAlertRule]]", + "default": null, + "param_type": "keyword_only" + }, + "allowlist_rules": { + "type": "Optional[list[_models.AllowlistCustomAlertRule]]", + "default": null, + "param_type": "keyword_only" + }, + "denylist_rules": { + "type": "Optional[list[_models.DenylistCustomAlertRule]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "threshold_rules": "Optional", + "time_window_rules": "Optional", + "allowlist_rules": "Optional", + "denylist_rules": "Optional" + } + }, + "DiscoveredSecuritySolution": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "_models.DiscoveredSecuritySolutionProperties", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": null, + "location": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "DiscoveredSecuritySolutionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "security_family": { + "type": "Union[str, _models.SecurityFamily]", + "default": null, + "param_type": "keyword_only" + }, + "offer": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "publisher": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "sku": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "security_family": "Union", + "offer": null, + "publisher": null, + "sku": null + } + }, + "DockerHubEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "authentication": { + "type": "Optional[_models.Authentication]", + "default": null, + "param_type": "keyword_only" + }, + "scan_interval": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "environment_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "authentication": "Optional", + "scan_interval": "Optional", + "environment_type": null + } + }, + "Effect": { + "type": "Enum", + "methods": {}, + "properties": { + "ATTEST": "ATTEST", + "AUDIT": "AUDIT", + "EXEMPT": "EXEMPT", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Enforce": { + "type": "Enum", + "methods": {}, + "properties": { + "FALSE": "FALSE", + "TRUE": "TRUE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "EnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "environment_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "environment_type": null + } + }, + "EnvironmentDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "native_resource_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "environment_hierarchy_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "organizational_hierarchy_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "subscription_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "tenant_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "native_resource_id": "Optional", + "environment_hierarchy_id": "Optional", + "organizational_hierarchy_id": "Optional", + "subscription_id": "Optional", + "tenant_id": "Optional" + } + }, + "EnvironmentType": { + "type": "Enum", + "methods": {}, + "properties": { + "AWS_ACCOUNT": "AWS_ACCOUNT", + "AZURE_DEV_OPS_SCOPE": "AZURE_DEV_OPS_SCOPE", + "DOCKER_HUB_ORGANIZATION": "DOCKER_HUB_ORGANIZATION", + "GCP_PROJECT": "GCP_PROJECT", + "GITHUB_SCOPE": "GITHUB_SCOPE", + "GITLAB_SCOPE": "GITLAB_SCOPE", + "J_FROG_ARTIFACTORY": "J_FROG_ARTIFACTORY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ErrorDetail": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": "Optional", + "message": "Optional", + "target": "Optional", + "details": "Optional", + "additional_info": "Optional" + } + }, + "ErrorResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "error": { + "type": "Optional[_models.ErrorDetail]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "error": "Optional" + } + }, + "EventSource": { + "type": "Enum", + "methods": {}, + "properties": { + "ALERTS": "ALERTS", + "ASSESSMENTS": "ASSESSMENTS", + "ASSESSMENTS_SNAPSHOT": "ASSESSMENTS_SNAPSHOT", + "ATTACK_PATHS": "ATTACK_PATHS", + "ATTACK_PATHS_SNAPSHOT": "ATTACK_PATHS_SNAPSHOT", + "REGULATORY_COMPLIANCE_ASSESSMENT": "REGULATORY_COMPLIANCE_ASSESSMENT", + "REGULATORY_COMPLIANCE_ASSESSMENT_SNAPSHOT": "REGULATORY_COMPLIANCE_ASSESSMENT_SNAPSHOT", + "SECURE_SCORES": "SECURE_SCORES", + "SECURE_SCORES_SNAPSHOT": "SECURE_SCORES_SNAPSHOT", + "SECURE_SCORE_CONTROLS": "SECURE_SCORE_CONTROLS", + "SECURE_SCORE_CONTROLS_SNAPSHOT": "SECURE_SCORE_CONTROLS_SNAPSHOT", + "SUB_ASSESSMENTS": "SUB_ASSESSMENTS", + "SUB_ASSESSMENTS_SNAPSHOT": "SUB_ASSESSMENTS_SNAPSHOT", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ExecuteGovernanceRuleParams": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "override": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "override": "Optional" + } + }, + "ExemptionCategory": { + "type": "Enum", + "methods": {}, + "properties": { + "MITIGATED": "MITIGATED", + "WAIVER": "WAIVER", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ExpandControlsEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "DEFINITION": "DEFINITION", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ExpandEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "LINKS": "LINKS", + "METADATA": "METADATA", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ExportData": { + "type": "Enum", + "methods": {}, + "properties": { + "RAW_EVENTS": "RAW_EVENTS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Extension": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "name": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "is_enabled": { + "type": "Union[str, _models.IsEnabled]", + "default": null, + "param_type": "keyword_only" + }, + "additional_extension_properties": { + "type": "Optional[dict[str, Any]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": null, + "is_enabled": "Union", + "additional_extension_properties": "Optional", + "operation_status": "Optional" + } + }, + "ExtensionResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "ExternalSecuritySolution": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + }, + "kind": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "kind": null, + "location": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "ExternalSecuritySolutionKindEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "AAD": "AAD", + "ATA": "ATA", + "CEF": "CEF", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ExternalSecuritySolutionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "device_vendor": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "device_type": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "workspace": { + "type": "Optional[_models.ConnectedWorkspace]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "device_vendor": "Optional", + "device_type": "Optional", + "workspace": "Optional" + } + }, + "FilesScanSummary": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "total_files_scanned": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "malicious_files_count": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "skipped_files_count": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "failed_files_count": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "scanned_files_in_gb": { + "type": "Optional[float]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "total_files_scanned": "Optional", + "malicious_files_count": "Optional", + "skipped_files_count": "Optional", + "failed_files_count": "Optional", + "scanned_files_in_gb": "Optional" + } + }, + "GcpOrganizationalData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "organization_membership_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "organization_membership_type": null + } + }, + "GcpOrganizationalDataMember": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "parent_hierarchy_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "management_project_number": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "organization_membership_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "parent_hierarchy_id": "Optional", + "management_project_number": "Optional", + "organization_membership_type": null + } + }, + "GcpOrganizationalDataOrganization": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "excluded_project_numbers": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "service_account_email_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "workload_identity_provider_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "organization_membership_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "excluded_project_numbers": "Optional", + "service_account_email_address": "Optional", + "workload_identity_provider_id": "Optional", + "organization_name": "Optional", + "organization_membership_type": null + } + }, + "GcpProjectDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "project_number": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "project_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "project_number": "Optional", + "project_id": "Optional", + "workload_identity_pool_id": "Optional", + "project_name": "Optional" + } + }, + "GcpProjectEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "organizational_data": { + "type": "Optional[_models.GcpOrganizationalData]", + "default": null, + "param_type": "keyword_only" + }, + "project_details": { + "type": "Optional[_models.GcpProjectDetails]", + "default": null, + "param_type": "keyword_only" + }, + "scan_interval": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "environment_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "organizational_data": "Optional", + "project_details": "Optional", + "scan_interval": "Optional", + "environment_type": null + } + }, + "GetSensitivitySettingsResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.GetSensitivitySettingsResponseProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "GetSensitivitySettingsResponseProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitive_info_types_ids": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "sensitivity_threshold_label_order": { + "type": "Optional[float]", + "default": null, + "param_type": "keyword_only" + }, + "sensitivity_threshold_label_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "mip_information": { + "type": "Optional[_models.GetSensitivitySettingsResponsePropertiesMipInformation]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "sensitive_info_types_ids": "Optional", + "sensitivity_threshold_label_order": "Optional", + "sensitivity_threshold_label_id": "Optional", + "mip_information": "Optional" + } + }, + "GetSensitivitySettingsResponsePropertiesMipInformation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mip_integration_status": { + "type": "Optional[Union[str, _models.MipIntegrationStatus]]", + "default": null, + "param_type": "keyword_only" + }, + "labels": { + "type": "Optional[list[_models.Label]]", + "default": null, + "param_type": "keyword_only" + }, + "custom_info_types": { + "type": "Optional[list[_models.InfoType]]", + "default": null, + "param_type": "keyword_only" + }, + "built_in_info_types": { + "type": "Optional[list[_models.BuiltInInfoType]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "mip_integration_status": "Optional", + "labels": "Optional", + "custom_info_types": "Optional", + "built_in_info_types": "Optional" + } + }, + "GitHubOwner": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.GitHubOwnerProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "GitHubOwnerListResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "type": "Optional[list[_models.GitHubOwner]]", + "default": null, + "param_type": "keyword_only" + }, + "next_link": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": "Optional", + "next_link": "Optional" + } + }, + "GitHubOwnerProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "onboarding_state": { + "type": "Optional[Union[str, _models.OnboardingState]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": "Optional", + "provisioning_status_update_time_utc": "Optional", + "provisioning_state": "Optional", + "owner_url": "Optional", + "git_hub_internal_id": "Optional", + "onboarding_state": "Optional" + } + }, + "GitHubRepository": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.GitHubRepositoryProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "GitHubRepositoryProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "onboarding_state": { + "type": "Optional[Union[str, _models.OnboardingState]]", + "default": null, + "param_type": "keyword_only" + }, + "parent_owner_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": "Optional", + "provisioning_status_update_time_utc": "Optional", + "provisioning_state": "Optional", + "repo_id": "Optional", + "repo_name": "Optional", + "repo_full_name": "Optional", + "onboarding_state": "Optional", + "repo_url": "Optional", + "parent_owner_name": "Optional" + } + }, + "GitLabGroup": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.GitLabGroupProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "GitLabGroupListResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "type": "Optional[list[_models.GitLabGroup]]", + "default": null, + "param_type": "keyword_only" + }, + "next_link": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": "Optional", + "next_link": "Optional" + } + }, + "GitLabGroupProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "onboarding_state": { + "type": "Optional[Union[str, _models.OnboardingState]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": "Optional", + "provisioning_status_update_time_utc": "Optional", + "provisioning_state": "Optional", + "fully_qualified_name": "Optional", + "fully_qualified_friendly_name": "Optional", + "url": "Optional", + "onboarding_state": "Optional" + } + }, + "GitLabProject": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.GitLabProjectProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "GitLabProjectProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "onboarding_state": { + "type": "Optional[Union[str, _models.OnboardingState]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_status_message": "Optional", + "provisioning_status_update_time_utc": "Optional", + "provisioning_state": "Optional", + "fully_qualified_name": "Optional", + "fully_qualified_friendly_name": "Optional", + "fully_qualified_parent_group_name": "Optional", + "url": "Optional", + "onboarding_state": "Optional" + } + }, + "GithubScopeEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "environment_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "environment_type": null + } + }, + "GitlabScopeEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "environment_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "environment_type": null + } + }, + "GovernanceAssignment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.GovernanceAssignmentProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "GovernanceAssignmentAdditionalData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "ticket_number": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "ticket_link": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "ticket_status": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "ticket_number": "Optional", + "ticket_link": "Optional", + "ticket_status": "Optional" + } + }, + "GovernanceAssignmentProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "remediation_due_date": { + "type": "datetime", + "default": null, + "param_type": "keyword_only" + }, + "owner": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "remediation_eta": { + "type": "Optional[_models.RemediationEta]", + "default": null, + "param_type": "keyword_only" + }, + "is_grace_period": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "governance_email_notification": { + "type": "Optional[_models.GovernanceEmailNotification]", + "default": null, + "param_type": "keyword_only" + }, + "additional_data": { + "type": "Optional[_models.GovernanceAssignmentAdditionalData]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "owner": "Optional", + "remediation_due_date": "datetime", + "remediation_eta": "Optional", + "is_grace_period": "Optional", + "governance_email_notification": "Optional", + "additional_data": "Optional" + } + }, + "GovernanceEmailNotification": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "disable_manager_email_notification": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "disable_owner_email_notification": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "disable_manager_email_notification": "Optional", + "disable_owner_email_notification": "Optional" + } + }, + "GovernanceRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.GovernanceRuleProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "GovernanceRuleEmailNotification": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "disable_manager_email_notification": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "disable_owner_email_notification": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "disable_manager_email_notification": "Optional", + "disable_owner_email_notification": "Optional" + } + }, + "GovernanceRuleMetadata": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "created_by": "Optional", + "created_on": "Optional", + "updated_by": "Optional", + "updated_on": "Optional" + } + }, + "GovernanceRuleOwnerSource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "type": "Optional[Union[str, _models.GovernanceRuleOwnerSourceType]]", + "default": null, + "param_type": "keyword_only" + }, + "value": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": "Optional", + "value": "Optional" + } + }, + "GovernanceRuleOwnerSourceType": { + "type": "Enum", + "methods": {}, + "properties": { + "BY_TAG": "BY_TAG", + "MANUALLY": "MANUALLY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "GovernanceRuleProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "rule_priority": { + "type": "int", + "default": null, + "param_type": "keyword_only" + }, + "rule_type": { + "type": "Union[str, _models.GovernanceRuleType]", + "default": null, + "param_type": "keyword_only" + }, + "source_resource_type": { + "type": "Union[str, _models.GovernanceRuleSourceResourceType]", + "default": null, + "param_type": "keyword_only" + }, + "condition_sets": { + "type": "list[Any]", + "default": null, + "param_type": "keyword_only" + }, + "owner_source": { + "type": "_models.GovernanceRuleOwnerSource", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "remediation_timeframe": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "is_grace_period": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "is_disabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "excluded_scopes": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "include_member_scopes": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "governance_email_notification": { + "type": "Optional[_models.GovernanceRuleEmailNotification]", + "default": null, + "param_type": "keyword_only" + }, + "metadata": { + "type": "Optional[_models.GovernanceRuleMetadata]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tenant_id": "Optional", + "display_name": null, + "description": "Optional", + "remediation_timeframe": "Optional", + "is_grace_period": "Optional", + "rule_priority": null, + "is_disabled": "Optional", + "rule_type": "Union", + "source_resource_type": "Union", + "excluded_scopes": "Optional", + "condition_sets": "list", + "include_member_scopes": "Optional", + "owner_source": null, + "governance_email_notification": "Optional", + "metadata": "Optional" + } + }, + "GovernanceRuleSourceResourceType": { + "type": "Enum", + "methods": {}, + "properties": { + "ASSESSMENTS": "ASSESSMENTS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "GovernanceRuleType": { + "type": "Enum", + "methods": {}, + "properties": { + "INTEGRATED": "INTEGRATED", + "SERVICE_NOW": "SERVICE_NOW", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "HealthDataClassification": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "component": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "scenario": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "scope": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "component": "Optional", + "scenario": "Optional", + "scope": "Optional" + } + }, + "HealthReport": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.HealthReportProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "HealthReportProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_details": { + "type": "Optional[_models.ResourceDetails]", + "default": null, + "param_type": "keyword_only" + }, + "environment_details": { + "type": "Optional[_models.EnvironmentDetails]", + "default": null, + "param_type": "keyword_only" + }, + "health_data_classification": { + "type": "Optional[_models.HealthDataClassification]", + "default": null, + "param_type": "keyword_only" + }, + "status": { + "type": "Optional[_models.StatusAutoGenerated]", + "default": null, + "param_type": "keyword_only" + }, + "affected_defenders_plans": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "affected_defenders_sub_plans": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "issues": { + "type": "Optional[list[_models.Issue]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "resource_details": "Optional", + "environment_details": "Optional", + "health_data_classification": "Optional", + "status": "Optional", + "affected_defenders_plans": "Optional", + "affected_defenders_sub_plans": "Optional", + "report_additional_data": "Optional", + "issues": "Optional" + } + }, + "Identity": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "type": "Optional[Union[str, _models.ResourceIdentityType]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": "Optional" + } + }, + "ImplementationEffort": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "LOW": "LOW", + "MODERATE": "MODERATE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "InfoType": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": "Optional", + "id": "Optional", + "description": "Optional" + } + }, + "InformationProtectionKeyword": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "pattern": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "custom": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "can_be_numeric": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "excluded": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "pattern": "Optional", + "custom": "Optional", + "can_be_numeric": "Optional", + "excluded": "Optional" + } + }, + "InformationProtectionPolicy": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.InformationProtectionPolicyProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "InformationProtectionPolicyName": { + "type": "Enum", + "methods": {}, + "properties": { + "CUSTOM": "CUSTOM", + "EFFECTIVE": "EFFECTIVE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "InformationProtectionPolicyProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "labels": { + "type": "Optional[dict[str, _models.SensitivityLabel]]", + "default": null, + "param_type": "keyword_only" + }, + "information_types": { + "type": "Optional[dict[str, _models.InformationType]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "last_modified_utc": "Optional", + "version": "Optional", + "labels": "Optional", + "information_types": "Optional" + } + }, + "InformationType": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "order": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "recommended_label_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "custom": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "keywords": { + "type": "Optional[list[_models.InformationProtectionKeyword]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": "Optional", + "description": "Optional", + "order": "Optional", + "recommended_label_id": "Optional", + "enabled": "Optional", + "custom": "Optional", + "keywords": "Optional" + } + }, + "InheritFromParentState": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Inherited": { + "type": "Enum", + "methods": {}, + "properties": { + "FALSE": "FALSE", + "TRUE": "TRUE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Intent": { + "type": "Enum", + "methods": {}, + "properties": { + "COLLECTION": "COLLECTION", + "COMMAND_AND_CONTROL": "COMMAND_AND_CONTROL", + "CREDENTIAL_ACCESS": "CREDENTIAL_ACCESS", + "DEFENSE_EVASION": "DEFENSE_EVASION", + "DISCOVERY": "DISCOVERY", + "EXECUTION": "EXECUTION", + "EXFILTRATION": "EXFILTRATION", + "EXPLOITATION": "EXPLOITATION", + "IMPACT": "IMPACT", + "INITIAL_ACCESS": "INITIAL_ACCESS", + "LATERAL_MOVEMENT": "LATERAL_MOVEMENT", + "PERSISTENCE": "PERSISTENCE", + "PRE_ATTACK": "PRE_ATTACK", + "PRIVILEGE_ESCALATION": "PRIVILEGE_ESCALATION", + "PROBING": "PROBING", + "UNKNOWN": "UNKNOWN", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "InventoryKind": { + "type": "Enum", + "methods": {}, + "properties": { + "AZURE_DEV_OPS_ORGANIZATION": "AZURE_DEV_OPS_ORGANIZATION", + "AZURE_DEV_OPS_PROJECT": "AZURE_DEV_OPS_PROJECT", + "AZURE_DEV_OPS_REPOSITORY": "AZURE_DEV_OPS_REPOSITORY", + "GIT_HUB_OWNER": "GIT_HUB_OWNER", + "GIT_HUB_REPOSITORY": "GIT_HUB_REPOSITORY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "InventoryList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "inventory_kind": { + "type": "Optional[Union[str, _models.InventoryKind]]", + "default": null, + "param_type": "keyword_only" + }, + "value": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "inventory_kind": "Optional", + "value": "Optional" + } + }, + "InventoryListKind": { + "type": "Enum", + "methods": {}, + "properties": { + "EXCLUSION": "EXCLUSION", + "INCLUSION": "INCLUSION", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "IoTSecurityAggregatedAlert": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.IoTSecurityAggregatedAlertProperties]", + "default": null, + "param_type": "keyword_only" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "tags": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "IoTSecurityAggregatedAlertProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "alert_type": "Optional", + "alert_display_name": "Optional", + "aggregated_date_utc": "Optional", + "vendor_name": "Optional", + "reported_severity": "Optional", + "remediation_steps": "Optional", + "description": "Optional", + "count": "Optional", + "effected_resource_type": "Optional", + "system_source": "Optional", + "action_taken": "Optional", + "log_analytics_query": "Optional", + "top_devices_list": "Optional" + } + }, + "IoTSecurityAggregatedAlertPropertiesTopDevicesListItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "device_id": "Optional", + "alerts_count": "Optional", + "last_occurrence": "Optional" + } + }, + "IoTSecurityAggregatedRecommendation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.IoTSecurityAggregatedRecommendationProperties]", + "default": null, + "param_type": "keyword_only" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "tags": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "IoTSecurityAggregatedRecommendationProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "recommendation_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "recommendation_name": "Optional", + "recommendation_display_name": "Optional", + "description": "Optional", + "recommendation_type_id": "Optional", + "detected_by": "Optional", + "remediation_steps": "Optional", + "reported_severity": "Optional", + "healthy_devices": "Optional", + "unhealthy_device_count": "Optional", + "log_analytics_query": "Optional" + } + }, + "IoTSecurityAlertedDevice": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "device_id": "Optional", + "alerts_count": "Optional" + } + }, + "IoTSecurityDeviceAlert": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "alert_display_name": "Optional", + "reported_severity": "Optional", + "alerts_count": "Optional" + } + }, + "IoTSecurityDeviceRecommendation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "recommendation_display_name": "Optional", + "reported_severity": "Optional", + "devices_count": "Optional" + } + }, + "IoTSecuritySolutionAnalyticsModel": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.IoTSecuritySolutionAnalyticsModelProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "IoTSecuritySolutionAnalyticsModelList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "type": "list[_models.IoTSecuritySolutionAnalyticsModel]", + "default": null, + "param_type": "keyword_only" + }, + "next_link": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": "list", + "next_link": "Optional" + } + }, + "IoTSecuritySolutionAnalyticsModelProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "top_alerted_devices": { + "type": "Optional[list[_models.IoTSecurityAlertedDevice]]", + "default": null, + "param_type": "keyword_only" + }, + "most_prevalent_device_alerts": { + "type": "Optional[list[_models.IoTSecurityDeviceAlert]]", + "default": null, + "param_type": "keyword_only" + }, + "most_prevalent_device_recommendations": { + "type": "Optional[list[_models.IoTSecurityDeviceRecommendation]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "metrics": "Optional", + "unhealthy_device_count": "Optional", + "devices_metrics": "Optional", + "top_alerted_devices": "Optional", + "most_prevalent_device_alerts": "Optional", + "most_prevalent_device_recommendations": "Optional" + } + }, + "IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "date": { + "type": "Optional[datetime]", + "default": null, + "param_type": "keyword_only" + }, + "devices_metrics": { + "type": "Optional[_models.IoTSeverityMetrics]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "date": "Optional", + "devices_metrics": "Optional" + } + }, + "IoTSecuritySolutionModel": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.IoTSecuritySolutionProperties]", + "default": null, + "param_type": "keyword_only" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "location": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "tags": "Optional", + "location": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "IoTSecuritySolutionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "iot_hubs": { + "type": "list[str]", + "default": null, + "param_type": "keyword_only" + }, + "workspace": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "status": { + "type": "Optional[Union[str, _models.SecuritySolutionStatus]]", + "default": null, + "param_type": "keyword_only" + }, + "export": { + "type": "Optional[list[Union[str, _models.ExportData]]]", + "default": null, + "param_type": "keyword_only" + }, + "disabled_data_sources": { + "type": "Optional[list[Union[str, _models.DataSource]]]", + "default": null, + "param_type": "keyword_only" + }, + "user_defined_resources": { + "type": "Optional[_models.UserDefinedResourcesProperties]", + "default": null, + "param_type": "keyword_only" + }, + "recommendations_configuration": { + "type": "Optional[list[_models.RecommendationConfigurationProperties]]", + "default": null, + "param_type": "keyword_only" + }, + "unmasked_ip_logging_status": { + "type": "Optional[Union[str, _models.UnmaskedIpLoggingStatus]]", + "default": null, + "param_type": "keyword_only" + }, + "additional_workspaces": { + "type": "Optional[list[_models.AdditionalWorkspacesProperties]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workspace": "Optional", + "display_name": null, + "status": "Optional", + "export": "Optional", + "disabled_data_sources": "Optional", + "iot_hubs": "list", + "user_defined_resources": "Optional", + "auto_discovered_resources": "Optional", + "recommendations_configuration": "Optional", + "unmasked_ip_logging_status": "Optional", + "additional_workspaces": "Optional" + } + }, + "IoTSeverityMetrics": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "high": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "medium": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "low": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "high": "Optional", + "medium": "Optional", + "low": "Optional" + } + }, + "IsEnabled": { + "type": "Enum", + "methods": {}, + "properties": { + "FALSE": "FALSE", + "TRUE": "TRUE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Issue": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "issue_key": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "issue_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "security_values": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "issue_description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "remediation_steps": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "remediation_script": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "issue_additional_data": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "issue_key": null, + "issue_name": "Optional", + "security_values": "Optional", + "issue_description": "Optional", + "remediation_steps": "Optional", + "remediation_script": "Optional", + "issue_additional_data": "Optional" + } + }, + "IssueCreationRequest": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "security_assessment_resource_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "security_assessment_resource_id": "Optional" + } + }, + "JFrogEnvironmentData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_interval": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "environment_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "scan_interval": "Optional", + "environment_type": null + } + }, + "JitNetworkAccessPolicy": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "_models.JitNetworkAccessPolicyProperties", + "default": null, + "param_type": "keyword_only" + }, + "kind": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": null, + "kind": "Optional", + "location": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "JitNetworkAccessPolicyInitiatePort": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "number": { + "type": "int", + "default": null, + "param_type": "keyword_only" + }, + "end_time_utc": { + "type": "datetime", + "default": null, + "param_type": "keyword_only" + }, + "allowed_source_address_prefix": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "number": null, + "allowed_source_address_prefix": "Optional", + "end_time_utc": "datetime" + } + }, + "JitNetworkAccessPolicyInitiateRequest": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "virtual_machines": { + "type": "list[_models.JitNetworkAccessPolicyInitiateVirtualMachine]", + "default": null, + "param_type": "keyword_only" + }, + "justification": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "virtual_machines": "list", + "justification": "Optional" + } + }, + "JitNetworkAccessPolicyInitiateVirtualMachine": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "ports": { + "type": "list[_models.JitNetworkAccessPolicyInitiatePort]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": null, + "ports": "list" + } + }, + "JitNetworkAccessPolicyProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "virtual_machines": { + "type": "list[_models.JitNetworkAccessPolicyVirtualMachine]", + "default": null, + "param_type": "keyword_only" + }, + "requests": { + "type": "Optional[list[_models.JitNetworkAccessRequest]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "virtual_machines": "list", + "requests": "Optional", + "provisioning_state": "Optional" + } + }, + "JitNetworkAccessPolicyVirtualMachine": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "ports": { + "type": "list[_models.JitNetworkAccessPortRule]", + "default": null, + "param_type": "keyword_only" + }, + "public_ip_address": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": null, + "ports": "list", + "public_ip_address": "Optional" + } + }, + "JitNetworkAccessPortRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "number": { + "type": "int", + "default": null, + "param_type": "keyword_only" + }, + "protocol": { + "type": "Union[str, _models.ProtocolEnum]", + "default": null, + "param_type": "keyword_only" + }, + "max_request_access_duration": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "allowed_source_address_prefix": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "allowed_source_address_prefixes": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "number": null, + "protocol": "Union", + "allowed_source_address_prefix": "Optional", + "allowed_source_address_prefixes": "Optional", + "max_request_access_duration": null + } + }, + "JitNetworkAccessRequest": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "virtual_machines": { + "type": "list[_models.JitNetworkAccessRequestVirtualMachine]", + "default": null, + "param_type": "keyword_only" + }, + "start_time_utc": { + "type": "datetime", + "default": null, + "param_type": "keyword_only" + }, + "requestor": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "justification": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "virtual_machines": "list", + "start_time_utc": "datetime", + "requestor": null, + "justification": "Optional" + } + }, + "JitNetworkAccessRequestPort": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "number": { + "type": "int", + "default": null, + "param_type": "keyword_only" + }, + "end_time_utc": { + "type": "datetime", + "default": null, + "param_type": "keyword_only" + }, + "status": { + "type": "Union[str, _models.StatusEnum]", + "default": null, + "param_type": "keyword_only" + }, + "status_reason": { + "type": "Union[str, _models.StatusReason]", + "default": null, + "param_type": "keyword_only" + }, + "allowed_source_address_prefix": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "allowed_source_address_prefixes": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "mapped_port": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "number": null, + "allowed_source_address_prefix": "Optional", + "allowed_source_address_prefixes": "Optional", + "end_time_utc": "datetime", + "status": "Union", + "status_reason": "Union", + "mapped_port": "Optional" + } + }, + "JitNetworkAccessRequestVirtualMachine": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "ports": { + "type": "list[_models.JitNetworkAccessRequestPort]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": null, + "ports": "list" + } + }, + "KindEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "BUNDLES": "BUNDLES", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Label": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "order": { + "type": "Optional[float]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": "Optional", + "id": "Optional", + "order": "Optional" + } + }, + "ListCustomAlertRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + }, + "rule_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value_type": "Optional", + "rule_type": null, + "display_name": "Optional", + "description": "Optional", + "is_enabled": null + } + }, + "LogAnalyticsIdentifier": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workspace_id": "Optional", + "workspace_subscription_id": "Optional", + "workspace_resource_group": "Optional", + "agent_id": "Optional", + "type": null + } + }, + "MalwareScan": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.MalwareScanProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional" + } + }, + "MalwareScanProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "scan_status": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "scan_status_message": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "scan_start_time": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "scan_end_time": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "scan_summary": { + "type": "Optional[_models.ScanSummary]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "scan_id": "Optional", + "scan_status": "Optional", + "scan_status_message": "Optional", + "scan_start_time": "Optional", + "scan_end_time": "Optional", + "scan_summary": "Optional" + } + }, + "MalwareScanningProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "on_upload": { + "type": "Optional[_models.OnUploadProperties]", + "default": null, + "param_type": "keyword_only" + }, + "scan_results_event_grid_topic_resource_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "blob_scan_results_options": { + "type": "Optional[Union[str, _models.BlobScanResultsOptions]]", + "default": null, + "param_type": "keyword_only" + }, + "automated_response": { + "type": "Optional[Union[str, _models.AutomatedResponseType]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "on_upload": "Optional", + "scan_results_event_grid_topic_resource_id": "Optional", + "blob_scan_results_options": "Optional", + "automated_response": "Optional", + "operation_status": "Optional" + } + }, + "MdeOnboardingData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.MdeOnboardingDataProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "MdeOnboardingDataProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "onboarding_package_windows": { + "type": "Optional[bytes]", + "default": null, + "param_type": "keyword_only" + }, + "onboarding_package_linux": { + "type": "Optional[bytes]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "onboarding_package_windows": "Optional", + "onboarding_package_linux": "Optional" + } + }, + "MinimalRiskLevel": { + "type": "Enum", + "methods": {}, + "properties": { + "CRITICAL": "CRITICAL", + "HIGH": "HIGH", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "MinimalSeverity": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "MipIntegrationStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "NO_AUTO_LABELING_RULES": "NO_AUTO_LABELING_RULES", + "NO_CONSENT": "NO_CONSENT", + "NO_MIP_LABELS": "NO_MIP_LABELS", + "OK": "OK", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "NotificationsSource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "source_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "source_type": null + } + }, + "NotificationsSourceAlert": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "minimal_severity": { + "type": "Optional[Union[str, _models.MinimalSeverity]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "source_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "minimal_severity": "Optional", + "source_type": null + } + }, + "NotificationsSourceAttackPath": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "minimal_risk_level": { + "type": "Optional[Union[str, _models.MinimalRiskLevel]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "source_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "minimal_risk_level": "Optional", + "source_type": null + } + }, + "OfferingType": { + "type": "Enum", + "methods": {}, + "properties": { + "CSPM_MONITOR_AWS": "CSPM_MONITOR_AWS", + "CSPM_MONITOR_AZURE_DEV_OPS": "CSPM_MONITOR_AZURE_DEV_OPS", + "CSPM_MONITOR_DOCKER_HUB": "CSPM_MONITOR_DOCKER_HUB", + "CSPM_MONITOR_GCP": "CSPM_MONITOR_GCP", + "CSPM_MONITOR_GITHUB": "CSPM_MONITOR_GITHUB", + "CSPM_MONITOR_GIT_LAB": "CSPM_MONITOR_GIT_LAB", + "CSPM_MONITOR_J_FROG": "CSPM_MONITOR_J_FROG", + "DEFENDER_CSPM_AWS": "DEFENDER_CSPM_AWS", + "DEFENDER_CSPM_DOCKER_HUB": "DEFENDER_CSPM_DOCKER_HUB", + "DEFENDER_CSPM_GCP": "DEFENDER_CSPM_GCP", + "DEFENDER_CSPM_J_FROG": "DEFENDER_CSPM_J_FROG", + "DEFENDER_FOR_CONTAINERS_AWS": "DEFENDER_FOR_CONTAINERS_AWS", + "DEFENDER_FOR_CONTAINERS_DOCKER_HUB": "DEFENDER_FOR_CONTAINERS_DOCKER_HUB", + "DEFENDER_FOR_CONTAINERS_GCP": "DEFENDER_FOR_CONTAINERS_GCP", + "DEFENDER_FOR_CONTAINERS_J_FROG": "DEFENDER_FOR_CONTAINERS_J_FROG", + "DEFENDER_FOR_DATABASES_AWS": "DEFENDER_FOR_DATABASES_AWS", + "DEFENDER_FOR_DATABASES_GCP": "DEFENDER_FOR_DATABASES_GCP", + "DEFENDER_FOR_SERVERS_AWS": "DEFENDER_FOR_SERVERS_AWS", + "DEFENDER_FOR_SERVERS_GCP": "DEFENDER_FOR_SERVERS_GCP", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "OnUploadFilters": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_blobs_with_prefix": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "exclude_blobs_with_suffix": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "exclude_blobs_larger_than": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "exclude_blobs_with_prefix": "Optional", + "exclude_blobs_with_suffix": "Optional", + "exclude_blobs_larger_than": "Optional" + } + }, + "OnUploadProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "cap_gb_per_month": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "filters": { + "type": "Optional[_models.OnUploadFilters]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "is_enabled": "Optional", + "cap_gb_per_month": "Optional", + "filters": "Optional" + } + }, + "OnboardingState": { + "type": "Enum", + "methods": {}, + "properties": { + "NOT_APPLICABLE": "NOT_APPLICABLE", + "NOT_ONBOARDED": "NOT_ONBOARDED", + "ONBOARDED": "ONBOARDED", + "ONBOARDED_BY_OTHER_CONNECTOR": "ONBOARDED_BY_OTHER_CONNECTOR", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Operation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "display": { + "type": "Optional[_models.OperationDisplay]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": "Optional", + "is_data_action": "Optional", + "display": "Optional", + "origin": "Optional", + "action_type": "Optional" + } + }, + "OperationDisplay": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provider": "Optional", + "resource": "Optional", + "operation": "Optional", + "description": "Optional" + } + }, + "OperationResultAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "status": "Optional" + } + }, + "OperationResultStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "CANCELED": "CANCELED", + "FAILED": "FAILED", + "SUCCEEDED": "SUCCEEDED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "OperationStatus": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "code": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "message": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": "Optional", + "message": "Optional" + } + }, + "OperationStatusResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "status": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "percent_complete": { + "type": "Optional[float]", + "default": null, + "param_type": "keyword_only" + }, + "start_time": { + "type": "Optional[datetime]", + "default": null, + "param_type": "keyword_only" + }, + "end_time": { + "type": "Optional[datetime]", + "default": null, + "param_type": "keyword_only" + }, + "operations": { + "type": "Optional[list[_models.OperationStatusResult]]", + "default": null, + "param_type": "keyword_only" + }, + "error": { + "type": "Optional[_models.ErrorDetail]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional", + "name": "Optional", + "status": null, + "percent_complete": "Optional", + "start_time": "Optional", + "end_time": "Optional", + "operations": "Optional", + "error": "Optional" + } + }, + "Operator": { + "type": "Enum", + "methods": {}, + "properties": { + "CONTAINS": "CONTAINS", + "ENDS_WITH": "ENDS_WITH", + "EQUALS": "EQUALS", + "GREATER_THAN": "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO": "GREATER_THAN_OR_EQUAL_TO", + "LESSER_THAN": "LESSER_THAN", + "LESSER_THAN_OR_EQUAL_TO": "LESSER_THAN_OR_EQUAL_TO", + "NOT_EQUALS": "NOT_EQUALS", + "STARTS_WITH": "STARTS_WITH", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "OrganizationMembershipType": { + "type": "Enum", + "methods": {}, + "properties": { + "MEMBER": "MEMBER", + "ORGANIZATION": "ORGANIZATION", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Origin": { + "type": "Enum", + "methods": {}, + "properties": { + "SYSTEM": "SYSTEM", + "USER": "USER", + "USER_SYSTEM": "USER_SYSTEM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "PartialAssessmentProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_key": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "assessment_key": "Optional" + } + }, + "Pricing": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.PricingProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "PricingProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_tier": { + "type": "Union[str, _models.PricingTier]", + "default": null, + "param_type": "keyword_only" + }, + "sub_plan": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "enforce": { + "type": "Optional[Union[str, _models.Enforce]]", + "default": null, + "param_type": "keyword_only" + }, + "extensions": { + "type": "Optional[list[_models.Extension]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "pricing_tier": "Union", + "sub_plan": "Optional", + "free_trial_remaining_time": "Optional", + "enablement_time": "Optional", + "enforce": "Optional", + "inherited": "Optional", + "inherited_from": "Optional", + "resources_coverage_status": "Optional", + "extensions": "Optional", + "deprecated": "Optional", + "replaced_by": "Optional" + } + }, + "PricingTier": { + "type": "Enum", + "methods": {}, + "properties": { + "FREE": "FREE", + "STANDARD": "STANDARD", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "PrivateEndpoint": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional" + } + }, + "PrivateEndpointConnection": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.PrivateEndpointConnectionProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "PrivateEndpointConnectionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_service_connection_state": { + "type": "_models.PrivateLinkServiceConnectionState", + "default": null, + "param_type": "keyword_only" + }, + "private_endpoint": { + "type": "Optional[_models.PrivateEndpoint]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "private_endpoint": "Optional", + "private_link_service_connection_state": null, + "provisioning_state": "Optional" + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "Enum", + "methods": {}, + "properties": { + "CREATING": "CREATING", + "DELETING": "DELETING", + "FAILED": "FAILED", + "SUCCEEDED": "SUCCEEDED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "APPROVED": "APPROVED", + "PENDING": "PENDING", + "REJECTED": "REJECTED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "PrivateLinkGroupResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.PrivateLinkResourceProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "PrivateLinkProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "public_network_access": { + "type": "Optional[Union[str, _models.PublicNetworkAccess]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_state": "Optional", + "private_endpoint_connections": "Optional", + "private_link_resources": "Optional", + "public_network_access": "Optional" + } + }, + "PrivateLinkResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "properties": { + "type": "_models.PrivateLinkProperties", + "default": null, + "param_type": "keyword_only" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": null, + "tags": "Optional", + "location": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "PrivateLinkResourceProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "required_zone_names": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "group_id": "Optional", + "required_members": "Optional", + "required_zone_names": "Optional" + } + }, + "PrivateLinkServiceConnectionState": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "status": { + "type": "Optional[Union[str, _models.PrivateEndpointServiceConnectionStatus]]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "actions_required": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "status": "Optional", + "description": "Optional", + "actions_required": "Optional" + } + }, + "PrivateLinkUpdate": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tags": "Optional" + } + }, + "Private_link_parameters": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PropertyType": { + "type": "Enum", + "methods": {}, + "properties": { + "BOOLEAN": "BOOLEAN", + "INTEGER": "INTEGER", + "NUMBER": "NUMBER", + "STRING": "STRING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ProtocolEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "ALL": "ALL", + "TCP": "TCP", + "UDP": "UDP", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ProvisioningState": { + "type": "Enum", + "methods": {}, + "properties": { + "CANCELED": "CANCELED", + "CREATING": "CREATING", + "DELETING": "DELETING", + "FAILED": "FAILED", + "IN_PROGRESS": "IN_PROGRESS", + "SUCCEEDED": "SUCCEEDED", + "UPDATING": "UPDATING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ProxyResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "PublicNetworkAccess": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "QueryCheck": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "query": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "expected_result": { + "type": "Optional[list[list[str]]]", + "default": null, + "param_type": "keyword_only" + }, + "column_names": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "query": "Optional", + "expected_result": "Optional", + "column_names": "Optional" + } + }, + "Rank": { + "type": "Enum", + "methods": {}, + "properties": { + "CRITICAL": "CRITICAL", + "HIGH": "HIGH", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "NONE": "NONE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RecommendationConfigStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RecommendationConfigurationProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "recommendation_type": { + "type": "Union[str, _models.RecommendationType]", + "default": null, + "param_type": "keyword_only" + }, + "status": { + "type": "Union[str, _models.RecommendationConfigStatus]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "recommendation_type": "Union", + "name": "Optional", + "status": "Union" + } + }, + "RecommendationSupportedClouds": { + "type": "Enum", + "methods": {}, + "properties": { + "AWS": "AWS", + "AZURE": "AZURE", + "GCP": "GCP", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RecommendationType": { + "type": "Enum", + "methods": {}, + "properties": { + "IO_T_ACRAUTHENTICATION": "IO_T_ACRAUTHENTICATION", + "IO_T_AGENT_SENDS_UNUTILIZED_MESSAGES": "IO_T_AGENT_SENDS_UNUTILIZED_MESSAGES", + "IO_T_BASELINE": "IO_T_BASELINE", + "IO_T_EDGE_HUB_MEM_OPTIMIZE": "IO_T_EDGE_HUB_MEM_OPTIMIZE", + "IO_T_EDGE_LOGGING_OPTIONS": "IO_T_EDGE_LOGGING_OPTIONS", + "IO_T_INCONSISTENT_MODULE_SETTINGS": "IO_T_INCONSISTENT_MODULE_SETTINGS", + "IO_T_INSTALL_AGENT": "IO_T_INSTALL_AGENT", + "IO_T_IPFILTER_DENY_ALL": "IO_T_IPFILTER_DENY_ALL", + "IO_T_IPFILTER_PERMISSIVE_RULE": "IO_T_IPFILTER_PERMISSIVE_RULE", + "IO_T_OPEN_PORTS": "IO_T_OPEN_PORTS", + "IO_T_PERMISSIVE_FIREWALL_POLICY": "IO_T_PERMISSIVE_FIREWALL_POLICY", + "IO_T_PERMISSIVE_INPUT_FIREWALL_RULES": "IO_T_PERMISSIVE_INPUT_FIREWALL_RULES", + "IO_T_PERMISSIVE_OUTPUT_FIREWALL_RULES": "IO_T_PERMISSIVE_OUTPUT_FIREWALL_RULES", + "IO_T_PRIVILEGED_DOCKER_OPTIONS": "IO_T_PRIVILEGED_DOCKER_OPTIONS", + "IO_T_SHARED_CREDENTIALS": "IO_T_SHARED_CREDENTIALS", + "IO_T_VULNERABLE_TLS_CIPHER_SUITE": "IO_T_VULNERABLE_TLS_CIPHER_SUITE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RegulatoryComplianceAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.RegulatoryComplianceAssessmentProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "RegulatoryComplianceAssessmentProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "state": { + "type": "Optional[Union[str, _models.State]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": "Optional", + "assessment_type": "Optional", + "assessment_details_link": "Optional", + "state": "Optional", + "passed_resources": "Optional", + "failed_resources": "Optional", + "skipped_resources": "Optional", + "unsupported_resources": "Optional" + } + }, + "RegulatoryComplianceControl": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.RegulatoryComplianceControlProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "RegulatoryComplianceControlProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "state": { + "type": "Optional[Union[str, _models.State]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": "Optional", + "state": "Optional", + "passed_assessments": "Optional", + "failed_assessments": "Optional", + "skipped_assessments": "Optional" + } + }, + "RegulatoryComplianceStandard": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.RegulatoryComplianceStandardProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "RegulatoryComplianceStandardProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "state": { + "type": "Optional[Union[str, _models.State]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "state": "Optional", + "passed_controls": "Optional", + "failed_controls": "Optional", + "skipped_controls": "Optional", + "unsupported_controls": "Optional" + } + }, + "Remediation": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "scripts": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "automated": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "portal_link": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "description": "Optional", + "scripts": "Optional", + "automated": "Optional", + "portal_link": "Optional" + } + }, + "RemediationEta": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "eta": { + "type": "datetime", + "default": null, + "param_type": "keyword_only" + }, + "justification": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "eta": "datetime", + "justification": null + } + }, + "ReportedSeverity": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "INFORMATIONAL": "INFORMATIONAL", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Resource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "ResourceDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "source": { + "type": "Optional[Union[str, _models.Source]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "source": "Optional", + "id": "Optional", + "connector_id": "Optional" + } + }, + "ResourceIdentifier": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": null + } + }, + "ResourceIdentifierType": { + "type": "Enum", + "methods": {}, + "properties": { + "AZURE_RESOURCE": "AZURE_RESOURCE", + "LOG_ANALYTICS": "LOG_ANALYTICS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ResourceIdentityType": { + "type": "Enum", + "methods": {}, + "properties": { + "SYSTEM_ASSIGNED": "SYSTEM_ASSIGNED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ResourceStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "HEALTHY": "HEALTHY", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "NOT_HEALTHY": "NOT_HEALTHY", + "OFF_BY_POLICY": "OFF_BY_POLICY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ResourcesCoverageStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "FULLY_COVERED": "FULLY_COVERED", + "NOT_COVERED": "NOT_COVERED", + "PARTIALLY_COVERED": "PARTIALLY_COVERED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RiskLevel": { + "type": "Enum", + "methods": {}, + "properties": { + "CRITICAL": "CRITICAL", + "HIGH": "HIGH", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "NONE": "NONE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RuleCategory": { + "type": "Enum", + "methods": {}, + "properties": { + "ARTIFACTS": "ARTIFACTS", + "CODE": "CODE", + "CONTAINERS": "CONTAINERS", + "DEPENDENCIES": "DEPENDENCIES", + "IA_C": "IA_C", + "SECRETS": "SECRETS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RuleResults": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.RuleResultsProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "RuleResultsInput": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "latest_scan": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "results": { + "type": "Optional[list[list[str]]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "latest_scan": "Optional", + "results": "Optional" + } + }, + "RuleResultsProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "results": { + "type": "Optional[list[list[str]]]", + "default": null, + "param_type": "keyword_only" + }, + "latest_scan": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "results": "Optional", + "latest_scan": "Optional" + } + }, + "RuleSeverity": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "INFORMATIONAL": "INFORMATIONAL", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "OBSOLETE": "OBSOLETE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RuleState": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "EXPIRED": "EXPIRED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RuleStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "FINDING": "FINDING", + "INTERNAL_ERROR": "INTERNAL_ERROR", + "NON_FINDING": "NON_FINDING", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RuleType": { + "type": "Enum", + "methods": {}, + "properties": { + "BASELINE_EXPECTED": "BASELINE_EXPECTED", + "BINARY": "BINARY", + "NEGATIVE_LIST": "NEGATIVE_LIST", + "POSITIVE_LIST": "POSITIVE_LIST", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "RulesResults": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "type": "Optional[list[_models.RuleResults]]", + "default": null, + "param_type": "keyword_only" + }, + "next_link": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": "Optional", + "next_link": "Optional" + } + }, + "RulesResultsInput": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "latest_scan": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "results": { + "type": "Optional[dict[str, list[list[str]]]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "latest_scan": "Optional", + "results": "Optional" + } + }, + "ScanOperationStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "FAILED": "FAILED", + "FAILED_TO_RUN": "FAILED_TO_RUN", + "IN_PROGRESS": "IN_PROGRESS", + "PASSED": "PASSED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ScanPropertiesV2": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "trigger_type": { + "type": "Optional[Union[str, _models.ScanTriggerType]]", + "default": null, + "param_type": "keyword_only" + }, + "state": { + "type": "Optional[Union[str, _models.ScanState]]", + "default": null, + "param_type": "keyword_only" + }, + "server": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "database": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "sql_version": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "start_time": { + "type": "Optional[datetime]", + "default": null, + "param_type": "keyword_only" + }, + "end_time": { + "type": "Optional[datetime]", + "default": null, + "param_type": "keyword_only" + }, + "high_severity_failed_rules_count": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "medium_severity_failed_rules_count": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "low_severity_failed_rules_count": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "total_passed_rules_count": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "total_failed_rules_count": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "total_rules_count": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "is_baseline_applied": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "last_scan_time": { + "type": "Optional[datetime]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "trigger_type": "Optional", + "state": "Optional", + "server": "Optional", + "database": "Optional", + "sql_version": "Optional", + "start_time": "Optional", + "end_time": "Optional", + "high_severity_failed_rules_count": "Optional", + "medium_severity_failed_rules_count": "Optional", + "low_severity_failed_rules_count": "Optional", + "total_passed_rules_count": "Optional", + "total_failed_rules_count": "Optional", + "total_rules_count": "Optional", + "is_baseline_applied": "Optional", + "last_scan_time": "Optional" + } + }, + "ScanResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.ScanResultProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "ScanResultProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "status": { + "type": "Optional[Union[str, _models.RuleStatus]]", + "default": null, + "param_type": "keyword_only" + }, + "is_trimmed": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "query_results": { + "type": "Optional[list[list[str]]]", + "default": null, + "param_type": "keyword_only" + }, + "remediation": { + "type": "Optional[_models.Remediation]", + "default": null, + "param_type": "keyword_only" + }, + "baseline_adjusted_result": { + "type": "Optional[_models.BaselineAdjustedResult]", + "default": null, + "param_type": "keyword_only" + }, + "rule_metadata": { + "type": "Optional[_models.VaRule]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_id": "Optional", + "status": "Optional", + "is_trimmed": "Optional", + "query_results": "Optional", + "remediation": "Optional", + "baseline_adjusted_result": "Optional", + "rule_metadata": "Optional" + } + }, + "ScanState": { + "type": "Enum", + "methods": {}, + "properties": { + "FAILED": "FAILED", + "FAILED_TO_RUN": "FAILED_TO_RUN", + "IN_PROGRESS": "IN_PROGRESS", + "PASSED": "PASSED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ScanSummary": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "blobs": { + "type": "Optional[_models.BlobsScanSummary]", + "default": null, + "param_type": "keyword_only" + }, + "files": { + "type": "Optional[_models.FilesScanSummary]", + "default": null, + "param_type": "keyword_only" + }, + "estimated_scan_cost_usd": { + "type": "Optional[float]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "blobs": "Optional", + "files": "Optional", + "estimated_scan_cost_usd": "Optional" + } + }, + "ScanTriggerType": { + "type": "Enum", + "methods": {}, + "properties": { + "ON_DEMAND": "ON_DEMAND", + "RECURRING": "RECURRING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ScanV2": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.ScanPropertiesV2]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "ScanningMode": { + "type": "Enum", + "methods": {}, + "properties": { + "DEFAULT": "DEFAULT", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ScopeElement": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "field": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "field": "Optional" + } + }, + "ScoreDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "max": "Optional", + "current": "Optional", + "percentage": "Optional" + } + }, + "SecureScoreControlDefinitionItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SecureScoreControlDefinitionItemProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecureScoreControlDefinitionItemProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": "Optional", + "description": "Optional", + "max_score": "Optional", + "source": "Optional", + "assessment_definitions": "Optional" + } + }, + "SecureScoreControlDefinitionSource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "source_type": { + "type": "Optional[Union[str, _models.ControlType]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "source_type": "Optional" + } + }, + "SecureScoreControlDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SecureScoreControlScoreDetails]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecureScoreControlScoreDetails": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "score": { + "type": "Optional[_models.ScoreDetails]", + "default": null, + "param_type": "keyword_only" + }, + "definition": { + "type": "Optional[_models.SecureScoreControlDefinitionItem]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": "Optional", + "score": "Optional", + "healthy_resource_count": "Optional", + "unhealthy_resource_count": "Optional", + "not_applicable_resource_count": "Optional", + "weight": "Optional", + "definition": "Optional" + } + }, + "SecureScoreItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecureScoreItemProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": "Optional", + "score": "Optional", + "weight": "Optional" + } + }, + "SecurityAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SecurityAssessmentProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecurityAssessmentMetadataPartnerData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "partner_name": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "secret": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "product_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "partner_name": null, + "product_name": "Optional", + "secret": null + } + }, + "SecurityAssessmentMetadataProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "severity": { + "type": "Union[str, _models.Severity]", + "default": null, + "param_type": "keyword_only" + }, + "assessment_type": { + "type": "Union[str, _models.AssessmentType]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "remediation_description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "categories": { + "type": "Optional[list[Union[str, _models.Categories]]]", + "default": null, + "param_type": "keyword_only" + }, + "user_impact": { + "type": "Optional[Union[str, _models.UserImpact]]", + "default": null, + "param_type": "keyword_only" + }, + "implementation_effort": { + "type": "Optional[Union[str, _models.ImplementationEffort]]", + "default": null, + "param_type": "keyword_only" + }, + "threats": { + "type": "Optional[list[Union[str, _models.Threats]]]", + "default": null, + "param_type": "keyword_only" + }, + "preview": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "partner_data": { + "type": "Optional[_models.SecurityAssessmentMetadataPartnerData]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": null, + "policy_definition_id": "Optional", + "description": "Optional", + "remediation_description": "Optional", + "categories": "Optional", + "severity": "Union", + "user_impact": "Optional", + "implementation_effort": "Optional", + "threats": "Optional", + "preview": "Optional", + "assessment_type": "Union", + "partner_data": "Optional" + } + }, + "SecurityAssessmentMetadataPropertiesResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "severity": { + "type": "Union[str, _models.Severity]", + "default": null, + "param_type": "keyword_only" + }, + "assessment_type": { + "type": "Union[str, _models.AssessmentType]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "remediation_description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "categories": { + "type": "Optional[list[Union[str, _models.Categories]]]", + "default": null, + "param_type": "keyword_only" + }, + "user_impact": { + "type": "Optional[Union[str, _models.UserImpact]]", + "default": null, + "param_type": "keyword_only" + }, + "implementation_effort": { + "type": "Optional[Union[str, _models.ImplementationEffort]]", + "default": null, + "param_type": "keyword_only" + }, + "threats": { + "type": "Optional[list[Union[str, _models.Threats]]]", + "default": null, + "param_type": "keyword_only" + }, + "preview": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "partner_data": { + "type": "Optional[_models.SecurityAssessmentMetadataPartnerData]", + "default": null, + "param_type": "keyword_only" + }, + "publish_dates": { + "type": "Optional[_models.SecurityAssessmentMetadataPropertiesResponsePublishDates]", + "default": null, + "param_type": "keyword_only" + }, + "planned_deprecation_date": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "tactics": { + "type": "Optional[list[Union[str, _models.Tactics]]]", + "default": null, + "param_type": "keyword_only" + }, + "techniques": { + "type": "Optional[list[Union[str, _models.Techniques]]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "severity": { + "type": "Union[str, _models.Severity]", + "default": null, + "param_type": "keyword_only" + }, + "assessment_type": { + "type": "Union[str, _models.AssessmentType]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "remediation_description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "categories": { + "type": "Optional[list[Union[str, _models.Categories]]]", + "default": null, + "param_type": "keyword_only" + }, + "user_impact": { + "type": "Optional[Union[str, _models.UserImpact]]", + "default": null, + "param_type": "keyword_only" + }, + "implementation_effort": { + "type": "Optional[Union[str, _models.ImplementationEffort]]", + "default": null, + "param_type": "keyword_only" + }, + "threats": { + "type": "Optional[list[Union[str, _models.Threats]]]", + "default": null, + "param_type": "keyword_only" + }, + "preview": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "partner_data": { + "type": "Optional[_models.SecurityAssessmentMetadataPartnerData]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "publish_dates": "Optional", + "planned_deprecation_date": "Optional", + "tactics": "Optional", + "techniques": "Optional", + "display_name": null, + "policy_definition_id": "Optional", + "description": "Optional", + "remediation_description": "Optional", + "categories": "Optional", + "severity": "Union", + "user_impact": "Optional", + "implementation_effort": "Optional", + "threats": "Optional", + "preview": "Optional", + "assessment_type": "Union", + "partner_data": "Optional" + } + }, + "SecurityAssessmentMetadataPropertiesResponsePublishDates": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "public": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "ga": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "ga": "Optional", + "public": null + } + }, + "SecurityAssessmentMetadataResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SecurityAssessmentMetadataPropertiesResponse]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecurityAssessmentPartnerData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "partner_name": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "secret": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "partner_name": null, + "secret": null + } + }, + "SecurityAssessmentProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_details": { + "type": "_models.CommonResourceDetails", + "default": null, + "param_type": "keyword_only" + }, + "status": { + "type": "_models.AssessmentStatus", + "default": null, + "param_type": "keyword_only" + }, + "risk": { + "type": "Optional[_models.SecurityAssessmentPropertiesBaseRisk]", + "default": null, + "param_type": "keyword_only" + }, + "additional_data": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "metadata": { + "type": "Optional[_models.SecurityAssessmentMetadataProperties]", + "default": null, + "param_type": "keyword_only" + }, + "partners_data": { + "type": "Optional[_models.SecurityAssessmentPartnerData]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_details": { + "type": "_models.CommonResourceDetails", + "default": null, + "param_type": "keyword_only" + }, + "risk": { + "type": "Optional[_models.SecurityAssessmentPropertiesBaseRisk]", + "default": null, + "param_type": "keyword_only" + }, + "additional_data": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "metadata": { + "type": "Optional[_models.SecurityAssessmentMetadataProperties]", + "default": null, + "param_type": "keyword_only" + }, + "partners_data": { + "type": "Optional[_models.SecurityAssessmentPartnerData]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "status": null, + "risk": "Optional", + "resource_details": null, + "display_name": "Optional", + "additional_data": "Optional", + "links": "Optional", + "metadata": "Optional", + "partners_data": "Optional" + } + }, + "SecurityAssessmentPropertiesBase": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_details": { + "type": "_models.CommonResourceDetails", + "default": null, + "param_type": "keyword_only" + }, + "risk": { + "type": "Optional[_models.SecurityAssessmentPropertiesBaseRisk]", + "default": null, + "param_type": "keyword_only" + }, + "additional_data": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "metadata": { + "type": "Optional[_models.SecurityAssessmentMetadataProperties]", + "default": null, + "param_type": "keyword_only" + }, + "partners_data": { + "type": "Optional[_models.SecurityAssessmentPartnerData]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "risk": "Optional", + "resource_details": null, + "display_name": "Optional", + "additional_data": "Optional", + "links": "Optional", + "metadata": "Optional", + "partners_data": "Optional" + } + }, + "SecurityAssessmentPropertiesBaseRisk": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "risk_factors": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "level": { + "type": "Optional[Union[str, _models.RiskLevel]]", + "default": null, + "param_type": "keyword_only" + }, + "attack_paths_references": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "paths": { + "type": "Optional[list[_models.SecurityAssessmentPropertiesBaseRiskPathsItem]]", + "default": null, + "param_type": "keyword_only" + }, + "is_contextual_risk": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "risk_factors": "Optional", + "level": "Optional", + "attack_paths_references": "Optional", + "paths": "Optional", + "is_contextual_risk": "Optional" + } + }, + "SecurityAssessmentPropertiesBaseRiskPathsItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "nodes": { + "type": "Optional[list[_models.SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem]]", + "default": null, + "param_type": "keyword_only" + }, + "edges": { + "type": "Optional[list[_models.SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional", + "nodes": "Optional", + "edges": "Optional" + } + }, + "SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "target_id": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "source_id": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": null, + "target_id": null, + "source_id": null + } + }, + "SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "node_properties_label": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional", + "node_properties_label": "Optional" + } + }, + "SecurityAssessmentPropertiesResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_details": { + "type": "_models.CommonResourceDetails", + "default": null, + "param_type": "keyword_only" + }, + "status": { + "type": "_models.AssessmentStatusResponse", + "default": null, + "param_type": "keyword_only" + }, + "risk": { + "type": "Optional[_models.SecurityAssessmentPropertiesBaseRisk]", + "default": null, + "param_type": "keyword_only" + }, + "additional_data": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "metadata": { + "type": "Optional[_models.SecurityAssessmentMetadataProperties]", + "default": null, + "param_type": "keyword_only" + }, + "partners_data": { + "type": "Optional[_models.SecurityAssessmentPartnerData]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_details": { + "type": "_models.CommonResourceDetails", + "default": null, + "param_type": "keyword_only" + }, + "risk": { + "type": "Optional[_models.SecurityAssessmentPropertiesBaseRisk]", + "default": null, + "param_type": "keyword_only" + }, + "additional_data": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "metadata": { + "type": "Optional[_models.SecurityAssessmentMetadataProperties]", + "default": null, + "param_type": "keyword_only" + }, + "partners_data": { + "type": "Optional[_models.SecurityAssessmentPartnerData]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "status": null, + "risk": "Optional", + "resource_details": null, + "display_name": "Optional", + "additional_data": "Optional", + "links": "Optional", + "metadata": "Optional", + "partners_data": "Optional" + } + }, + "SecurityAssessmentResponse": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SecurityAssessmentPropertiesResponse]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecurityConnector": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SecurityConnectorProperties]", + "default": null, + "param_type": "keyword_only" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "location": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "kind": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "etag": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "tags": "Optional", + "location": "Optional", + "kind": "Optional", + "etag": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecurityConnectorProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "hierarchy_identifier": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "environment_name": { + "type": "Optional[Union[str, _models.CloudName]]", + "default": null, + "param_type": "keyword_only" + }, + "offerings": { + "type": "Optional[list[_models.CloudOffering]]", + "default": null, + "param_type": "keyword_only" + }, + "environment_data": { + "type": "Optional[_models.EnvironmentData]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "hierarchy_identifier": "Optional", + "hierarchy_identifier_trial_end_date": "Optional", + "environment_name": "Optional", + "offerings": "Optional", + "environment_data": "Optional" + } + }, + "SecurityContact": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SecurityContactProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecurityContactName": { + "type": "Enum", + "methods": {}, + "properties": { + "DEFAULT": "DEFAULT", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SecurityContactProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "emails": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "phone": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "is_enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "notifications_sources": { + "type": "Optional[list[_models.NotificationsSource]]", + "default": null, + "param_type": "keyword_only" + }, + "notifications_by_role": { + "type": "Optional[_models.SecurityContactPropertiesNotificationsByRole]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "emails": "Optional", + "phone": "Optional", + "is_enabled": "Optional", + "notifications_sources": "Optional", + "notifications_by_role": "Optional" + } + }, + "SecurityContactPropertiesNotificationsByRole": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "state": { + "type": "Optional[Union[str, _models.State]]", + "default": null, + "param_type": "keyword_only" + }, + "roles": { + "type": "Optional[list[Union[str, _models.SecurityContactRole]]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "state": "Optional", + "roles": "Optional" + } + }, + "SecurityContactRole": { + "type": "Enum", + "methods": {}, + "properties": { + "ACCOUNT_ADMIN": "ACCOUNT_ADMIN", + "CONTRIBUTOR": "CONTRIBUTOR", + "OWNER": "OWNER", + "SERVICE_ADMIN": "SERVICE_ADMIN", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SecurityFamily": { + "type": "Enum", + "methods": {}, + "properties": { + "NGFW": "NGFW", + "SAAS_WAF": "SAAS_WAF", + "VA": "VA", + "WAF": "WAF", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SecurityIssue": { + "type": "Enum", + "methods": {}, + "properties": { + "ANONYMOUS_ACCESS": "ANONYMOUS_ACCESS", + "BEST_PRACTICES": "BEST_PRACTICES", + "EXCESSIVE_PERMISSIONS": "EXCESSIVE_PERMISSIONS", + "NETWORK_EXPOSURE": "NETWORK_EXPOSURE", + "TRAFFIC_ENCRYPTION": "TRAFFIC_ENCRYPTION", + "VULNERABILITY": "VULNERABILITY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SecurityOperator": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "identity": { + "type": "Optional[_models.Identity]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "identity": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecuritySolution": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SecuritySolutionProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "location": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecuritySolutionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "security_family": { + "type": "Union[str, _models.SecurityFamily]", + "default": null, + "param_type": "keyword_only" + }, + "provisioning_state": { + "type": "Union[str, _models.ProvisioningState]", + "default": null, + "param_type": "keyword_only" + }, + "template": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "protection_status": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "security_family": "Union", + "provisioning_state": "Union", + "template": null, + "protection_status": null + } + }, + "SecuritySolutionStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SecuritySolutionsReferenceData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "_models.SecuritySolutionsReferenceDataProperties", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional", + "location": "Optional", + "properties": null + } + }, + "SecuritySolutionsReferenceDataList": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "value": { + "type": "Optional[list[_models.SecuritySolutionsReferenceData]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "value": "Optional" + } + }, + "SecuritySolutionsReferenceDataProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "security_family": { + "type": "Union[str, _models.SecurityFamily]", + "default": null, + "param_type": "keyword_only" + }, + "alert_vendor_name": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "package_info_url": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "product_name": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "publisher": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "publisher_display_name": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "template": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "security_family": "Union", + "alert_vendor_name": null, + "package_info_url": null, + "product_name": null, + "publisher": null, + "publisher_display_name": null, + "template": null + } + }, + "SecurityStandard": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SecurityStandardProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecurityStandardProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "assessments": { + "type": "Optional[list[_models.PartialAssessmentProperties]]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_providers": { + "type": "Optional[list[Union[str, _models.StandardSupportedCloud]]]", + "default": null, + "param_type": "keyword_only" + }, + "policy_set_definition_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "metadata": { + "type": "Optional[_models.StandardMetadata]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": "Optional", + "standard_type": "Optional", + "description": "Optional", + "assessments": "Optional", + "cloud_providers": "Optional", + "policy_set_definition_id": "Optional", + "metadata": "Optional" + } + }, + "SecuritySubAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SecuritySubAssessmentProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecuritySubAssessmentProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "status": { + "type": "Optional[_models.SubAssessmentStatus]", + "default": null, + "param_type": "keyword_only" + }, + "resource_details": { + "type": "Optional[_models.CommonResourceDetails]", + "default": null, + "param_type": "keyword_only" + }, + "additional_data": { + "type": "Optional[_models.AdditionalData]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "id": "Optional", + "display_name": "Optional", + "status": "Optional", + "remediation": "Optional", + "impact": "Optional", + "category": "Optional", + "description": "Optional", + "time_generated": "Optional", + "resource_details": "Optional", + "additional_data": "Optional" + } + }, + "SecurityTask": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SecurityTaskProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SecurityTaskParameters": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "name": "Optional" + } + }, + "SecurityTaskProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "security_task_parameters": { + "type": "Optional[_models.SecurityTaskParameters]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "state": "Optional", + "creation_time_utc": "Optional", + "security_task_parameters": "Optional", + "last_state_change_time_utc": "Optional", + "sub_state": "Optional" + } + }, + "SensitiveDataDiscoveryProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "is_enabled": "Optional", + "operation_status": "Optional" + } + }, + "SensitivityLabel": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "rank": { + "type": "Optional[Union[str, _models.Rank]]", + "default": null, + "param_type": "keyword_only" + }, + "order": { + "type": "Optional[int]", + "default": null, + "param_type": "keyword_only" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": "Optional", + "description": "Optional", + "rank": "Optional", + "order": "Optional", + "enabled": "Optional" + } + }, + "ServerVulnerabilityAssessment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.ServerVulnerabilityAssessmentProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "ServerVulnerabilityAssessmentProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "provisioning_state": "Optional" + } + }, + "ServerVulnerabilityAssessmentPropertiesProvisioningState": { + "type": "Enum", + "methods": {}, + "properties": { + "CANCELED": "CANCELED", + "DEPROVISIONING": "DEPROVISIONING", + "FAILED": "FAILED", + "PROVISIONING": "PROVISIONING", + "SUCCEEDED": "SUCCEEDED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ServerVulnerabilityAssessmentsAzureSettingProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "selected_provider": { + "type": "Union[str, _models.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "selected_provider": "Union" + } + }, + "ServerVulnerabilityAssessmentsAzureSettingSelectedProvider": { + "type": "Enum", + "methods": {}, + "properties": { + "MDE_TVM": "MDE_TVM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ServerVulnerabilityAssessmentsSetting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "properties": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "kind": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "ServerVulnerabilityAssessmentsSettingKind": { + "type": "Enum", + "methods": {}, + "properties": { + "AZURE_SERVERS_SETTING": "AZURE_SERVERS_SETTING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ServerVulnerabilityAssessmentsSettingKindName": { + "type": "Enum", + "methods": {}, + "properties": { + "AZURE_SERVERS_SETTING": "AZURE_SERVERS_SETTING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ServerVulnerabilityProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessed_resource_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": "Optional", + "cvss": "Optional", + "patchable": "Optional", + "cve": "Optional", + "threat": "Optional", + "published_time": "Optional", + "vendor_references": "Optional", + "assessed_resource_type": null + } + }, + "Setting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "kind": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "properties": { + "type": "Optional[Any]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "kind": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SettingKind": { + "type": "Enum", + "methods": {}, + "properties": { + "ALERT_SUPPRESSION_SETTING": "ALERT_SUPPRESSION_SETTING", + "ALERT_SYNC_SETTINGS": "ALERT_SYNC_SETTINGS", + "DATA_EXPORT_SETTINGS": "DATA_EXPORT_SETTINGS", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SettingName": { + "type": "Enum", + "methods": {}, + "properties": { + "CURRENT": "CURRENT", + "MCAS": "MCAS", + "SENTINEL": "SENTINEL", + "WDATP": "WDATP", + "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW": "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", + "WDATP_UNIFIED_SOLUTION": "WDATP_UNIFIED_SOLUTION", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Severity": { + "type": "Enum", + "methods": {}, + "properties": { + "CRITICAL": "CRITICAL", + "HIGH": "HIGH", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SeverityEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "LOW": "LOW", + "MEDIUM": "MEDIUM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Source": { + "type": "Enum", + "methods": {}, + "properties": { + "AWS": "AWS", + "AZURE": "AZURE", + "GCP": "GCP", + "ON_PREMISE": "ON_PREMISE", + "ON_PREMISE_SQL": "ON_PREMISE_SQL", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SourceType": { + "type": "Enum", + "methods": {}, + "properties": { + "ALERT": "ALERT", + "ATTACK_PATH": "ATTACK_PATH", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SqlServerVulnerabilityProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessed_resource_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "type": "Optional", + "query": "Optional", + "assessed_resource_type": null + } + }, + "SqlVulnerabilityAssessmentScanOperationResult": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SqlVulnerabilityAssessmentScanOperationResultProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SqlVulnerabilityAssessmentScanOperationResultProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "scan_status": { + "type": "Optional[Union[str, _models.ScanOperationStatus]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "operation_id": "Optional", + "scan_status": "Optional" + } + }, + "SqlVulnerabilityAssessmentSettings": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.SqlVulnerabilityAssessmentSettingsProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "SqlVulnerabilityAssessmentSettingsProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "state": { + "type": "Optional[Union[str, _models.SqlVulnerabilityAssessmentState]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "creation_time": "Optional", + "state": "Optional" + } + }, + "SqlVulnerabilityAssessmentState": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Standard": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.StandardProperties]", + "default": null, + "param_type": "keyword_only" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "location": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "kind": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "etag": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "tags": "Optional", + "location": "Optional", + "kind": "Optional", + "etag": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "StandardAssignment": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.StandardAssignmentProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "StandardAssignmentMetadata": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "created_by": "Optional", + "created_on": "Optional", + "last_updated_by": "Optional", + "last_updated_on": "Optional" + } + }, + "StandardAssignmentProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "assigned_standard": { + "type": "Optional[_models.AssignedStandardItem]", + "default": null, + "param_type": "keyword_only" + }, + "effect": { + "type": "Optional[Union[str, _models.Effect]]", + "default": null, + "param_type": "keyword_only" + }, + "excluded_scopes": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "expires_on": { + "type": "Optional[datetime]", + "default": null, + "param_type": "keyword_only" + }, + "exemption_data": { + "type": "Optional[_models.StandardAssignmentPropertiesExemptionData]", + "default": null, + "param_type": "keyword_only" + }, + "attestation_data": { + "type": "Optional[_models.StandardAssignmentPropertiesAttestationData]", + "default": null, + "param_type": "keyword_only" + }, + "metadata": { + "type": "Optional[_models.StandardAssignmentMetadata]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": "Optional", + "description": "Optional", + "assigned_standard": "Optional", + "effect": "Optional", + "excluded_scopes": "Optional", + "expires_on": "Optional", + "exemption_data": "Optional", + "attestation_data": "Optional", + "metadata": "Optional" + } + }, + "StandardAssignmentPropertiesAttestationData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "compliance_state": { + "type": "Optional[Union[str, _models.AttestationComplianceState]]", + "default": null, + "param_type": "keyword_only" + }, + "assigned_assessment": { + "type": "Optional[_models.AssignedAssessmentItem]", + "default": null, + "param_type": "keyword_only" + }, + "evidence": { + "type": "Optional[list[_models.AttestationEvidence]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "compliance_state": "Optional", + "assigned_assessment": "Optional", + "compliance_date": "Optional", + "evidence": "Optional" + } + }, + "StandardAssignmentPropertiesExemptionData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "exemption_category": { + "type": "Optional[Union[str, _models.ExemptionCategory]]", + "default": null, + "param_type": "keyword_only" + }, + "assigned_assessment": { + "type": "Optional[_models.AssignedAssessmentItem]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "exemption_category": "Optional", + "assigned_assessment": "Optional" + } + }, + "StandardComponentProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "key": "Optional" + } + }, + "StandardMetadata": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "created_by": "Optional", + "created_on": "Optional", + "last_updated_by": "Optional", + "last_updated_on": "Optional" + } + }, + "StandardProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "display_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "category": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "components": { + "type": "Optional[list[_models.StandardComponentProperties]]", + "default": null, + "param_type": "keyword_only" + }, + "supported_clouds": { + "type": "Optional[list[Union[str, _models.StandardSupportedClouds]]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "display_name": "Optional", + "standard_type": "Optional", + "description": "Optional", + "category": "Optional", + "components": "Optional", + "supported_clouds": "Optional" + } + }, + "StandardSupportedCloud": { + "type": "Enum", + "methods": {}, + "properties": { + "AWS": "AWS", + "AZURE": "AZURE", + "GCP": "GCP", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "StandardSupportedClouds": { + "type": "Enum", + "methods": {}, + "properties": { + "AWS": "AWS", + "GCP": "GCP", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "StandardType": { + "type": "Enum", + "methods": {}, + "properties": { + "COMPLIANCE": "COMPLIANCE", + "CUSTOM": "CUSTOM", + "DEFAULT": "DEFAULT", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "State": { + "type": "Enum", + "methods": {}, + "properties": { + "FAILED": "FAILED", + "OFF": "OFF", + "ON": "ON", + "PASSED": "PASSED", + "SKIPPED": "SKIPPED", + "UNSUPPORTED": "UNSUPPORTED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "StatusAutoGenerated": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "code": { + "type": "Optional[Union[str, _models.StatusName]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": "Optional", + "reason": "Optional", + "last_scanned_date": "Optional", + "status_change_date": "Optional", + "first_evaluation_date": "Optional" + } + }, + "StatusEnum": { + "type": "Enum", + "methods": {}, + "properties": { + "INITIATED": "INITIATED", + "REVOKED": "REVOKED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "StatusName": { + "type": "Enum", + "methods": {}, + "properties": { + "HEALTHY": "HEALTHY", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "NOT_HEALTHY": "NOT_HEALTHY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "StatusReason": { + "type": "Enum", + "methods": {}, + "properties": { + "EXPIRED": "EXPIRED", + "NEWER_REQUEST_INITIATED": "NEWER_REQUEST_INITIATED", + "USER_REQUESTED": "USER_REQUESTED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SubAssessmentStatus": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "code": "Optional", + "cause": "Optional", + "description": "Optional", + "severity": "Optional" + } + }, + "SubAssessmentStatusCode": { + "type": "Enum", + "methods": {}, + "properties": { + "HEALTHY": "HEALTHY", + "NOT_APPLICABLE": "NOT_APPLICABLE", + "UNHEALTHY": "UNHEALTHY", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SubPlan": { + "type": "Enum", + "methods": {}, + "properties": { + "P1": "P1", + "P2": "P2", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "SuppressionAlertsScope": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "all_of": { + "type": "list[_models.ScopeElement]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "all_of": "list" + } + }, + "SystemData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "created_by": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "created_by_type": { + "type": "Optional[Union[str, _models.CreatedByType]]", + "default": null, + "param_type": "keyword_only" + }, + "created_at": { + "type": "Optional[datetime]", + "default": null, + "param_type": "keyword_only" + }, + "last_modified_by": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "last_modified_by_type": { + "type": "Optional[Union[str, _models.CreatedByType]]", + "default": null, + "param_type": "keyword_only" + }, + "last_modified_at": { + "type": "Optional[datetime]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "created_by": "Optional", + "created_by_type": "Optional", + "created_at": "Optional", + "last_modified_by": "Optional", + "last_modified_by_type": "Optional", + "last_modified_at": "Optional" + } + }, + "Tactics": { + "type": "Enum", + "methods": {}, + "properties": { + "COLLECTION": "COLLECTION", + "COMMAND_AND_CONTROL": "COMMAND_AND_CONTROL", + "CREDENTIAL_ACCESS": "CREDENTIAL_ACCESS", + "DEFENSE_EVASION": "DEFENSE_EVASION", + "DISCOVERY": "DISCOVERY", + "EXECUTION": "EXECUTION", + "EXFILTRATION": "EXFILTRATION", + "IMPACT": "IMPACT", + "INITIAL_ACCESS": "INITIAL_ACCESS", + "LATERAL_MOVEMENT": "LATERAL_MOVEMENT", + "PERSISTENCE": "PERSISTENCE", + "PRIVILEGE_ESCALATION": "PRIVILEGE_ESCALATION", + "RECONNAISSANCE": "RECONNAISSANCE", + "RESOURCE_DEVELOPMENT": "RESOURCE_DEVELOPMENT", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Tags": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tags": "Optional" + } + }, + "TagsResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tags": "Optional" + } + }, + "TargetBranchConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "branch_names": { + "type": "Optional[list[str]]", + "default": null, + "param_type": "keyword_only" + }, + "annotate_default_branch": { + "type": "Optional[Union[str, _models.AnnotateDefaultBranchState]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "branch_names": "Optional", + "annotate_default_branch": "Optional" + } + }, + "TaskUpdateActionType": { + "type": "Enum", + "methods": {}, + "properties": { + "ACTIVATE": "ACTIVATE", + "CLOSE": "CLOSE", + "DISMISS": "DISMISS", + "RESOLVE": "RESOLVE", + "START": "START", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Techniques": { + "type": "Enum", + "methods": {}, + "properties": { + "ABUSE_ELEVATION_CONTROL_MECHANISM": "ABUSE_ELEVATION_CONTROL_MECHANISM", + "ACCESS_TOKEN_MANIPULATION": "ACCESS_TOKEN_MANIPULATION", + "ACCOUNT_DISCOVERY": "ACCOUNT_DISCOVERY", + "ACCOUNT_MANIPULATION": "ACCOUNT_MANIPULATION", + "ACTIVE_SCANNING": "ACTIVE_SCANNING", + "APPLICATION_LAYER_PROTOCOL": "APPLICATION_LAYER_PROTOCOL", + "AUDIO_CAPTURE": "AUDIO_CAPTURE", + "BOOT_OR_LOGON_AUTOSTART_EXECUTION": "BOOT_OR_LOGON_AUTOSTART_EXECUTION", + "BOOT_OR_LOGON_INITIALIZATION_SCRIPTS": "BOOT_OR_LOGON_INITIALIZATION_SCRIPTS", + "BRUTE_FORCE": "BRUTE_FORCE", + "CLOUD_INFRASTRUCTURE_DISCOVERY": "CLOUD_INFRASTRUCTURE_DISCOVERY", + "CLOUD_SERVICE_DASHBOARD": "CLOUD_SERVICE_DASHBOARD", + "CLOUD_SERVICE_DISCOVERY": "CLOUD_SERVICE_DISCOVERY", + "COMMAND_AND_SCRIPTING_INTERPRETER": "COMMAND_AND_SCRIPTING_INTERPRETER", + "COMPROMISE_CLIENT_SOFTWARE_BINARY": "COMPROMISE_CLIENT_SOFTWARE_BINARY", + "COMPROMISE_INFRASTRUCTURE": "COMPROMISE_INFRASTRUCTURE", + "CONTAINER_AND_RESOURCE_DISCOVERY": "CONTAINER_AND_RESOURCE_DISCOVERY", + "CREATE_ACCOUNT": "CREATE_ACCOUNT", + "CREATE_OR_MODIFY_SYSTEM_PROCESS": "CREATE_OR_MODIFY_SYSTEM_PROCESS", + "CREDENTIALS_FROM_PASSWORD_STORES": "CREDENTIALS_FROM_PASSWORD_STORES", + "DATA_DESTRUCTION": "DATA_DESTRUCTION", + "DATA_ENCRYPTED_FOR_IMPACT": "DATA_ENCRYPTED_FOR_IMPACT", + "DATA_FROM_CLOUD_STORAGE_OBJECT": "DATA_FROM_CLOUD_STORAGE_OBJECT", + "DATA_FROM_CONFIGURATION_REPOSITORY": "DATA_FROM_CONFIGURATION_REPOSITORY", + "DATA_FROM_INFORMATION_REPOSITORIES": "DATA_FROM_INFORMATION_REPOSITORIES", + "DATA_FROM_LOCAL_SYSTEM": "DATA_FROM_LOCAL_SYSTEM", + "DATA_MANIPULATION": "DATA_MANIPULATION", + "DATA_STAGED": "DATA_STAGED", + "DEFACEMENT": "DEFACEMENT", + "DEOBFUSCATE_DECODE_FILES_OR_INFORMATION": "DEOBFUSCATE_DECODE_FILES_OR_INFORMATION", + "DISK_WIPE": "DISK_WIPE", + "DOMAIN_TRUST_DISCOVERY": "DOMAIN_TRUST_DISCOVERY", + "DRIVE_BY_COMPROMISE": "DRIVE_BY_COMPROMISE", + "DYNAMIC_RESOLUTION": "DYNAMIC_RESOLUTION", + "ENDPOINT_DENIAL_OF_SERVICE": "ENDPOINT_DENIAL_OF_SERVICE", + "EVENT_TRIGGERED_EXECUTION": "EVENT_TRIGGERED_EXECUTION", + "EXFILTRATION_OVER_ALTERNATIVE_PROTOCOL": "EXFILTRATION_OVER_ALTERNATIVE_PROTOCOL", + "EXPLOITATION_FOR_CLIENT_EXECUTION": "EXPLOITATION_FOR_CLIENT_EXECUTION", + "EXPLOITATION_FOR_CREDENTIAL_ACCESS": "EXPLOITATION_FOR_CREDENTIAL_ACCESS", + "EXPLOITATION_FOR_DEFENSE_EVASION": "EXPLOITATION_FOR_DEFENSE_EVASION", + "EXPLOITATION_FOR_PRIVILEGE_ESCALATION": "EXPLOITATION_FOR_PRIVILEGE_ESCALATION", + "EXPLOITATION_OF_REMOTE_SERVICES": "EXPLOITATION_OF_REMOTE_SERVICES", + "EXPLOIT_PUBLIC_FACING_APPLICATION": "EXPLOIT_PUBLIC_FACING_APPLICATION", + "EXTERNAL_REMOTE_SERVICES": "EXTERNAL_REMOTE_SERVICES", + "FALLBACK_CHANNELS": "FALLBACK_CHANNELS", + "FILE_AND_DIRECTORY_DISCOVERY": "FILE_AND_DIRECTORY_DISCOVERY", + "FILE_AND_DIRECTORY_PERMISSIONS_MODIFICATION": "FILE_AND_DIRECTORY_PERMISSIONS_MODIFICATION", + "GATHER_VICTIM_NETWORK_INFORMATION": "GATHER_VICTIM_NETWORK_INFORMATION", + "HIDE_ARTIFACTS": "HIDE_ARTIFACTS", + "HIJACK_EXECUTION_FLOW": "HIJACK_EXECUTION_FLOW", + "IMPAIR_DEFENSES": "IMPAIR_DEFENSES", + "IMPLANT_CONTAINER_IMAGE": "IMPLANT_CONTAINER_IMAGE", + "INDICATOR_REMOVAL_ON_HOST": "INDICATOR_REMOVAL_ON_HOST", + "INDIRECT_COMMAND_EXECUTION": "INDIRECT_COMMAND_EXECUTION", + "INGRESS_TOOL_TRANSFER": "INGRESS_TOOL_TRANSFER", + "INPUT_CAPTURE": "INPUT_CAPTURE", + "INTER_PROCESS_COMMUNICATION": "INTER_PROCESS_COMMUNICATION", + "LATERAL_TOOL_TRANSFER": "LATERAL_TOOL_TRANSFER", + "MAN_IN_THE_MIDDLE": "MAN_IN_THE_MIDDLE", + "MASQUERADING": "MASQUERADING", + "MODIFY_AUTHENTICATION_PROCESS": "MODIFY_AUTHENTICATION_PROCESS", + "MODIFY_REGISTRY": "MODIFY_REGISTRY", + "NETWORK_DENIAL_OF_SERVICE": "NETWORK_DENIAL_OF_SERVICE", + "NETWORK_SERVICE_SCANNING": "NETWORK_SERVICE_SCANNING", + "NETWORK_SNIFFING": "NETWORK_SNIFFING", + "NON_APPLICATION_LAYER_PROTOCOL": "NON_APPLICATION_LAYER_PROTOCOL", + "NON_STANDARD_PORT": "NON_STANDARD_PORT", + "OBFUSCATED_FILES_OR_INFORMATION": "OBFUSCATED_FILES_OR_INFORMATION", + "OBTAIN_CAPABILITIES": "OBTAIN_CAPABILITIES", + "OFFICE_APPLICATION_STARTUP": "OFFICE_APPLICATION_STARTUP", + "OS_CREDENTIAL_DUMPING": "OS_CREDENTIAL_DUMPING", + "PERMISSION_GROUPS_DISCOVERY": "PERMISSION_GROUPS_DISCOVERY", + "PHISHING": "PHISHING", + "PRE_OS_BOOT": "PRE_OS_BOOT", + "PROCESS_DISCOVERY": "PROCESS_DISCOVERY", + "PROCESS_INJECTION": "PROCESS_INJECTION", + "PROTOCOL_TUNNELING": "PROTOCOL_TUNNELING", + "PROXY": "PROXY", + "QUERY_REGISTRY": "QUERY_REGISTRY", + "REMOTE_ACCESS_SOFTWARE": "REMOTE_ACCESS_SOFTWARE", + "REMOTE_SERVICES": "REMOTE_SERVICES", + "REMOTE_SERVICE_SESSION_HIJACKING": "REMOTE_SERVICE_SESSION_HIJACKING", + "REMOTE_SYSTEM_DISCOVERY": "REMOTE_SYSTEM_DISCOVERY", + "RESOURCE_HIJACKING": "RESOURCE_HIJACKING", + "SCHEDULED_TASK_JOB": "SCHEDULED_TASK_JOB", + "SCREEN_CAPTURE": "SCREEN_CAPTURE", + "SEARCH_VICTIM_OWNED_WEBSITES": "SEARCH_VICTIM_OWNED_WEBSITES", + "SERVER_SOFTWARE_COMPONENT": "SERVER_SOFTWARE_COMPONENT", + "SERVICE_STOP": "SERVICE_STOP", + "SIGNED_BINARY_PROXY_EXECUTION": "SIGNED_BINARY_PROXY_EXECUTION", + "SOFTWARE_DEPLOYMENT_TOOLS": "SOFTWARE_DEPLOYMENT_TOOLS", + "SQL_STORED_PROCEDURES": "SQL_STORED_PROCEDURES", + "STEAL_OR_FORGE_KERBEROS_TICKETS": "STEAL_OR_FORGE_KERBEROS_TICKETS", + "SUBVERT_TRUST_CONTROLS": "SUBVERT_TRUST_CONTROLS", + "SUPPLY_CHAIN_COMPROMISE": "SUPPLY_CHAIN_COMPROMISE", + "SYSTEM_INFORMATION_DISCOVERY": "SYSTEM_INFORMATION_DISCOVERY", + "TAINT_SHARED_CONTENT": "TAINT_SHARED_CONTENT", + "TRAFFIC_SIGNALING": "TRAFFIC_SIGNALING", + "TRANSFER_DATA_TO_CLOUD_ACCOUNT": "TRANSFER_DATA_TO_CLOUD_ACCOUNT", + "TRUSTED_RELATIONSHIP": "TRUSTED_RELATIONSHIP", + "UNSECURED_CREDENTIALS": "UNSECURED_CREDENTIALS", + "USER_EXECUTION": "USER_EXECUTION", + "VALID_ACCOUNTS": "VALID_ACCOUNTS", + "WINDOWS_MANAGEMENT_INSTRUMENTATION": "WINDOWS_MANAGEMENT_INSTRUMENTATION", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "Threats": { + "type": "Enum", + "methods": {}, + "properties": { + "ACCOUNT_BREACH": "ACCOUNT_BREACH", + "DATA_EXFILTRATION": "DATA_EXFILTRATION", + "DATA_SPILLAGE": "DATA_SPILLAGE", + "DENIAL_OF_SERVICE": "DENIAL_OF_SERVICE", + "ELEVATION_OF_PRIVILEGE": "ELEVATION_OF_PRIVILEGE", + "MALICIOUS_INSIDER": "MALICIOUS_INSIDER", + "MISSING_COVERAGE": "MISSING_COVERAGE", + "THREAT_RESISTANCE": "THREAT_RESISTANCE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "ThresholdCustomAlertRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "type": "int", + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "type": "int", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + }, + "rule_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "min_threshold": null, + "max_threshold": null, + "rule_type": null, + "display_name": "Optional", + "description": "Optional", + "is_enabled": null + } + }, + "TimeWindowCustomAlertRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + }, + "min_threshold": { + "type": "int", + "default": null, + "param_type": "keyword_only" + }, + "max_threshold": { + "type": "int", + "default": null, + "param_type": "keyword_only" + }, + "time_window_size": { + "type": "timedelta", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "is_enabled": { + "type": "bool", + "default": null, + "param_type": "keyword_only" + }, + "rule_type": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "min_threshold": null, + "max_threshold": null, + "time_window_size": "datetime", + "rule_type": null, + "display_name": "Optional", + "description": "Optional", + "is_enabled": null + } + }, + "TopologyResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "location": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "TopologyResourceProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "calculated_date_time": "Optional", + "topology_resources": "Optional" + } + }, + "TopologySingleResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "resource_id": "Optional", + "severity": "Optional", + "recommendations_exist": "Optional", + "network_zones": "Optional", + "topology_score": "Optional", + "location": "Optional", + "parents": "Optional", + "children": "Optional" + } + }, + "TopologySingleResourceChild": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "resource_id": "Optional" + } + }, + "TopologySingleResourceParent": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "resource_id": "Optional" + } + }, + "TrackedResource": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "tags": "Optional", + "location": null, + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "Type": { + "type": "Enum", + "methods": {}, + "properties": { + "QUALYS": "QUALYS", + "TVM": "TVM", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "UnmaskedIpLoggingStatus": { + "type": "Enum", + "methods": {}, + "properties": { + "DISABLED": "DISABLED", + "ENABLED": "ENABLED", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "UpdateIoTSecuritySolutionProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "user_defined_resources": { + "type": "Optional[_models.UserDefinedResourcesProperties]", + "default": null, + "param_type": "keyword_only" + }, + "recommendations_configuration": { + "type": "Optional[list[_models.RecommendationConfigurationProperties]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "user_defined_resources": "Optional", + "recommendations_configuration": "Optional" + } + }, + "UpdateIotSecuritySolutionData": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + }, + "properties": { + "type": "Optional[_models.UpdateIoTSecuritySolutionProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "tags": "Optional" + } + }, + "UpdateSensitivitySettingsRequest": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitive_info_types_ids": { + "type": "list[str]", + "default": null, + "param_type": "keyword_only" + }, + "sensitivity_threshold_label_order": { + "type": "Optional[float]", + "default": null, + "param_type": "keyword_only" + }, + "sensitivity_threshold_label_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "sensitive_info_types_ids": "list", + "sensitivity_threshold_label_order": "Optional", + "sensitivity_threshold_label_id": "Optional" + } + }, + "UserDefinedResourcesProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "query": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "query_subscriptions": { + "type": "list[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "query": null, + "query_subscriptions": "list" + } + }, + "UserImpact": { + "type": "Enum", + "methods": {}, + "properties": { + "HIGH": "HIGH", + "LOW": "LOW", + "MODERATE": "MODERATE", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "VaRule": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "severity": { + "type": "Optional[Union[str, _models.RuleSeverity]]", + "default": null, + "param_type": "keyword_only" + }, + "category": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "rule_type": { + "type": "Optional[Union[str, _models.RuleType]]", + "default": null, + "param_type": "keyword_only" + }, + "title": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "description": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "rationale": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "query_check": { + "type": "Optional[_models.QueryCheck]", + "default": null, + "param_type": "keyword_only" + }, + "benchmark_references": { + "type": "Optional[list[_models.BenchmarkReference]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "rule_id": "Optional", + "severity": "Optional", + "category": "Optional", + "rule_type": "Optional", + "title": "Optional", + "description": "Optional", + "rationale": "Optional", + "query_check": "Optional", + "benchmark_references": "Optional" + } + }, + "ValueType": { + "type": "Enum", + "methods": {}, + "properties": { + "IP_CIDR": "IP_CIDR", + "STRING": "STRING", + "capitalize": "capitalize", + "casefold": "casefold", + "center": "center", + "count": "count", + "encode": "encode", + "endswith": "endswith", + "expandtabs": "expandtabs", + "find": "find", + "format": "format", + "format_map": "format_map", + "index": "index", + "isalnum": "isalnum", + "isalpha": "isalpha", + "isascii": "isascii", + "isdecimal": "isdecimal", + "isdigit": "isdigit", + "isidentifier": "isidentifier", + "islower": "islower", + "isnumeric": "isnumeric", + "isprintable": "isprintable", + "isspace": "isspace", + "istitle": "istitle", + "isupper": "isupper", + "join": "join", + "ljust": "ljust", + "lower": "lower", + "lstrip": "lstrip", + "maketrans": "maketrans", + "partition": "partition", + "removeprefix": "removeprefix", + "removesuffix": "removesuffix", + "replace": "replace", + "rfind": "rfind", + "rindex": "rindex", + "rjust": "rjust", + "rpartition": "rpartition", + "rsplit": "rsplit", + "rstrip": "rstrip", + "split": "split", + "splitlines": "splitlines", + "startswith": "startswith", + "strip": "strip", + "swapcase": "swapcase", + "title": "title", + "translate": "translate", + "upper": "upper", + "zfill": "zfill" + } + }, + "VendorReference": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "title": "Optional", + "link": "Optional" + } + }, + "VmScannersAws": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + }, + "cloud_role_arn": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "cloud_role_arn": "Optional", + "enabled": "Optional", + "configuration": "Optional" + } + }, + "VmScannersBase": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "VmScannersBaseConfiguration": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scanning_mode": { + "type": "Optional[Union[str, _models.ScanningMode]]", + "default": null, + "param_type": "keyword_only" + }, + "exclusion_tags": { + "type": "Optional[dict[str, str]]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "scanning_mode": "Optional", + "exclusion_tags": "Optional" + } + }, + "VmScannersGcp": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "enabled": { + "type": "Optional[bool]", + "default": null, + "param_type": "keyword_only" + }, + "configuration": { + "type": "Optional[_models.VmScannersBaseConfiguration]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "enabled": "Optional", + "configuration": "Optional" + } + }, + "WorkspaceSetting": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "properties": { + "type": "Optional[_models.WorkspaceSettingProperties]", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "properties": "Optional", + "id": "Optional", + "name": "Optional", + "type": "Optional", + "system_data": "Optional" + } + }, + "WorkspaceSettingProperties": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_id": { + "type": "str", + "default": null, + "param_type": "keyword_only" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "keyword_only" + } + }, + "is_async": false, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "mapping": { + "type": "Mapping[str, Any]", + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "return_type": null + } + ] + }, + "as_dict": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "exclude_readonly": { + "default": "bool", + "param_type": "keyword_only" + } + }, + "is_async": false, + "overloads": [] + }, + "clear": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "copy": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "none", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "items": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "keys": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "pop": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "popitem": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "setdefault": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "default": { + "default": "object", + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "values": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "workspace_id": null, + "scope": null + } + } + }, + "function_nodes": {} + }, + "azure.mgmt.security.aio": { + "class_nodes": { + "SecurityManagementClient": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "credential": { + "default": null, + "param_type": "positional_or_keyword" + }, + "subscription_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "base_url": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "cloud_setting": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "close": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "send_request": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "request": { + "default": null, + "param_type": "positional_or_keyword" + }, + "stream": { + "default": "bool", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": { + "client_side_validation": { + "attr_type": false + }, + "alerts": { + "attr_type": "AlertsOperations" + }, + "alerts_suppression_rules": { + "attr_type": "AlertsSuppressionRulesOperations" + }, + "applications": { + "attr_type": "ApplicationsOperations" + }, + "security_connector_application": { + "attr_type": "SecurityConnectorApplicationOperations" + }, + "assessments_metadata": { + "attr_type": "AssessmentsMetadataOperations" + }, + "automations": { + "attr_type": "AutomationsOperations" + }, + "security_contacts": { + "attr_type": "SecurityContactsOperations" + }, + "compliance_results": { + "attr_type": "ComplianceResultsOperations" + }, + "governance_assignments": { + "attr_type": "GovernanceAssignmentsOperations" + }, + "governance_rules": { + "attr_type": "GovernanceRulesOperations" + }, + "health_reports": { + "attr_type": "HealthReportsOperations" + }, + "device_security_groups": { + "attr_type": "DeviceSecurityGroupsOperations" + }, + "auto_provisioning_settings": { + "attr_type": "AutoProvisioningSettingsOperations" + }, + "compliances": { + "attr_type": "CompliancesOperations" + }, + "information_protection_policies": { + "attr_type": "InformationProtectionPoliciesOperations" + }, + "workspace_settings": { + "attr_type": "WorkspaceSettingsOperations" + }, + "mde_onboardings": { + "attr_type": "MdeOnboardingsOperations" + }, + "operations": { + "attr_type": "Operations" + }, + "pricings": { + "attr_type": "PricingsOperations" + }, + "private_link_resources": { + "attr_type": "PrivateLinkResourcesOperations" + }, + "private_endpoint_connections": { + "attr_type": "PrivateEndpointConnectionsOperations" + }, + "regulatory_compliance_standards": { + "attr_type": "RegulatoryComplianceStandardsOperations" + }, + "regulatory_compliance_controls": { + "attr_type": "RegulatoryComplianceControlsOperations" + }, + "regulatory_compliance_assessments": { + "attr_type": "RegulatoryComplianceAssessmentsOperations" + }, + "security_connectors": { + "attr_type": "SecurityConnectorsOperations" + }, + "azure_dev_ops_orgs": { + "attr_type": "AzureDevOpsOrgsOperations" + }, + "git_hub_owners": { + "attr_type": "GitHubOwnersOperations" + }, + "git_lab_groups": { + "attr_type": "GitLabGroupsOperations" + }, + "dev_ops_configurations": { + "attr_type": "DevOpsConfigurationsOperations" + }, + "azure_dev_ops_projects": { + "attr_type": "AzureDevOpsProjectsOperations" + }, + "git_lab_projects": { + "attr_type": "GitLabProjectsOperations" + }, + "security_operators": { + "attr_type": "SecurityOperatorsOperations" + }, + "discovered_security_solutions": { + "attr_type": "DiscoveredSecuritySolutionsOperations" + }, + "external_security_solutions": { + "attr_type": "ExternalSecuritySolutionsOperations" + }, + "jit_network_access_policies": { + "attr_type": "JitNetworkAccessPoliciesOperations" + }, + "security_solutions": { + "attr_type": "SecuritySolutionsOperations" + }, + "security_standards": { + "attr_type": "SecurityStandardsOperations" + }, + "standard_assignments": { + "attr_type": "StandardAssignmentsOperations" + }, + "custom_recommendations": { + "attr_type": "CustomRecommendationsOperations" + }, + "server_vulnerability_assessments_settings": { + "attr_type": "ServerVulnerabilityAssessmentsSettingsOperations" + }, + "settings": { + "attr_type": "SettingsOperations" + }, + "sql_vulnerability_assessment_baseline_rules": { + "attr_type": "SqlVulnerabilityAssessmentBaselineRulesOperations" + }, + "sql_vulnerability_assessment_scan_results": { + "attr_type": "SqlVulnerabilityAssessmentScanResultsOperations" + }, + "standards": { + "attr_type": "StandardsOperations" + }, + "assignments": { + "attr_type": "AssignmentsOperations" + }, + "tasks": { + "attr_type": "TasksOperations" + }, + "api_collections": { + "attr_type": "APICollectionsOperations" + }, + "application": { + "attr_type": "ApplicationOperations" + }, + "security_connector_applications": { + "attr_type": "SecurityConnectorApplicationsOperations" + }, + "assessments": { + "attr_type": "AssessmentsOperations" + }, + "advanced_threat_protection": { + "attr_type": "AdvancedThreatProtectionOperations" + }, + "defender_for_storage": { + "attr_type": "DefenderForStorageOperations" + }, + "iot_security_solution_analytics": { + "attr_type": "IotSecuritySolutionAnalyticsOperations" + }, + "iot_security_solution": { + "attr_type": "IotSecuritySolutionOperations" + }, + "iot_security_solutions_analytics_aggregated_alert": { + "attr_type": "IotSecuritySolutionsAnalyticsAggregatedAlertOperations" + }, + "iot_security_solutions_analytics_recommendation": { + "attr_type": "IotSecuritySolutionsAnalyticsRecommendationOperations" + }, + "locations": { + "attr_type": "LocationsOperations" + }, + "operation_results": { + "attr_type": "OperationResultsOperations" + }, + "operation_statuses": { + "attr_type": "OperationStatusesOperations" + }, + "private_links": { + "attr_type": "PrivateLinksOperations" + }, + "secure_scores": { + "attr_type": "SecureScoresOperations" + }, + "secure_score_controls": { + "attr_type": "SecureScoreControlsOperations" + }, + "secure_score_control_definitions": { + "attr_type": "SecureScoreControlDefinitionsOperations" + }, + "git_lab_subgroups": { + "attr_type": "GitLabSubgroupsOperations" + }, + "dev_ops_operation_results": { + "attr_type": "DevOpsOperationResultsOperations" + }, + "azure_dev_ops_repos": { + "attr_type": "AzureDevOpsReposOperations" + }, + "git_hub_repos": { + "attr_type": "GitHubReposOperations" + }, + "git_hub_issues": { + "attr_type": "GitHubIssuesOperations" + }, + "allowed_connections": { + "attr_type": "AllowedConnectionsOperations" + }, + "server_vulnerability_assessment": { + "attr_type": "ServerVulnerabilityAssessmentOperations" + }, + "topology": { + "attr_type": "TopologyOperations" + }, + "security_solutions_reference_data": { + "attr_type": "SecuritySolutionsReferenceDataOperations" + }, + "sensitivity_settings": { + "attr_type": "SensitivitySettingsOperations" + }, + "sql_vulnerability_assessment_settings": { + "attr_type": "SqlVulnerabilityAssessmentSettingsOperations" + }, + "sql_vulnerability_assessment_scans": { + "attr_type": "SqlVulnerabilityAssessmentScansOperations" + }, + "sub_assessments": { + "attr_type": "SubAssessmentsOperations" + } + } + } + }, + "function_nodes": {} + }, + "azure.mgmt.security.aio.operations": { + "class_nodes": { + "APICollectionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_onboard_azure_api_management_api": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "api_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get_by_azure_api_management_service": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "api_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list_by_azure_api_management_service": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "offboard_azure_api_management_api": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "service_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "api_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "AdvancedThreatProtectionOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "type": "AdvancedThreatProtectionSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "advanced_threat_protection_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "AlertsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_simulate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "type": "AlertSimulatorRequestBody", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_simulator_request_body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get_resource_group_level": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get_subscription_level": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_resource_group_level_by_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_subscription_level_by_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_state_to_activate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_resource_group_level_state_to_dismiss": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_resource_group_level_state_to_in_progress": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_resource_group_level_state_to_resolve": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_subscription_level_state_to_activate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_subscription_level_state_to_dismiss": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_subscription_level_state_to_in_progress": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_subscription_level_state_to_resolve": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "AlertsSuppressionRulesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alert_type": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "type": "AlertsSuppressionRule", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "alerts_suppression_rule": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "AllowedConnectionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "connection_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ApplicationOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "Application", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "ApplicationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AssessmentsMetadataOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_in_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "type": "SecurityAssessmentMetadataResponse", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete_in_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get_in_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_metadata_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AssessmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "type": "SecurityAssessment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expand": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AssignmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "type": "Assignment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AutoProvisioningSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "AutoProvisioningSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AutomationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "Automation", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "AutomationUpdateModel", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "validate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "Automation", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "automation": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "AzureDevOpsOrgsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "AzureDevOpsOrg", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "AzureDevOpsOrg", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_org": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_available": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "AzureDevOpsProjectsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "AzureDevOpsProject", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "AzureDevOpsProject", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_project": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "AzureDevOpsReposOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "AzureDevOpsRepository", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "AzureDevOpsRepository", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "azure_dev_ops_repository": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "org_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ComplianceResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "compliance_result_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "CompliancesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "compliance_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "CustomRecommendationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "type": "CustomRecommendation", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "custom_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DefenderForStorageOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "cancel_malware_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "type": "DefenderForStorageSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "defender_for_storage_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get_malware_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "start_malware_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "DevOpsConfigurationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "DevOpsConfiguration", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "begin_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "DevOpsConfiguration", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "dev_ops_configuration": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DevOpsOperationResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_result_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "DeviceSecurityGroupsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "type": "DeviceSecurityGroup", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "device_security_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "DiscoveredSecuritySolutionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "discovered_security_solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ExternalSecuritySolutionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "external_security_solutions_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitHubIssuesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "type": "Optional[IssueCreationRequest]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "type": "Optional[JSON]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "create_issue_request": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "GitHubOwnersOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_available": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "GitHubReposOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "repo_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "owner_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitLabGroupsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_available": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "GitLabProjectsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "project_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GitLabSubgroupsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_fq_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "GovernanceAssignmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "type": "GovernanceAssignment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_assignment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assignment_key": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "GovernanceRulesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "begin_execute": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "type": "Optional[ExecuteGovernanceRuleParams]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "type": "Optional[JSON]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "execute_governance_rule_params": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "type": "GovernanceRule", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "governance_rule": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "operation_results": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "HealthReportsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "health_report_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "InformationProtectionPoliciesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "type": "Union[str, InformationProtectionPolicyName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "type": "InformationProtectionPolicy", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "type": "Union[str, InformationProtectionPolicyName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "type": "Union[str, InformationProtectionPolicyName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "information_protection_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "IotSecuritySolutionAnalyticsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "IotSecuritySolutionOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "type": "IoTSecuritySolutionModel", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "iot_security_solution_data": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "type": "UpdateIotSecuritySolutionData", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "update_iot_security_solution_data": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "IotSecuritySolutionsAnalyticsAggregatedAlertOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "dismiss": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "aggregated_alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "aggregated_alert_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "top": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "IotSecuritySolutionsAnalyticsRecommendationOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "aggregated_recommendation_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "top": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "JitNetworkAccessPoliciesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "JitNetworkAccessPolicy", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "initiate": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "JitNetworkAccessPolicyInitiateRequest", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "jit_network_access_policy_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group_and_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "LocationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "MdeOnboardingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "OperationResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "OperationStatusesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "Operations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PricingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "type": "Pricing", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "PrivateEndpointConnectionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "type": "PrivateEndpointConnection", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_endpoint_connection_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PrivateLinkResourcesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "group_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "PrivateLinksOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "PrivateLinkResource", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "head": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "PrivateLinkUpdate", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "private_link": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "RegulatoryComplianceAssessmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_control_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_control_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "RegulatoryComplianceControlsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_control_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "RegulatoryComplianceStandardsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "regulatory_compliance_standard_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecureScoreControlDefinitionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecureScoreControlsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expand": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_secure_score": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "secure_score_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "expand": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecureScoresOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "secure_score_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityConnectorApplicationOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "Application", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "application": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "application_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityConnectorApplicationsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityConnectorsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "SecurityConnector", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "SecurityConnector", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_connector": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "SecurityContactsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact_name": { + "type": "Union[str, SecurityContactName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact": { + "type": "SecurityContact", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact_name": { + "type": "Union[str, SecurityContactName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact_name": { + "type": "Union[str, SecurityContactName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_contact_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityOperatorsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_operator_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_operator_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_operator_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "pricing_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecuritySolutionsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "security_solution_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SecuritySolutionsReferenceDataOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "SecurityStandardsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "SecurityStandard", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SensitivitySettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "type": "UpdateSensitivitySettingsRequest", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "sensitivity_settings": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ServerVulnerabilityAssessmentOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list_by_extended_resource": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_namespace": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "ServerVulnerabilityAssessmentsSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "type": "Union[str, ServerVulnerabilityAssessmentsSettingKindName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "type": "ServerVulnerabilityAssessmentsSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "type": "Union[str, ServerVulnerabilityAssessmentsSettingKindName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "type": "Union[str, ServerVulnerabilityAssessmentsSettingKindName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "server_vulnerability_assessments_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_kind": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "Setting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "setting_name": { + "type": "Union[str, SettingName]", + "default": null, + "param_type": "positional_or_keyword" + }, + "setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentBaselineRulesOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "add": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[RulesResultsInput]", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[JSON]", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[RuleResultsInput]", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[JSON]", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "type": "Optional[str]", + "default": null, + "param_type": "keyword_only" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "rule_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentScanResultsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_result_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentScansOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "begin_initiate_scan": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scan_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": null, + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get_scan_operation_result": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "operation_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "database_name": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SqlVulnerabilityAssessmentSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "default": "none", + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[SqlVulnerabilityAssessmentSettings]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[JSON]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "body": { + "type": "Optional[IO[bytes]]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "StandardAssignmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "type": "StandardAssignment", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_assignment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "StandardsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create_or_update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "Standard", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "standard": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "standard_id": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_subscription": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "SubAssessmentsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "sub_assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "assessment_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_all": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "scope": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "TasksOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get_resource_group_level_task": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get_subscription_level_task": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_resource_group": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "filter": { + "default": "none", + "param_type": "keyword_only" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update_resource_group_level_task_state": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_update_action_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "update_subscription_level_task_state": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "task_update_action_type": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + } + }, + "properties": {} + }, + "TopologyOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "resource_group_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "topology_resource_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "list_by_home_region": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "asc_location": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + } + }, + "properties": {} + }, + "WorkspaceSettingsOperations": { + "type": null, + "methods": { + "__init__": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "args": { + "default": null, + "param_type": "var_positional" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "create": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "WorkspaceSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + }, + "delete": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "get": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [] + }, + "list": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": false, + "overloads": [] + }, + "update": { + "parameters": { + "self": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "default": null, + "param_type": "positional_or_keyword" + }, + "kwargs": { + "default": null, + "param_type": "var_keyword" + } + }, + "is_async": true, + "overloads": [ + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "WorkspaceSetting", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "JSON", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + }, + { + "parameters": { + "self": { + "type": null, + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting_name": { + "type": "str", + "default": null, + "param_type": "positional_or_keyword" + }, + "workspace_setting": { + "type": "IO[bytes]", + "default": null, + "param_type": "positional_or_keyword" + }, + "content_type": { + "type": "str", + "default": "application/json", + "param_type": "keyword_only" + } + }, + "is_async": true, + "return_type": null + } + ] + } + }, + "properties": {} + } + }, + "function_nodes": {} + } +} \ No newline at end of file diff --git a/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/get_advanced_threat_protection_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/get_advanced_threat_protection_settings_example.py deleted file mode 100644 index 7fd43be6f118..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/get_advanced_threat_protection_settings_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_advanced_threat_protection_settings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.advanced_threat_protection.get( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-01-01/examples/AdvancedThreatProtection/GetAdvancedThreatProtectionSettings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/put_advanced_threat_protection_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/put_advanced_threat_protection_settings_example.py deleted file mode 100644 index eda8f7697de2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/advanced_threat_protection/put_advanced_threat_protection_settings_example.py +++ /dev/null @@ -1,48 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_advanced_threat_protection_settings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.advanced_threat_protection.create( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount", - advanced_threat_protection_setting={ - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount/providers/Microsoft.Security/advancedThreatProtectionSettings/current", - "name": "current", - "properties": {"isEnabled": True}, - "type": "Microsoft.Security/advancedThreatProtectionSettings", - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-01-01/examples/AdvancedThreatProtection/PutAdvancedThreatProtectionSettings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_resource_group_location_example.py deleted file mode 100644 index 970c520c43a0..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_resource_group_location_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_alert_resource_group_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.alerts.get_resource_group_level( - resource_group_name="myRg1", - asc_location="westeurope", - alert_name="2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/GetAlertResourceGroupLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_subscription_location_example.py deleted file mode 100644 index f78ad8b9a594..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alert_subscription_location_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_alert_subscription_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.alerts.get_subscription_level( - asc_location="westeurope", - alert_name="2518770965529163669_F144EE95-A3E5-42DA-A279-967D115809AA", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/GetAlertSubscriptionLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_example.py deleted file mode 100644 index 05cadda8b8bc..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_alerts_resource_group_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.alerts.list_by_resource_group( - resource_group_name="myRg1", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroup_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_location_example.py deleted file mode 100644 index b90236a5756a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_resource_group_location_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_alerts_resource_group_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.alerts.list_resource_group_level_by_region( - asc_location="westeurope", - resource_group_name="myRg1", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroupLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscription_example.py deleted file mode 100644 index d3d288550e85..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_alerts_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.alerts.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscriptions_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscriptions_location_example.py deleted file mode 100644 index c8bee0d656bc..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/get_alerts_subscriptions_location_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_alerts_subscriptions_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.alerts.list_subscription_level_by_region( - asc_location="westeurope", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscriptionsLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/simulate_alerts_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/simulate_alerts_example.py deleted file mode 100644 index bc439a2efabc..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/simulate_alerts_example.py +++ /dev/null @@ -1,57 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python simulate_alerts_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.alerts.begin_simulate( - asc_location="centralus", - alert_simulator_request_body={ - "properties": { - "bundles": [ - "AppServices", - "DNS", - "KeyVaults", - "KubernetesService", - "ResourceManager", - "SqlServers", - "StorageAccounts", - "VirtualMachines", - "CosmosDbs", - ], - "kind": "Bundles", - } - }, - ).result() - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/SimulateAlerts_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_activate_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_activate_example.py deleted file mode 100644 index ac3609a29d5e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_activate_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_alert_resource_group_location_activate_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.alerts.update_resource_group_level_state_to_activate( - resource_group_name="myRg2", - asc_location="westeurope", - alert_name="2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_activate_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_dismiss_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_dismiss_example.py deleted file mode 100644 index c21c68047c29..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_dismiss_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_alert_resource_group_location_dismiss_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.alerts.update_resource_group_level_state_to_dismiss( - resource_group_name="myRg2", - asc_location="westeurope", - alert_name="2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_dismiss_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_in_progress_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_in_progress_example.py deleted file mode 100644 index c72f4a7eb2ad..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_in_progress_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_alert_resource_group_location_in_progress_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.alerts.update_resource_group_level_state_to_in_progress( - resource_group_name="myRg2", - asc_location="westeurope", - alert_name="2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_inProgress_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_resolve_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_resolve_example.py deleted file mode 100644 index bee12ec6ee40..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_resource_group_location_resolve_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_alert_resource_group_location_resolve_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.alerts.update_resource_group_level_state_to_resolve( - resource_group_name="myRg2", - asc_location="westeurope", - alert_name="2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_resolve_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_activate_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_activate_example.py deleted file mode 100644 index b00d7a794b3d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_activate_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_alert_subscription_location_activate_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.alerts.update_subscription_level_state_to_activate( - asc_location="westeurope", - alert_name="2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_activate_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_dismiss_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_dismiss_example.py deleted file mode 100644 index 68d9ee3c4a49..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_dismiss_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_alert_subscription_location_dismiss_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.alerts.update_subscription_level_state_to_dismiss( - asc_location="westeurope", - alert_name="2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_dismiss_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_in_progress_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_in_progress_example.py deleted file mode 100644 index 23df0302abfb..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_in_progress_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_alert_subscription_location_in_progress_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.alerts.update_subscription_level_state_to_in_progress( - asc_location="westeurope", - alert_name="2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_inProgress_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_resolve_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_resolve_example.py deleted file mode 100644 index 81eec71f27b3..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts/update_alert_subscription_location_resolve_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_alert_subscription_location_resolve_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.alerts.update_subscription_level_state_to_resolve( - asc_location="westeurope", - alert_name="2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_resolve_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/delete_alerts_suppression_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/delete_alerts_suppression_rule_example.py deleted file mode 100644 index 1775041c26d9..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/delete_alerts_suppression_rule_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_alerts_suppression_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.alerts_suppression_rules.delete( - alerts_suppression_rule_name="dismissIpAnomalyAlerts", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/DeleteAlertsSuppressionRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rule_example.py deleted file mode 100644 index e7e956543112..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rule_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_alerts_suppression_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.alerts_suppression_rules.get( - alerts_suppression_rule_name="dismissIpAnomalyAlerts", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_example.py deleted file mode 100644 index 6669dfe9a15c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_alerts_suppression_rules_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.alerts_suppression_rules.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRules_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_with_alert_type_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_with_alert_type_example.py deleted file mode 100644 index 3906247490c9..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/get_alerts_suppression_rules_with_alert_type_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_alerts_suppression_rules_with_alert_type_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.alerts_suppression_rules.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRulesWithAlertType_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/put_alerts_suppression_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/put_alerts_suppression_rule_example.py deleted file mode 100644 index 4cba36f9198a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/alerts_suppression_rules/put_alerts_suppression_rule_example.py +++ /dev/null @@ -1,57 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_alerts_suppression_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.alerts_suppression_rules.update( - alerts_suppression_rule_name="dismissIpAnomalyAlerts", - alerts_suppression_rule={ - "properties": { - "alertType": "IpAnomaly", - "comment": "Test VM", - "expirationDateUtc": "2019-12-01T19:50:47.083633Z", - "reason": "FalsePositive", - "state": "Enabled", - "suppressionAlertsScope": { - "allOf": [ - {"field": "entities.ip.address", "in": ["104.215.95.187", "52.164.206.56"]}, - {"contains": "POWERSHELL.EXE", "field": "entities.process.commandline"}, - ] - }, - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/PutAlertsSuppressionRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_example.py b/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_example.py deleted file mode 100644 index a9a3d07c94d3..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_allowed_connections_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="3eeab341-f466-499c-a8be-85427e154bad", - ) - - response = client.allowed_connections.get( - resource_group_name="myResourceGroup", - asc_location="centralus", - connection_type="Internal", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_example.py deleted file mode 100644 index 70094895efd1..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_allowed_connections_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="3eeab341-f466-499c-a8be-85427e154bad", - ) - - response = client.allowed_connections.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_location_example.py deleted file mode 100644 index a176165f4114..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/allowed_connections/get_allowed_connections_subscription_location_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_allowed_connections_subscription_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="3eeab341-f466-499c-a8be-85427e154bad", - ) - - response = client.allowed_connections.list_by_home_region( - asc_location="centralus", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_get_by_azure_api_management_service_example.py b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_get_by_azure_api_management_service_example.py deleted file mode 100644 index 3426c94f9225..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_get_by_azure_api_management_service_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python api_collections_get_by_azure_api_management_service_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="3fa85f64-5717-4562-b3fc-2c963f66afa6", - ) - - response = client.api_collections.get_by_azure_api_management_service( - resource_group_name="rg1", - service_name="apimService1", - api_id="echo-api", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-11-15/examples/ApiCollections/APICollections_GetByAzureApiManagementService_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_azure_api_management_service_example.py b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_azure_api_management_service_example.py deleted file mode 100644 index 507c85372d95..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_azure_api_management_service_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python api_collections_list_by_azure_api_management_service_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="3fa85f64-5717-4562-b3fc-2c963f66afa6", - ) - - response = client.api_collections.list_by_azure_api_management_service( - resource_group_name="rg1", - service_name="apimService1", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByAzureApiManagementService_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_resource_group_example.py deleted file mode 100644 index 7afff77930f7..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_resource_group_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python api_collections_list_by_resource_group_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="3fa85f64-5717-4562-b3fc-2c963f66afa6", - ) - - response = client.api_collections.list_by_resource_group( - resource_group_name="rg1", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByResourceGroup_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_subscription_example.py deleted file mode 100644 index 707dd9280adb..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_list_by_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python api_collections_list_by_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="3fa85f64-5717-4562-b3fc-2c963f66afa6", - ) - - response = client.api_collections.list_by_subscription() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListBySubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_offboard_azure_api_management_api_example.py b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_offboard_azure_api_management_api_example.py deleted file mode 100644 index 5b4ac0e38d4e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_offboard_azure_api_management_api_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python api_collections_offboard_azure_api_management_api_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="3fa85f64-5717-4562-b3fc-2c963f66afa6", - ) - - client.api_collections.offboard_azure_api_management_api( - resource_group_name="rg1", - service_name="apimService1", - api_id="echo-api", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-11-15/examples/ApiCollections/APICollections_OffboardAzureApiManagementApi_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_onboard_azure_api_management_api_example.py b/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_onboard_azure_api_management_api_example.py deleted file mode 100644 index fd85a0dbd1fc..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/api_collections/api_collections_onboard_azure_api_management_api_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python api_collections_onboard_azure_api_management_api_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="3fa85f64-5717-4562-b3fc-2c963f66afa6", - ) - - response = client.api_collections.begin_onboard_azure_api_management_api( - resource_group_name="rg1", - service_name="apimService1", - api_id="echo-api", - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-11-15/examples/ApiCollections/APICollections_OnboardAzureApiManagementApi_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/delete_application_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/delete_application_example.py deleted file mode 100644 index 4930db331d6a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/delete_application_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_application_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.application.delete( - application_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/DeleteApplication_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/delete_security_connector_application_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/delete_security_connector_application_example.py deleted file mode 100644 index dabc7d76f505..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/delete_security_connector_application_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_security_connector_application_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.security_connector_application.delete( - resource_group_name="gcpResourceGroup", - security_connector_name="gcpconnector", - application_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/DeleteSecurityConnectorApplication_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/get_application_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/get_application_example.py deleted file mode 100644 index dc96d90d8d70..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/get_application_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_application_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.application.get( - application_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/GetApplication_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/get_security_connector_application_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/get_security_connector_application_example.py deleted file mode 100644 index 641f3737a77a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/get_security_connector_application_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_security_connector_application_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.security_connector_application.get( - resource_group_name="gcpResourceGroup", - security_connector_name="gcpconnector", - application_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/GetSecurityConnectorApplication_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_security_connector_applications_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_security_connector_applications_example.py deleted file mode 100644 index 2cc5d5242842..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_security_connector_applications_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_security_connector_applications_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.security_connector_applications.list( - resource_group_name="gcpResourceGroup", - security_connector_name="gcpconnector", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/ListBySecurityConnectorApplications_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_subscription_applications_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_subscription_applications_example.py deleted file mode 100644 index 3cc9f3dcfda4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/list_by_subscription_applications_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_subscription_applications_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.applications.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/ListBySubscriptionApplications_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/put_application_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/put_application_example.py deleted file mode 100644 index 74dd0c408a1b..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/put_application_example.py +++ /dev/null @@ -1,50 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_application_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.application.create_or_update( - application_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - application={ - "properties": { - "conditionSets": [{"conditions": [{"operator": "contains", "property": "$.Id", "value": "-bil-"}]}], - "description": "An application on critical recommendations", - "displayName": "Admin's application", - "sourceResourceType": "Assessments", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/PutApplication_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/applications/put_security_connector_application_example.py b/sdk/security/azure-mgmt-security/generated_samples/applications/put_security_connector_application_example.py deleted file mode 100644 index fe465e542e50..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/applications/put_security_connector_application_example.py +++ /dev/null @@ -1,52 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_security_connector_application_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.security_connector_application.create_or_update( - resource_group_name="gcpResourceGroup", - security_connector_name="gcpconnector", - application_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - application={ - "properties": { - "conditionSets": [{"conditions": [{"operator": "contains", "property": "$.Id", "value": "-prod-"}]}], - "description": "An application on critical GCP recommendations", - "displayName": "GCP Admin's application", - "sourceResourceType": "Assessments", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-07-01-preview/examples/Applications/PutSecurityConnectorApplication_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments/delete_assessment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments/delete_assessment_example.py deleted file mode 100644 index 2ea1b2773d29..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments/delete_assessment_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_assessment_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.assessments.delete( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2", - assessment_name="8bb8be0a-6010-4789-812f-e4d661c4ed0e", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/Assessments/DeleteAssessment_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_example.py deleted file mode 100644 index 02ef2cb5d4dc..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_assessment_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.assessments.get( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2", - assessment_name="21300918-b2e3-0346-785f-c77ff57d243b", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/Assessments/GetAssessment_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_with_expand_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_with_expand_example.py deleted file mode 100644 index 68a79cea60cf..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments/get_assessment_with_expand_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_assessment_with_expand_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.assessments.get( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2", - assessment_name="21300918-b2e3-0346-785f-c77ff57d243b", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/Assessments/GetAssessmentWithExpand_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments/list_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments/list_assessments_example.py deleted file mode 100644 index 48aa8262321d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments/list_assessments_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_assessments_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.assessments.list( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/Assessments/ListAssessments_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments/put_assessment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments/put_assessment_example.py deleted file mode 100644 index f34fb10d2fe9..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments/put_assessment_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_assessment_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.assessments.create_or_update( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2", - assessment_name="8bb8be0a-6010-4789-812f-e4d661c4ed0e", - assessment={"properties": {"resourceDetails": {"source": "Azure"}, "status": {"code": "Healthy"}}}, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/Assessments/PutAssessment_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/create_assessments_metadata_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/create_assessments_metadata_subscription_example.py deleted file mode 100644 index 535089a987dd..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/create_assessments_metadata_subscription_example.py +++ /dev/null @@ -1,53 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_assessments_metadata_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0980887d-03d6-408c-9566-532f3456804e", - ) - - response = client.assessments_metadata.create_in_subscription( - assessment_metadata_name="ca039e75-a276-4175-aebc-bcd41e4b14b7", - assessment_metadata={ - "properties": { - "assessmentType": "CustomerManaged", - "categories": ["Compute"], - "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", - "displayName": "Install endpoint protection solution on virtual machine scale sets", - "remediationDescription": 'To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set', - "severity": "Medium", - "threats": ["dataExfiltration", "dataSpillage", "maliciousInsider"], - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/delete_assessments_metadata_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/delete_assessments_metadata_subscription_example.py deleted file mode 100644 index 34570f1a9c45..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/delete_assessments_metadata_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_assessments_metadata_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0980887d-03d6-408c-9566-532f3456804e", - ) - - client.assessments_metadata.delete_in_subscription( - assessment_metadata_name="ca039e75-a276-4175-aebc-bcd41e4b14b7", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/AssessmentsMetadata/DeleteAssessmentsMetadata_subscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_example.py deleted file mode 100644 index 0a09ca8b4b2c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_assessments_metadata_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.assessments_metadata.get( - assessment_metadata_name="21300918-b2e3-0346-785f-c77ff57d243b", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_subscription_example.py deleted file mode 100644 index 2778e8f43ec4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/get_assessments_metadata_subscription_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_assessments_metadata_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0980887d-03d6-408c-9566-532f3456804e", - ) - - response = client.assessments_metadata.get_in_subscription( - assessment_metadata_name="21300918-b2e3-0346-785f-c77ff57d243b", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_example.py deleted file mode 100644 index 18b9f205f9f2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_assessments_metadata_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.assessments_metadata.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_subscription_example.py deleted file mode 100644 index 0d0ce2915f10..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assessments_metadata/list_assessments_metadata_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_assessments_metadata_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0980887d-03d6-408c-9566-532f3456804e", - ) - - response = client.assessments_metadata.list_by_subscription() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2025-05-04/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assignments/delete_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assignments/delete_assignment_example.py deleted file mode 100644 index fe89323b93a2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assignments/delete_assignment_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_assignment_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.assignments.delete( - resource_group_name="myResourceGroup", - assignment_id="8bb8be0a-6010-4789-812f-e4d661c4ed0e", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Assignments/DeleteAssignment_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assignments/get_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assignments/get_assignment_example.py deleted file mode 100644 index 9fd145287589..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assignments/get_assignment_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_assignment_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.assignments.get( - resource_group_name="myResourceGroup", - assignment_id="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Assignments/GetAssignment_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assignments/list_assignments_example.py b/sdk/security/azure-mgmt-security/generated_samples/assignments/list_assignments_example.py deleted file mode 100644 index da27f60ec7cd..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assignments/list_assignments_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_assignments_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.assignments.list( - resource_group_name="myResourceGroup", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Assignments/ListAssignments_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assignments/list_by_subscription_assignments_example.py b/sdk/security/azure-mgmt-security/generated_samples/assignments/list_by_subscription_assignments_example.py deleted file mode 100644 index 52eaa8775d61..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assignments/list_by_subscription_assignments_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_subscription_assignments_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.assignments.list_by_subscription() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Assignments/ListBySubscriptionAssignments_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assignments/put_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assignments/put_assignment_example.py deleted file mode 100644 index 1137a988db82..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assignments/put_assignment_example.py +++ /dev/null @@ -1,58 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_assignment_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.assignments.create_or_update( - resource_group_name="myResourceGroup", - assignment_id="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - assignment={ - "properties": { - "additionalData": {"exemptionCategory": "waiver"}, - "assignedComponent": {"key": "1195afff-c881-495e-9bc5-1486211ae03f"}, - "assignedStandard": { - "id": "/providers/Microsoft.Security/Standards/1f3afdf9-d0c9-4c3d-847f-89da613e70a8" - }, - "description": "Set of policies monitored by Azure Security Center for cross cloud", - "displayName": "ASC Default", - "effect": "Exempt", - "expiresOn": "2022-05-01T19:50:47.083633Z", - "metadata": {"ticketId": 12345}, - "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/ResourceGroup/rg", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Assignments/PutAssignment_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/assignments/put_default_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/assignments/put_default_assignment_example.py deleted file mode 100644 index c435c2defa41..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/assignments/put_default_assignment_example.py +++ /dev/null @@ -1,54 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_default_assignment_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.assignments.create_or_update( - resource_group_name="myResourceGroup", - assignment_id="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - assignment={ - "properties": { - "assignedStandard": { - "id": "/providers/Microsoft.Security/Standards/1f3afdf9-d0c9-4c3d-847f-89da613e70a8" - }, - "description": "Set of policies monitored by Azure Security Center for cross cloud", - "displayName": "ASC Default", - "effect": "audit", - "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/ResourceGroup/rg", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Assignments/PutDefaultAssignment_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/create_auto_provisioning_settings_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/create_auto_provisioning_settings_subscription_example.py deleted file mode 100644 index fc9f3495b061..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/create_auto_provisioning_settings_subscription_example.py +++ /dev/null @@ -1,48 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_auto_provisioning_settings_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.auto_provisioning_settings.create( - setting_name="default", - setting={ - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/autoProvisioningSettings/default", - "name": "default", - "properties": {"autoProvision": "On"}, - "type": "Microsoft.Security/autoProvisioningSettings", - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/CreateAutoProvisioningSettingsSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_setting_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_setting_subscription_example.py deleted file mode 100644 index 818a3f4628a0..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_setting_subscription_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_auto_provisioning_setting_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.auto_provisioning_settings.get( - setting_name="default", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_settings_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_settings_subscription_example.py deleted file mode 100644 index fa6cc3ebd200..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/auto_provisioning_settings/get_auto_provisioning_settings_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_auto_provisioning_settings_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.auto_provisioning_settings.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingsSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/delete_automation_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/delete_automation_example.py deleted file mode 100644 index cf2b288bce45..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/delete_automation_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_automation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.automations.delete( - resource_group_name="myRg", - automation_name="myAutomationName", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/DeleteAutomation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/get_automation_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/get_automation_resource_group_example.py deleted file mode 100644 index bee11fb7a07e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/get_automation_resource_group_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_automation_resource_group_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.automations.get( - resource_group_name="exampleResourceGroup", - automation_name="exampleAutomation", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/GetAutomationResourceGroup_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_resource_group_example.py deleted file mode 100644 index 292ff916c7c2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_resource_group_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_automations_resource_group_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.automations.list_by_resource_group( - resource_group_name="exampleResourceGroup", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsResourceGroup_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_subscription_example.py deleted file mode 100644 index 8f8aa3b6310e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/get_automations_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_automations_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.automations.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/patch_automation_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/patch_automation_example.py deleted file mode 100644 index 410b299ac52a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/patch_automation_example.py +++ /dev/null @@ -1,67 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python patch_automation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.automations.update( - resource_group_name="exampleResourceGroup", - automation_name="exampleAutomation", - automation={ - "actions": [automation_action], - "description": "str", - "isEnabled": bool, - "scopes": [{"description": "str", "scopePath": "str"}], - "sources": [ - { - "eventSource": "str", - "ruleSets": [ - { - "rules": [ - { - "expectedValue": "str", - "operator": "str", - "propertyJPath": "str", - "propertyType": "str", - } - ] - } - ], - } - ], - "tags": {"str": "str"}, - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/PatchAutomation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_all_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_all_assessments_example.py deleted file mode 100644 index 74ee6a8230b2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_all_assessments_example.py +++ /dev/null @@ -1,73 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_automation_all_assessments_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.automations.create_or_update( - resource_group_name="exampleResourceGroup", - automation_name="exampleAutomation", - automation={ - "actions": [automation_action], - "description": "str", - "etag": "str", - "id": "str", - "isEnabled": bool, - "kind": "str", - "location": "str", - "name": "str", - "scopes": [{"description": "str", "scopePath": "str"}], - "sources": [ - { - "eventSource": "str", - "ruleSets": [ - { - "rules": [ - { - "expectedValue": "str", - "operator": "str", - "propertyJPath": "str", - "propertyType": "str", - } - ] - } - ], - } - ], - "tags": {"str": "str"}, - "type": "str", - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/PutAutomationAllAssessments_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_high_severity_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_high_severity_assessments_example.py deleted file mode 100644 index f5c216c23160..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/put_automation_high_severity_assessments_example.py +++ /dev/null @@ -1,73 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_automation_high_severity_assessments_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.automations.create_or_update( - resource_group_name="exampleResourceGroup", - automation_name="exampleAutomation", - automation={ - "actions": [automation_action], - "description": "str", - "etag": "str", - "id": "str", - "isEnabled": bool, - "kind": "str", - "location": "str", - "name": "str", - "scopes": [{"description": "str", "scopePath": "str"}], - "sources": [ - { - "eventSource": "str", - "ruleSets": [ - { - "rules": [ - { - "expectedValue": "str", - "operator": "str", - "propertyJPath": "str", - "propertyType": "str", - } - ] - } - ], - } - ], - "tags": {"str": "str"}, - "type": "str", - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/PutAutomationHighSeverityAssessments_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/put_disable_automation_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/put_disable_automation_example.py deleted file mode 100644 index ce8f79e058a0..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/put_disable_automation_example.py +++ /dev/null @@ -1,73 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_disable_automation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.automations.create_or_update( - resource_group_name="exampleResourceGroup", - automation_name="exampleAutomation", - automation={ - "actions": [automation_action], - "description": "str", - "etag": "str", - "id": "str", - "isEnabled": bool, - "kind": "str", - "location": "str", - "name": "str", - "scopes": [{"description": "str", "scopePath": "str"}], - "sources": [ - { - "eventSource": "str", - "ruleSets": [ - { - "rules": [ - { - "expectedValue": "str", - "operator": "str", - "propertyJPath": "str", - "propertyType": "str", - } - ] - } - ], - } - ], - "tags": {"str": "str"}, - "type": "str", - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/PutDisableAutomation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/automations/validate_automation_example.py b/sdk/security/azure-mgmt-security/generated_samples/automations/validate_automation_example.py deleted file mode 100644 index e43dd5ea85fe..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/automations/validate_automation_example.py +++ /dev/null @@ -1,73 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python validate_automation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.automations.validate( - resource_group_name="exampleResourceGroup", - automation_name="exampleAutomation", - automation={ - "actions": [automation_action], - "description": "str", - "etag": "str", - "id": "str", - "isEnabled": bool, - "kind": "str", - "location": "str", - "name": "str", - "scopes": [{"description": "str", "scopePath": "str"}], - "sources": [ - { - "eventSource": "str", - "ruleSets": [ - { - "rules": [ - { - "expectedValue": "str", - "operator": "str", - "propertyJPath": "str", - "propertyType": "str", - } - ] - } - ], - } - ], - "tags": {"str": "str"}, - "type": "str", - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-12-01-preview/examples/Automations/ValidateAutomation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/compliance_results/get_compliance_results_example.py b/sdk/security/azure-mgmt-security/generated_samples/compliance_results/get_compliance_results_example.py deleted file mode 100644 index 52e14980c17e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/compliance_results/get_compliance_results_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_compliance_results_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.compliance_results.get( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - compliance_result_name="DesignateMoreThanOneOwner", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2017-08-01/examples/ComplianceResults/GetComplianceResults_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/compliance_results/list_compliance_results_example.py b/sdk/security/azure-mgmt-security/generated_samples/compliance_results/list_compliance_results_example.py deleted file mode 100644 index 1f009c90a98a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/compliance_results/list_compliance_results_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_compliance_results_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.compliance_results.list( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2017-08-01/examples/ComplianceResults/ListComplianceResults_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliance_example.py b/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliance_example.py deleted file mode 100644 index 29563f7b0e26..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliance_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_compliance_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.compliances.get( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - compliance_name="2018-01-01Z", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/Compliances/GetCompliance_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliances_example.py b/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliances_example.py deleted file mode 100644 index 56aca65d2ef3..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/compliances/get_compliances_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_compliances_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.compliances.list( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/Compliances/GetCompliances_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_management_group_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_management_group_custom_recommendation_example.py deleted file mode 100644 index fa55140e4363..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_management_group_custom_recommendation_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_by_management_group_custom_recommendation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.custom_recommendations.delete( - scope="providers/Microsoft.Management/managementGroups/contoso", - custom_recommendation_name="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/DeleteByManagementGroupCustomRecommendation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_security_connector_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_security_connector_custom_recommendation_example.py deleted file mode 100644 index cd076397e9e4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_security_connector_custom_recommendation_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_by_security_connector_custom_recommendation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.custom_recommendations.delete( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - custom_recommendation_name="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/DeleteBySecurityConnectorCustomRecommendation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_subscription_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_subscription_custom_recommendation_example.py deleted file mode 100644 index 94c6d5ab94e6..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/delete_by_subscription_custom_recommendation_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_by_subscription_custom_recommendation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.custom_recommendations.delete( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - custom_recommendation_name="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/DeleteBySubscriptionCustomRecommendation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_management_group_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_management_group_custom_recommendation_example.py deleted file mode 100644 index 750486cf7d13..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_management_group_custom_recommendation_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_by_management_group_custom_recommendation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.custom_recommendations.get( - scope="providers/Microsoft.Management/managementGroups/contoso", - custom_recommendation_name="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/GetByManagementGroupCustomRecommendation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_security_connector_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_security_connector_custom_recommendation_example.py deleted file mode 100644 index 82466889bd8f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_security_connector_custom_recommendation_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_by_security_connector_custom_recommendation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.custom_recommendations.get( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - custom_recommendation_name="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/GetBySecurityConnectorCustomRecommendation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_subscription_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_subscription_custom_recommendation_example.py deleted file mode 100644 index 2ac08d18b839..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/get_by_subscription_custom_recommendation_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_by_subscription_custom_recommendation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.custom_recommendations.get( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - custom_recommendation_name="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/GetBySubscriptionCustomRecommendation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_management_group_custom_recommendations_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_management_group_custom_recommendations_example.py deleted file mode 100644 index 4ef4388050e9..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_management_group_custom_recommendations_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_management_group_custom_recommendations_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.custom_recommendations.list( - scope="providers/Microsoft.Management/managementGroups/contoso", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/ListByManagementGroupCustomRecommendations_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_security_connector_custom_recommendations_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_security_connector_custom_recommendations_example.py deleted file mode 100644 index 144e29db552b..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_security_connector_custom_recommendations_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_security_connector_custom_recommendations_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.custom_recommendations.list( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/ListBySecurityConnectorCustomRecommendations_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_subscription_custom_recommendations_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_subscription_custom_recommendations_example.py deleted file mode 100644 index d74cb2f77dca..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/list_by_subscription_custom_recommendations_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_subscription_custom_recommendations_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.custom_recommendations.list( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/ListBySubscriptionCustomRecommendations_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_management_group_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_management_group_custom_recommendation_example.py deleted file mode 100644 index befaa93ae240..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_management_group_custom_recommendation_example.py +++ /dev/null @@ -1,54 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_by_management_group_custom_recommendation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.custom_recommendations.create_or_update( - scope="providers/Microsoft.Management/managementGroups/contoso", - custom_recommendation_name="33e7cc6e-a139-4723-a0e5-76993aee0771", - custom_recommendation_body={ - "properties": { - "cloudProviders": ["AWS"], - "description": "organization passwords policy", - "displayName": "Password Policy", - "query": "RawEntityMetadata | where Environment == 'GCP' and Identifiers.Type == 'compute.firewalls' | extend IslogConfigEnabled = tobool(Record.logConfig.enable) | extend HealthStatus = iff(IslogConfigEnabled, 'HEALTHY', 'UNHEALTHY')", - "remediationDescription": "Change password policy to...", - "securityIssue": "Vulnerability", - "severity": "Medium", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/PutByManagementGroupCustomRecommendation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_security_connector_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_security_connector_custom_recommendation_example.py deleted file mode 100644 index f8a93ef62826..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_security_connector_custom_recommendation_example.py +++ /dev/null @@ -1,54 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_by_security_connector_custom_recommendation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.custom_recommendations.create_or_update( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - custom_recommendation_name="33e7cc6e-a139-4723-a0e5-76993aee0771", - custom_recommendation_body={ - "properties": { - "cloudProviders": ["AWS"], - "description": "organization passwords policy", - "displayName": "Password Policy", - "query": "RawEntityMetadata | where Environment == 'GCP' and Identifiers.Type == 'compute.firewalls' | extend IslogConfigEnabled = tobool(Record.logConfig.enable) | extend HealthStatus = iff(IslogConfigEnabled, 'HEALTHY', 'UNHEALTHY')", - "remediationDescription": "Change password policy to...", - "securityIssue": "Vulnerability", - "severity": "Medium", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/PutBySecurityConnectorCustomRecommendation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_subscription_custom_recommendation_example.py b/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_subscription_custom_recommendation_example.py deleted file mode 100644 index fb78a02bd6f7..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/custom_recommendations/put_by_subscription_custom_recommendation_example.py +++ /dev/null @@ -1,54 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_by_subscription_custom_recommendation_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.custom_recommendations.create_or_update( - scope="subscriptions/e5d1b86c-3051-44d5-8802-aa65d45a279b", - custom_recommendation_name="33e7cc6e-a139-4723-a0e5-76993aee0771", - custom_recommendation_body={ - "properties": { - "cloudProviders": ["AWS"], - "description": "organization passwords policy", - "displayName": "Password Policy", - "query": "RawEntityMetadata | where Environment == 'GCP' and Identifiers.Type == 'compute.firewalls' | extend IslogConfigEnabled = tobool(Record.logConfig.enable) | extend HealthStatus = iff(IslogConfigEnabled, 'HEALTHY', 'UNHEALTHY')", - "remediationDescription": "Change password policy to...", - "securityIssue": "Vulnerability", - "severity": "Medium", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/CustomRecommendations/PutBySubscriptionCustomRecommendation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/cancel_malware_scan_example.py b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/cancel_malware_scan_example.py deleted file mode 100644 index 68bd18bddeeb..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/cancel_malware_scan_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python cancel_malware_scan_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.defender_for_storage.cancel_malware_scan( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount", - setting_name="current", - scan_id="latest", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-09-01-preview/examples/DefenderForStorage/CancelMalwareScan_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_defender_for_storage_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_defender_for_storage_settings_example.py deleted file mode 100644 index 6a2eab421991..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_defender_for_storage_settings_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_defender_for_storage_settings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.defender_for_storage.get( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount", - setting_name="current", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-09-01-preview/examples/DefenderForStorage/GetDefenderForStorageSettings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_malware_scan_example.py b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_malware_scan_example.py deleted file mode 100644 index 4fbe37955ad8..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/get_malware_scan_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_malware_scan_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.defender_for_storage.get_malware_scan( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount", - setting_name="current", - scan_id="latest", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-09-01-preview/examples/DefenderForStorage/GetMalwareScan_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/list_defender_for_storage_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/list_defender_for_storage_settings_example.py deleted file mode 100644 index 54ceeb2c344c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/list_defender_for_storage_settings_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_defender_for_storage_settings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.defender_for_storage.list( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-09-01-preview/examples/DefenderForStorage/ListDefenderForStorageSettings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/put_defender_for_storage_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/put_defender_for_storage_settings_example.py deleted file mode 100644 index 12da7e470fbb..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/put_defender_for_storage_settings_example.py +++ /dev/null @@ -1,64 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_defender_for_storage_settings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.defender_for_storage.create( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount", - setting_name="current", - defender_for_storage_setting={ - "properties": { - "isEnabled": True, - "malwareScanning": { - "automatedResponse": "BlobSoftDelete", - "blobScanResultsOptions": "BlobIndexTags", - "onUpload": { - "capGBPerMonth": 10000, - "filters": { - "excludeBlobsLargerThan": 1024, - "excludeBlobsWithPrefix": ["unscanned-container", "sample-container/logs"], - "excludeBlobsWithSuffix": [".log", ".jpg"], - }, - "isEnabled": True, - }, - "scanResultsEventGridTopicResourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.EventGrid/topics/sampletopic", - }, - "overrideSubscriptionLevelSettings": True, - "sensitiveDataDiscovery": {"isEnabled": True}, - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-09-01-preview/examples/DefenderForStorage/PutDefenderForStorageSettings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/start_malware_scan_example.py b/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/start_malware_scan_example.py deleted file mode 100644 index ff7b0601e93b..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/defender_for_storage/start_malware_scan_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python start_malware_scan_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.defender_for_storage.start_malware_scan( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount", - setting_name="current", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-09-01-preview/examples/DefenderForStorage/StartMalwareScan_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/delete_device_security_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/delete_device_security_groups_example.py deleted file mode 100644 index 23d8fc939430..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/delete_device_security_groups_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_device_security_groups_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.device_security_groups.delete( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub", - device_security_group_name="samplesecuritygroup", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/get_device_security_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/get_device_security_groups_example.py deleted file mode 100644 index 282f2c311f41..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/get_device_security_groups_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_device_security_groups_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.device_security_groups.get( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub", - device_security_group_name="samplesecuritygroup", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/list_device_security_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/list_device_security_groups_example.py deleted file mode 100644 index 1ca8816d3c9d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/list_device_security_groups_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_device_security_groups_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.device_security_groups.list( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/put_device_security_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/put_device_security_groups_example.py deleted file mode 100644 index fa06df2e346d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/device_security_groups/put_device_security_groups_example.py +++ /dev/null @@ -1,56 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_device_security_groups_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.device_security_groups.create_or_update( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub", - device_security_group_name="samplesecuritygroup", - device_security_group={ - "properties": { - "timeWindowRules": [ - { - "isEnabled": True, - "maxThreshold": 30, - "minThreshold": 0, - "ruleType": "ActiveConnectionsNotInAllowedRange", - "timeWindowSize": "PT05M", - } - ] - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solution_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solution_resource_group_location_example.py deleted file mode 100644 index eeaa50cd8fa2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solution_resource_group_location_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_discovered_security_solution_resource_group_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.discovered_security_solutions.get( - resource_group_name="myRg2", - asc_location="centralus", - discovered_security_solution_name="paloalto7", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_example.py deleted file mode 100644 index a35f4940d9b1..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_discovered_security_solutions_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.discovered_security_solutions.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_location_example.py deleted file mode 100644 index 857d03ae423d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/discovered_security_solutions/get_discovered_security_solutions_subscription_location_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_discovered_security_solutions_subscription_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.discovered_security_solutions.list_by_home_region( - asc_location="centralus", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solution_example.py b/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solution_example.py deleted file mode 100644 index 35b8605130ba..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solution_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_external_security_solution_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.external_security_solutions.get( - resource_group_name="defaultresourcegroup-eus", - asc_location="centralus", - external_security_solutions_name="aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_example.py deleted file mode 100644 index 0a6bf1d44f87..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_external_security_solutions_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.external_security_solutions.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_location_example.py deleted file mode 100644 index a2f95161b163..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/external_security_solutions/get_external_security_solutions_subscription_location_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_external_security_solutions_subscription_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.external_security_solutions.list_by_home_region( - asc_location="centralus", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/delete_governance_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/delete_governance_assignment_example.py deleted file mode 100644 index d476249f503c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/delete_governance_assignment_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_governance_assignment_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.governance_assignments.delete( - scope="subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd/resourceGroups/compute_servers/providers/Microsoft.Compute/virtualMachines/win2012", - assessment_name="6b9421dd-5555-2251-9b3d-2be58e2f82cd", - assignment_key="6634ff9f-127b-4bf2-8e6e-b1737f5e789c", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceAssignments/DeleteGovernanceAssignment_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/get_governance_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/get_governance_assignment_example.py deleted file mode 100644 index cae10633f940..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/get_governance_assignment_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_governance_assignment_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_assignments.get( - scope="subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd/resourceGroups/compute_servers/providers/Microsoft.Compute/virtualMachines/win2012", - assessment_name="6b9421dd-5555-2251-9b3d-2be58e2f82cd", - assignment_key="6634ff9f-127b-4bf2-8e6e-b1737f5e789c", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceAssignments/GetGovernanceAssignment_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/list_governance_assignments_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/list_governance_assignments_example.py deleted file mode 100644 index ccf4f1af3b68..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/list_governance_assignments_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_governance_assignments_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_assignments.list( - scope="subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd", - assessment_name="6b9421dd-5555-2251-9b3d-2be58e2f82cd", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceAssignments/ListGovernanceAssignments_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/put_governance_assignment_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/put_governance_assignment_example.py deleted file mode 100644 index c378c1d92a2f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_assignments/put_governance_assignment_example.py +++ /dev/null @@ -1,57 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_governance_assignment_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_assignments.create_or_update( - scope="subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd/resourceGroups/compute_servers/providers/Microsoft.Compute/virtualMachines/win2012", - assessment_name="6b9421dd-5555-2251-9b3d-2be58e2f82cd", - assignment_key="6634ff9f-127b-4bf2-8e6e-b1737f5e789c", - governance_assignment={ - "properties": { - "additionalData": {"ticketLink": "https://snow.com", "ticketNumber": 123123, "ticketStatus": "Active"}, - "governanceEmailNotification": { - "disableManagerEmailNotification": False, - "disableOwnerEmailNotification": False, - }, - "isGracePeriod": True, - "owner": "user@contoso.com", - "remediationDueDate": "2022-01-07T13:00:00.0000000Z", - "remediationEta": {"eta": "2022-01-08T13:00:00.0000000Z", "justification": "Justification of ETA"}, - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceAssignments/PutGovernanceAssignment_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_governance_rule_example.py deleted file mode 100644 index 2efb4f4ab4a3..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_governance_rule_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_governance_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.governance_rules.begin_delete( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ).result() - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteGovernanceRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_management_group_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_management_group_governance_rule_example.py deleted file mode 100644 index 67e1030beaf5..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_management_group_governance_rule_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_management_group_governance_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.governance_rules.begin_delete( - scope="providers/Microsoft.Management/managementGroups/contoso", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ).result() - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteManagementGroupGovernanceRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_security_connector_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_security_connector_governance_rule_example.py deleted file mode 100644 index e362cf3358f8..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/delete_security_connector_governance_rule_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_security_connector_governance_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.governance_rules.begin_delete( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ).result() - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteSecurityConnectorGovernanceRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_example.py deleted file mode 100644 index 8f40698997f7..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_governance_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_rules.get( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/GetGovernanceRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_execute_status_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_execute_status_example.py deleted file mode 100644 index 0c4366e35246..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_governance_rule_execute_status_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_governance_rule_execute_status_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_rules.operation_results( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - operation_id="58b33f4f-c8c7-4b01-99cc-d437db4d40dd", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/GetGovernanceRuleExecuteStatus_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_example.py deleted file mode 100644 index 3c5560b768b6..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_management_group_governance_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_rules.get( - scope="providers/Microsoft.Management/managementGroups/contoso", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_execute_status_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_execute_status_example.py deleted file mode 100644 index 0c47e172bcc3..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_management_group_governance_rule_execute_status_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_management_group_governance_rule_execute_status_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_rules.operation_results( - scope="providers/Microsoft.Management/managementGroups/contoso", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - operation_id="58b33f4f-c8c7-4b01-99cc-d437db4d40dd", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRuleExecuteStatus_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_example.py deleted file mode 100644 index 7cbc96f2730a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_security_connector_governance_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_rules.get( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/GetSecurityConnectorGovernanceRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_execute_status_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_execute_status_example.py deleted file mode 100644 index 2338d50e5f96..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/get_security_connector_governance_rule_execute_status_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_security_connector_governance_rule_execute_status_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_rules.operation_results( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - operation_id="58b33f4f-c8c7-4b01-99cc-d437db4d40dd", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/GetSecurityConnectorGovernanceRuleExecuteStatus_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_management_group_governance_rules_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_management_group_governance_rules_example.py deleted file mode 100644 index 2426416115af..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_management_group_governance_rules_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_management_group_governance_rules_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_rules.list( - scope="providers/Microsoft.Management/managementGroups/contoso", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/ListByManagementGroupGovernanceRules_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_security_connector_governance_rules_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_security_connector_governance_rules_example.py deleted file mode 100644 index 8a42deed61a2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_security_connector_governance_rules_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_security_connector_governance_rules_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_rules.list( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/ListBySecurityConnectorGovernanceRules_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_subscription_governance_rules_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_subscription_governance_rules_example.py deleted file mode 100644 index 466896d7cce5..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/list_by_subscription_governance_rules_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_subscription_governance_rules_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_rules.list( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/ListBySubscriptionGovernanceRules_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_governance_rule_example.py deleted file mode 100644 index d8973a919331..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_governance_rule_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python post_governance_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.governance_rules.begin_execute( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ).result() - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/PostGovernanceRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_management_group_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_management_group_governance_rule_example.py deleted file mode 100644 index cdb7cbea50ef..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_management_group_governance_rule_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python post_management_group_governance_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.governance_rules.begin_execute( - scope="providers/Microsoft.Management/managementGroups/contoso", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ).result() - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/PostManagementGroupGovernanceRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_security_connector_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_security_connector_governance_rule_example.py deleted file mode 100644 index 10d5c2d91680..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/post_security_connector_governance_rule_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python post_security_connector_governance_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.governance_rules.begin_execute( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ).result() - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/PostSecurityConnectorGovernanceRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_governance_rule_example.py deleted file mode 100644 index 8d00a236ba89..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_governance_rule_example.py +++ /dev/null @@ -1,71 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_governance_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_rules.create_or_update( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - governance_rule={ - "properties": { - "conditionSets": [ - { - "conditions": [ - { - "operator": "In", - "property": "$.AssessmentKey", - "value": '["b1cd27e0-4ecc-4246-939f-49c426d9d72f", "fe83f80b-073d-4ccf-93d9-6797eb870201"]', - } - ] - } - ], - "description": "A rule for critical recommendations", - "displayName": "Admin's rule", - "governanceEmailNotification": { - "disableManagerEmailNotification": False, - "disableOwnerEmailNotification": False, - }, - "isDisabled": False, - "isGracePeriod": True, - "ownerSource": {"type": "Manually", "value": "user@contoso.com"}, - "remediationTimeframe": "7.00:00:00", - "rulePriority": 200, - "ruleType": "Integrated", - "sourceResourceType": "Assessments", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/PutGovernanceRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_management_group_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_management_group_governance_rule_example.py deleted file mode 100644 index 2af98df12da0..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_management_group_governance_rule_example.py +++ /dev/null @@ -1,72 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_management_group_governance_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_rules.create_or_update( - scope="providers/Microsoft.Management/managementGroups/contoso", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - governance_rule={ - "properties": { - "conditionSets": [ - { - "conditions": [ - { - "operator": "In", - "property": "$.AssessmentKey", - "value": '["b1cd27e0-4ecc-4246-939f-49c426d9d72f", "fe83f80b-073d-4ccf-93d9-6797eb870201"]', - } - ] - } - ], - "description": "A rule for a management group", - "displayName": "Management group rule", - "excludedScopes": ["/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"], - "governanceEmailNotification": { - "disableManagerEmailNotification": True, - "disableOwnerEmailNotification": False, - }, - "isDisabled": False, - "isGracePeriod": True, - "ownerSource": {"type": "Manually", "value": "user@contoso.com"}, - "remediationTimeframe": "7.00:00:00", - "rulePriority": 200, - "ruleType": "Integrated", - "sourceResourceType": "Assessments", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/PutManagementGroupGovernanceRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_security_connector_governance_rule_example.py b/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_security_connector_governance_rule_example.py deleted file mode 100644 index 9282e5c51471..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/governance_rules/put_security_connector_governance_rule_example.py +++ /dev/null @@ -1,71 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_security_connector_governance_rule_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.governance_rules.create_or_update( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - rule_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - governance_rule={ - "properties": { - "conditionSets": [ - { - "conditions": [ - { - "operator": "In", - "property": "$.AssessmentKey", - "value": '["b1cd27e0-4ecc-4246-939f-49c426d9d72f", "fe83f80b-073d-4ccf-93d9-6797eb870201"]', - } - ] - } - ], - "description": "A rule on critical GCP recommendations", - "displayName": "GCP Admin's rule", - "governanceEmailNotification": { - "disableManagerEmailNotification": True, - "disableOwnerEmailNotification": False, - }, - "isDisabled": False, - "isGracePeriod": True, - "ownerSource": {"type": "Manually", "value": "user@contoso.com"}, - "remediationTimeframe": "7.00:00:00", - "rulePriority": 200, - "ruleType": "Integrated", - "sourceResourceType": "Assessments", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2022-01-01-preview/examples/GovernanceRules/PutSecurityConnectorGovernanceRule_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/health_reports/get_health_reports_example.py b/sdk/security/azure-mgmt-security/generated_samples/health_reports/get_health_reports_example.py deleted file mode 100644 index 3a5df0f76e5f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/health_reports/get_health_reports_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_health_reports_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.health_reports.get( - resource_id="subscriptions/a1efb6ca-fbc5-4782-9aaa-5c7daded1ce2/resourcegroups/E2E-IBB0WX/providers/Microsoft.Security/securityconnectors/AwsConnectorAllOfferings", - health_report_name="909c629a-bf39-4521-8e4f-10b443a0bc02", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-05-01-preview/examples/HealthReports/GetHealthReports_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/health_reports/list_health_reports_example.py b/sdk/security/azure-mgmt-security/generated_samples/health_reports/list_health_reports_example.py deleted file mode 100644 index dc69f1fa4761..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/health_reports/list_health_reports_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_health_reports_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.health_reports.list( - scope="subscriptions/a1efb6ca-fbc5-4782-9aaa-5c7daded1ce2", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-05-01-preview/examples/HealthReports/ListHealthReports_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/create_or_update_information_protection_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/create_or_update_information_protection_policy_example.py deleted file mode 100644 index a979c78fff3b..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/create_or_update_information_protection_policy_example.py +++ /dev/null @@ -1,74 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_or_update_information_protection_policy_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.information_protection_policies.create_or_update( - scope="providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e", - information_protection_policy_name="custom", - information_protection_policy={ - "properties": { - "informationTypes": { - "3bf35491-99b8-41f2-86d5-c1200a7df658": { - "custom": True, - "displayName": "Custom", - "enabled": True, - "keywords": [{"canBeNumeric": True, "custom": True, "pattern": "%custom%"}], - "order": 1400, - "recommendedLabelId": "7aa516c7-5a53-4857-bc6e-6808c6acd542", - }, - "7fb9419d-2473-4ad8-8e11-b25cc8cf6a07": { - "custom": False, - "displayName": "Networking", - "enabled": True, - "keywords": [{"canBeNumeric": False, "custom": True, "pattern": "%networking%"}], - "order": 100, - "recommendedLabelId": "575739d2-3d53-4df0-9042-4c7772d5c7b1", - }, - }, - "labels": { - "1345da73-bc5a-4a8f-b7dd-3820eb713da8": {"displayName": "Public", "enabled": True, "order": 100}, - "575739d2-3d53-4df0-9042-4c7772d5c7b1": { - "displayName": "Confidential", - "enabled": True, - "order": 300, - }, - "7aa516c7-5a53-4857-bc6e-6808c6acd542": {"displayName": "General", "enabled": True, "order": 200}, - }, - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_custom_information_protection_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_custom_information_protection_policy_example.py deleted file mode 100644 index 5f377ab3ee74..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_custom_information_protection_policy_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_custom_information_protection_policy_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.information_protection_policies.get( - scope="providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e", - information_protection_policy_name="custom", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetCustomInformationProtectionPolicy_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_effective_information_protection_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_effective_information_protection_policy_example.py deleted file mode 100644 index d3938e9ac37a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/get_effective_information_protection_policy_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_effective_information_protection_policy_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.information_protection_policies.get( - scope="providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e", - information_protection_policy_name="effective", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetEffectiveInformationProtectionPolicy_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/list_information_protection_policies_example.py b/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/list_information_protection_policies_example.py deleted file mode 100644 index 3055c942a867..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/information_protection_policies/list_information_protection_policies_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_information_protection_policies_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.information_protection_policies.list( - scope="providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/ListInformationProtectionPolicies_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/create_io_tsecurity_solution.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/create_io_tsecurity_solution.py deleted file mode 100644 index 4408fc06aa41..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/create_io_tsecurity_solution.py +++ /dev/null @@ -1,66 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_io_tsecurity_solution.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.iot_security_solution.create_or_update( - resource_group_name="MyGroup", - solution_name="default", - iot_security_solution_data={ - "location": "East Us", - "properties": { - "disabledDataSources": [], - "displayName": "Solution Default", - "export": [], - "iotHubs": [ - "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" - ], - "recommendationsConfiguration": [ - {"recommendationType": "IoT_OpenPorts", "status": "Disabled"}, - {"recommendationType": "IoT_SharedCredentials", "status": "Disabled"}, - ], - "status": "Enabled", - "unmaskedIpLoggingStatus": "Enabled", - "userDefinedResources": { - "query": 'where type != "microsoft.devices/iothubs" | where name contains "iot"', - "querySubscriptions": ["075423e9-7d33-4166-8bdf-3920b04e3735"], - }, - "workspace": "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", - }, - "tags": {}, - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/delete_io_tsecurity_solution.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/delete_io_tsecurity_solution.py deleted file mode 100644 index d1cf58376ac9..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/delete_io_tsecurity_solution.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_io_tsecurity_solution.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.iot_security_solution.delete( - resource_group_name="MyGroup", - solution_name="default", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/DeleteIoTSecuritySolution.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solution.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solution.py deleted file mode 100644 index 7a61ffac6f51..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solution.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_io_tsecurity_solution.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.iot_security_solution.get( - resource_group_name="MyGroup", - solution_name="default", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolution.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list.py deleted file mode 100644 index abd25f155d26..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_io_tsecurity_solutions_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.iot_security_solution.list_by_subscription() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub.py deleted file mode 100644 index c0dbbcde5b74..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_io_tsecurity_solutions_list_by_iot_hub.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.iot_security_solution.list_by_subscription() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub_and_rg.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub_and_rg.py deleted file mode 100644 index 6418336778fd..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_iot_hub_and_rg.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_io_tsecurity_solutions_list_by_iot_hub_and_rg.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.iot_security_solution.list_by_resource_group( - resource_group_name="MyRg", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_rg.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_rg.py deleted file mode 100644 index 0552e281f226..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/get_io_tsecurity_solutions_list_by_rg.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_io_tsecurity_solutions_list_by_rg.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.iot_security_solution.list_by_resource_group( - resource_group_name="MyGroup", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/update_io_tsecurity_solution.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/update_io_tsecurity_solution.py deleted file mode 100644 index d096561d12ab..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions/update_io_tsecurity_solution.py +++ /dev/null @@ -1,56 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_io_tsecurity_solution.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.iot_security_solution.update( - resource_group_name="myRg", - solution_name="default", - update_iot_security_solution_data={ - "properties": { - "recommendationsConfiguration": [ - {"recommendationType": "IoT_OpenPorts", "status": "Disabled"}, - {"recommendationType": "IoT_SharedCredentials", "status": "Disabled"}, - ], - "userDefinedResources": { - "query": 'where type != "microsoft.devices/iothubs" | where name contains "v2"', - "querySubscriptions": ["075423e9-7d33-4166-8bdf-3920b04e3735"], - }, - }, - "tags": {"foo": "bar"}, - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert.py deleted file mode 100644 index 8608fd3e08df..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_io_tsecurity_solutions_security_aggregated_alert.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.iot_security_solutions_analytics_aggregated_alert.get( - resource_group_name="MyGroup", - solution_name="default", - aggregated_alert_name="IoT_Bruteforce_Fail/2019-02-02", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlert.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert_list.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert_list.py deleted file mode 100644 index a26f2af2083f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_aggregated_alert_list.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_io_tsecurity_solutions_security_aggregated_alert_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.iot_security_solutions_analytics_aggregated_alert.list( - resource_group_name="MyGroup", - solution_name="default", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlertList.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics.py deleted file mode 100644 index b169a4c3b25d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_io_tsecurity_solutions_security_analytics.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.iot_security_solution_analytics.get( - resource_group_name="MyGroup", - solution_name="default", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalytics.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics_list.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics_list.py deleted file mode 100644 index 49bbde992957..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_analytics_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_io_tsecurity_solutions_security_analytics_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.iot_security_solution_analytics.list( - resource_group_name="MyGroup", - solution_name="default", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation.py deleted file mode 100644 index c9932e4e347a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_io_tsecurity_solutions_security_recommendation.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="075423e9-7d33-4166-8bdf-3920b04e3735", - ) - - response = client.iot_security_solutions_analytics_recommendation.get( - resource_group_name="IoTEdgeResources", - solution_name="default", - aggregated_recommendation_name="OpenPortsOnDevice", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendation.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation_list.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation_list.py deleted file mode 100644 index 82e073dde6f9..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/get_io_tsecurity_solutions_security_recommendation_list.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_io_tsecurity_solutions_security_recommendation_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="075423e9-7d33-4166-8bdf-3920b04e3735", - ) - - response = client.iot_security_solutions_analytics_recommendation.list( - resource_group_name="IoTEdgeResources", - solution_name="default", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendationList.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/post_io_tsecurity_solutions_security_aggregated_alert_dismiss.py b/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/post_io_tsecurity_solutions_security_aggregated_alert_dismiss.py deleted file mode 100644 index 1f95f70a11cc..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/io_tsecurity_solutions_analytics/post_io_tsecurity_solutions_security_aggregated_alert_dismiss.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python post_io_tsecurity_solutions_security_aggregated_alert_dismiss.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.iot_security_solutions_analytics_aggregated_alert.dismiss( - resource_group_name="IoTEdgeResources", - solution_name="default", - aggregated_alert_name="IoT_Bruteforce_Fail/2019-02-02/dismiss", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/PostIoTSecuritySolutionsSecurityAggregatedAlertDismiss.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/create_jit_network_access_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/create_jit_network_access_policy_example.py deleted file mode 100644 index bf85d3e458b5..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/create_jit_network_access_policy_example.py +++ /dev/null @@ -1,93 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_jit_network_access_policy_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.jit_network_access_policies.create_or_update( - resource_group_name="myRg1", - asc_location="westeurope", - jit_network_access_policy_name="default", - body={ - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", - "kind": "Basic", - "location": "westeurope", - "name": "default", - "properties": { - "provisioningState": "Succeeded", - "requests": [ - { - "requestor": "barbara@contoso.com", - "startTimeUtc": "2018-05-17T08:06:45.5691611Z", - "virtualMachines": [ - { - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", - "ports": [ - { - "allowedSourceAddressPrefix": "192.127.0.2", - "endTimeUtc": "2018-05-17T09:06:45.5691611Z", - "number": 3389, - "status": "Initiated", - "statusReason": "UserRequested", - } - ], - } - ], - } - ], - "virtualMachines": [ - { - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", - "ports": [ - { - "allowedSourceAddressPrefix": "*", - "maxRequestAccessDuration": "PT3H", - "number": 22, - "protocol": "*", - }, - { - "allowedSourceAddressPrefix": "*", - "maxRequestAccessDuration": "PT3H", - "number": 3389, - "protocol": "*", - }, - ], - } - ], - }, - "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/delete_jit_network_access_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/delete_jit_network_access_policy_example.py deleted file mode 100644 index a4008ac8294e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/delete_jit_network_access_policy_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_jit_network_access_policy_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.jit_network_access_policies.delete( - resource_group_name="myRg1", - asc_location="westeurope", - jit_network_access_policy_name="default", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_example.py deleted file mode 100644 index e27175fe9f19..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_jit_network_access_policies_resource_group_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.jit_network_access_policies.list_by_resource_group( - resource_group_name="myRg1", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_location_example.py deleted file mode 100644 index cbdcc01e2a41..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_resource_group_location_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_jit_network_access_policies_resource_group_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.jit_network_access_policies.list_by_resource_group_and_region( - resource_group_name="myRg1", - asc_location="westeurope", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_example.py deleted file mode 100644 index b11b9945cf7c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_jit_network_access_policies_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.jit_network_access_policies.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_location_example.py deleted file mode 100644 index 1124c7787cc5..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policies_subscription_location_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_jit_network_access_policies_subscription_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.jit_network_access_policies.list_by_region( - asc_location="westeurope", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policy_example.py deleted file mode 100644 index 08384b0bec64..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/get_jit_network_access_policy_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_jit_network_access_policy_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.jit_network_access_policies.get( - resource_group_name="myRg1", - asc_location="westeurope", - jit_network_access_policy_name="default", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/initiate_jit_network_access_policy_example.py b/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/initiate_jit_network_access_policy_example.py deleted file mode 100644 index cd9d99a6983a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/jit_network_access_policies/initiate_jit_network_access_policy_example.py +++ /dev/null @@ -1,53 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python initiate_jit_network_access_policy_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.jit_network_access_policies.initiate( - resource_group_name="myRg1", - asc_location="westeurope", - jit_network_access_policy_name="default", - body={ - "justification": "testing a new version of the product", - "virtualMachines": [ - { - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", - "ports": [{"allowedSourceAddressPrefix": "192.127.0.2", "duration": "PT1H", "number": 3389}], - } - ], - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/locations/get_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/locations/get_location_example.py deleted file mode 100644 index ec31f486ed8a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/locations/get_location_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.locations.get( - asc_location="centralus", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Locations/GetLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/locations/get_locations_example.py b/sdk/security/azure-mgmt-security/generated_samples/locations/get_locations_example.py deleted file mode 100644 index c9982419a1d0..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/locations/get_locations_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_locations_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.locations.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Locations/GetLocations_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/get_mde_onboardings_example.py b/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/get_mde_onboardings_example.py deleted file mode 100644 index 69171ba4c5fe..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/get_mde_onboardings_example.py +++ /dev/null @@ -1,40 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_mde_onboardings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.mde_onboardings.get() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-10-01-preview/examples/MdeOnboardings/GetMdeOnboardings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/list_mde_onboardings_example.py b/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/list_mde_onboardings_example.py deleted file mode 100644 index eb62e24db4e4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/mde_onboardings/list_mde_onboardings_example.py +++ /dev/null @@ -1,40 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_mde_onboardings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.mde_onboardings.list() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-10-01-preview/examples/MdeOnboardings/ListMdeOnboardings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/operation_results/get_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/operation_results/get_operation_result.py deleted file mode 100644 index 277a8929fd25..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/operation_results/get_operation_result.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_operation_result.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.operation_results.get( - location="eastus", - operation_id="00000000-0000-0000-0000-000000000000", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-10-01-preview/examples/OperationResults/GetOperationResult.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/operation_statuses/get_operation_status.py b/sdk/security/azure-mgmt-security/generated_samples/operation_statuses/get_operation_status.py deleted file mode 100644 index cc58de907362..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/operation_statuses/get_operation_status.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_operation_status.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.operation_statuses.get( - location="eastus", - operation_id="00000000-0000-0000-0000-000000000000", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-10-01-preview/examples/OperationStatuses/GetOperationStatus.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/operations/list_operations_example.py b/sdk/security/azure-mgmt-security/generated_samples/operations/list_operations_example.py deleted file mode 100644 index a6b716197233..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/operations/list_operations_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_operations_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.operations.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-10-01-preview/examples/Operations/ListOperations_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_by_name_containers_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_by_name_containers_example.py deleted file mode 100644 index 450f9633d0d9..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_by_name_containers_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_resource_pricing_by_name_containers_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.pricings.delete( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/demo-containers-rg/providers/Microsoft.ContainerService/managedClusters/demo-aks-cluster", - pricing_name="Containers", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/DeleteResourcePricingByNameContainers_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_example.py deleted file mode 100644 index 16b452ea5b8a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/delete_resource_pricing_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_resource_pricing_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.pricings.delete( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1", - pricing_name="VirtualMachines", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/DeleteResourcePricing_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_cloud_posture_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_cloud_posture_example.py deleted file mode 100644 index 6de370ddb541..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_cloud_posture_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_pricing_by_name_cloud_posture_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.get( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - pricing_name="CloudPosture", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetPricingByNameCloudPosture_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_containers_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_containers_example.py deleted file mode 100644 index 2bc14b27efba..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_containers_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_pricing_by_name_containers_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.get( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - pricing_name="Containers", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetPricingByNameContainers_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_dns_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_dns_example.py deleted file mode 100644 index 4b5b089a6b39..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_dns_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_pricing_by_name_dns_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.get( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - pricing_name="Dns", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetPricingByNameDns_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_storage_accounts_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_storage_accounts_example.py deleted file mode 100644 index ac7a1e89321b..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_storage_accounts_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_pricing_by_name_storage_accounts_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.get( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - pricing_name="StorageAccounts", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetPricingByNameStorageAccounts_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_virtual_machines_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_virtual_machines_example.py deleted file mode 100644 index 572dd3fb655f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_pricing_by_name_virtual_machines_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_pricing_by_name_virtual_machines_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.get( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - pricing_name="VirtualMachines", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetPricingByNameVirtualMachines_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_containers_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_containers_example.py deleted file mode 100644 index 4752e642623f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_containers_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_resource_pricing_by_name_containers_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.get( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/demo-containers-rg/providers/Microsoft.ContainerService/managedClusters/demo-aks-cluster", - pricing_name="Containers", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetResourcePricingByNameContainers_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_virtual_machines_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_virtual_machines_example.py deleted file mode 100644 index 3ca81c9623a6..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/get_resource_pricing_by_name_virtual_machines_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_resource_pricing_by_name_virtual_machines_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.get( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1", - pricing_name="VirtualMachines", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/GetResourcePricingByNameVirtualMachines_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_example.py deleted file mode 100644 index 5e6ae65488fa..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_pricings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.list( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/ListPricings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_with_plan_filter_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_with_plan_filter_example.py deleted file mode 100644 index a799837e3e99..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/list_pricings_with_plan_filter_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_pricings_with_plan_filter_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.list( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/ListPricingsWithPlanFilter_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/list_resource_pricings_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/list_resource_pricings_example.py deleted file mode 100644 index ff118929d282..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/list_resource_pricings_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_resource_pricings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.list( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/ListResourcePricings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_example.py deleted file mode 100644 index 99b95c0656cb..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_pricing_by_name_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.update( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - pricing_name="CloudPosture", - pricing={"properties": {"pricingTier": "Standard"}}, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/PutPricingByName_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_partial_success_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_partial_success_example.py deleted file mode 100644 index 1b13ef35188f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_by_name_partial_success_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_pricing_by_name_partial_success_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.update( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - pricing_name="CloudPosture", - pricing={"properties": {"pricingTier": "Standard"}}, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/PutPricingByNamePartialSuccess_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_vms_by_name_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_vms_by_name_example.py deleted file mode 100644 index 5da6f17bfc46..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_pricing_vms_by_name_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_pricing_vms_by_name_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.update( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - pricing_name="VirtualMachines", - pricing={"properties": {"enforce": "True", "pricingTier": "Standard", "subPlan": "P2"}}, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/PutPricingVMsByName_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_acr_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_acr_example.py deleted file mode 100644 index 487585c11a14..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_acr_example.py +++ /dev/null @@ -1,52 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_resource_pricing_by_name_containers_acr_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.update( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myContainerRegistry", - pricing_name="Containers", - pricing={ - "properties": { - "extensions": [ - {"isEnabled": "True", "name": "ContainerRegistriesVulnerabilityAssessments"}, - {"isEnabled": "True", "name": "ContainerIntegrityContribution"}, - ], - "pricingTier": "Standard", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/PutResourcePricingByNameContainersACR_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_example.py deleted file mode 100644 index 2a1761f62b20..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_containers_example.py +++ /dev/null @@ -1,59 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_resource_pricing_by_name_containers_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.update( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/demo-containers-rg/providers/Microsoft.ContainerService/managedClusters/demo-aks-cluster", - pricing_name="Containers", - pricing={ - "properties": { - "extensions": [ - {"isEnabled": "True", "name": "ContainerRegistriesVulnerabilityAssessments"}, - {"isEnabled": "True", "name": "ContainerSensor"}, - {"isEnabled": "True", "name": "AgentlessDiscoveryForKubernetes"}, - { - "additionalExtensionProperties": {"ExclusionTags": "[]"}, - "isEnabled": "True", - "name": "AgentlessVmScanning", - }, - {"isEnabled": "True", "name": "ContainerIntegrityContribution"}, - ], - "pricingTier": "Standard", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/PutResourcePricingByNameContainers_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_virtual_machines_example.py b/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_virtual_machines_example.py deleted file mode 100644 index 20e06541ab76..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/pricings/put_resource_pricing_by_name_virtual_machines_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_resource_pricing_by_name_virtual_machines_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.pricings.update( - scope_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1", - pricing_name="virtualMachines", - pricing={"properties": {"pricingTier": "Standard", "subPlan": "P1"}}, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-01-01/examples/Pricings/PutResourcePricingByNameVirtualMachines_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_create_or_update.py b/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_create_or_update.py deleted file mode 100644 index 6509d2489136..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_create_or_update.py +++ /dev/null @@ -1,53 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_endpoint_connections_create_or_update.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.private_endpoint_connections.begin_create_or_update( - resource_group_name="rg", - private_endpoint_connection_name="pe", - private_link_parameters={"privateLinkName": "str"}, - private_endpoint_connection={ - "properties": { - "privateLinkServiceConnectionState": { - "actionsRequired": "None", - "description": "Approved by administrator", - "status": "Approved", - } - } - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateEndpointConnections/PrivateEndpointConnections_CreateOrUpdate.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_delete.py b/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_delete.py deleted file mode 100644 index 1a47fb3ae891..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_delete.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_endpoint_connections_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.private_endpoint_connections.begin_delete( - resource_group_name="rg", - private_endpoint_connection_name="pe", - private_link_parameters={"privateLinkName": "str"}, - ).result() - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateEndpointConnections/PrivateEndpointConnections_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_get.py b/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_get.py deleted file mode 100644 index 484440463878..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_get.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_endpoint_connections_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.private_endpoint_connections.get( - resource_group_name="rg", - private_endpoint_connection_name="pe", - private_link_parameters={"privateLinkName": "str"}, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateEndpointConnections/PrivateEndpointConnections_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_list.py b/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_list.py deleted file mode 100644 index 9767743aa8d2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_endpoint_connections/private_endpoint_connections_list.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_endpoint_connections_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.private_endpoint_connections.list( - resource_group_name="rg", - private_link_parameters={"privateLinkName": "str"}, - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateEndpointConnections/PrivateEndpointConnections_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_get.py b/sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_get.py deleted file mode 100644 index 4ac427738aca..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_get.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_link_resources_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.private_link_resources.get( - resource_group_name="rg", - group_id="containers", - private_link_parameters={"privateLinkName": "str"}, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinkResources/PrivateLinkResources_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_list_by_private_link.py b/sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_list_by_private_link.py deleted file mode 100644 index 70000db00db4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_link_resources/private_link_resources_list_by_private_link.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_link_resources_list_by_private_link.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.private_link_resources.list( - resource_group_name="rg", - private_link_parameters={"privateLinkName": "str"}, - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinkResources/PrivateLinkResources_ListByPrivateLink.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_create.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_create.py deleted file mode 100644 index dcc62a6e2e1a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_create.py +++ /dev/null @@ -1,48 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_links_create.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.private_links.begin_create( - resource_group_name="rg", - private_link_parameters={"privateLinkName": "str"}, - private_link={ - "location": "eastus", - "properties": {}, - "tags": {"environment": "production", "owner": "security-team", "project": "private-links"}, - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_Create.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_delete.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_delete.py deleted file mode 100644 index e24eeca9152a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_delete.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_links_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.private_links.begin_delete( - resource_group_name="rg", - private_link_parameters={"privateLinkName": "str"}, - ).result() - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_get.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_get.py deleted file mode 100644 index b4f78f8682c2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_links_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.private_links.get( - resource_group_name="rg", - private_link_parameters={"privateLinkName": "str"}, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_head.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_head.py deleted file mode 100644 index ed57a2a71fa2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_head.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_links_head.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.private_links.head( - resource_group_name="rg", - private_link_parameters={"privateLinkName": "str"}, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_Head.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list.py deleted file mode 100644 index 94bddae9c3cb..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_links_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.private_links.list( - resource_group_name="rg", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list_by_subscription.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list_by_subscription.py deleted file mode 100644 index 2da2785188ba..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_list_by_subscription.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_links_list_by_subscription.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.private_links.list_by_subscription() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_ListBySubscription.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_update.py b/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_update.py deleted file mode 100644 index 7c5beb2c10b0..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/private_links/private_links_update.py +++ /dev/null @@ -1,46 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python private_links_update.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.private_links.update( - resource_group_name="rg", - private_link_parameters={"privateLinkName": "str"}, - private_link={ - "tags": {"environment": "development", "owner": "security-team-updated", "project": "private-links"} - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2026-01-01/examples/PrivateLinks/PrivateLinks_Update.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_example.py b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_example.py deleted file mode 100644 index a8b13225c57b..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_regulatory_compliance_assessment_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.regulatory_compliance_assessments.get( - regulatory_compliance_standard_name="PCI-DSS-3.2", - regulatory_compliance_control_name="1.1", - regulatory_compliance_assessment_name="968548cb-02b3-8cd2-11f8-0cf64ab1a347", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessment_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_list_example.py b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_list_example.py deleted file mode 100644 index 404bd17f7372..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_assessment_list_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_regulatory_compliance_assessment_list_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.regulatory_compliance_assessments.list( - regulatory_compliance_standard_name="PCI-DSS-3.2", - regulatory_compliance_control_name="1.1", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessmentList_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_example.py b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_example.py deleted file mode 100644 index d85a665e8da6..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_regulatory_compliance_control_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.regulatory_compliance_controls.get( - regulatory_compliance_standard_name="PCI-DSS-3.2", - regulatory_compliance_control_name="1.1", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControl_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_list_example.py b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_list_example.py deleted file mode 100644 index f12401af59de..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_control_list_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_regulatory_compliance_control_list_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.regulatory_compliance_controls.list( - regulatory_compliance_standard_name="PCI-DSS-3.2", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControlList_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_example.py deleted file mode 100644 index e55da2219c34..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_regulatory_compliance_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.regulatory_compliance_standards.get( - regulatory_compliance_standard_name="PCI-DSS-3.2", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_list_example.py b/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_list_example.py deleted file mode 100644 index c4a507bdf311..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/regulatory_compliance/get_regulatory_compliance_standard_list_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_regulatory_compliance_standard_list_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.regulatory_compliance_standards.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandardList_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_example.py deleted file mode 100644 index 1edb8d9d4fe1..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_secure_score_control_definitions_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.secure_score_control_definitions.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_subscription_example.py deleted file mode 100644 index 9703d290e205..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_score_control_definitions/list_secure_score_control_definitions_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_secure_score_control_definitions_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.secure_score_control_definitions.list_by_subscription() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_subscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/get_secure_scores_single_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/get_secure_scores_single_example.py deleted file mode 100644 index fd28a45dcf61..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/get_secure_scores_single_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_secure_scores_single_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.secure_scores.get( - secure_score_name="ascScore", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScores/GetSecureScoresSingle_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_example.py deleted file mode 100644 index ff59a04c8ee6..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_secure_score_controls_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.secure_score_controls.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControls_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_builtin_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_builtin_example.py deleted file mode 100644 index c4c971df60e9..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_builtin_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_secure_score_controls_for_name_builtin_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.secure_score_controls.list_by_secure_score( - secure_score_name="ascScore", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForName_builtin_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_with_expand_builtin_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_with_expand_builtin_example.py deleted file mode 100644 index e8eeb6d37474..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_score_controls_for_name_with_expand_builtin_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_secure_score_controls_for_name_with_expand_builtin_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.secure_score_controls.list_by_secure_score( - secure_score_name="ascScore", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForNameWithExpand_builtin_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_scores_example.py b/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_scores_example.py deleted file mode 100644 index 08853c88cb2e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/secure_scores/list_secure_scores_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_secure_scores_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.secure_scores.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/secureScores/ListSecureScores_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/delete_security_connector_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/delete_security_connector_example.py deleted file mode 100644 index 530da6b5f666..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/delete_security_connector_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_security_connector_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.security_connectors.delete( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2024-08-01-preview/examples/SecurityConnectors/DeleteSecurityConnector_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connector_single_resource_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connector_single_resource_example.py deleted file mode 100644 index 81a24056e3e4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connector_single_resource_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_security_connector_single_resource_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.security_connectors.get( - resource_group_name="exampleResourceGroup", - security_connector_name="exampleSecurityConnectorName", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2024-08-01-preview/examples/SecurityConnectors/GetSecurityConnectorSingleResource_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_resource_group_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_resource_group_example.py deleted file mode 100644 index 232749cfc681..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_resource_group_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_security_connectors_resource_group_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.security_connectors.list_by_resource_group( - resource_group_name="exampleResourceGroup", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2024-08-01-preview/examples/SecurityConnectors/GetSecurityConnectorsResourceGroup_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_subscription_example.py deleted file mode 100644 index d37b4ab45c2e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/get_security_connectors_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_security_connectors_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.security_connectors.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2024-08-01-preview/examples/SecurityConnectors/GetSecurityConnectorsSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/patch_security_connector_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/patch_security_connector_example.py deleted file mode 100644 index 704e53b82125..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/patch_security_connector_example.py +++ /dev/null @@ -1,59 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python patch_security_connector_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.security_connectors.update( - resource_group_name="exampleResourceGroup", - security_connector_name="exampleSecurityConnectorName", - security_connector={ - "etag": "etag value (must be supplied for update)", - "location": "Central US", - "properties": { - "environmentData": {"environmentType": "AwsAccount"}, - "environmentName": "AWS", - "hierarchyIdentifier": "exampleHierarchyId", - "offerings": [ - { - "nativeCloudConnection": {"cloudRoleArn": "arn:aws:iam::00000000:role/ASCMonitor"}, - "offeringType": "CspmMonitorAws", - } - ], - }, - "tags": {}, - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2024-08-01-preview/examples/SecurityConnectors/PatchSecurityConnector_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/put_security_connector_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors/put_security_connector_example.py deleted file mode 100644 index a6faaf17e283..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors/put_security_connector_example.py +++ /dev/null @@ -1,59 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_security_connector_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="a5caac9c-5c04-49af-b3d0-e204f40345d5", - ) - - response = client.security_connectors.create_or_update( - resource_group_name="exampleResourceGroup", - security_connector_name="exampleSecurityConnectorName", - security_connector={ - "etag": "etag value (must be supplied for update)", - "location": "Central US", - "properties": { - "environmentData": {"environmentType": "AwsAccount", "scanInterval": 4}, - "environmentName": "AWS", - "hierarchyIdentifier": "exampleHierarchyId", - "offerings": [ - { - "nativeCloudConnection": {"cloudRoleArn": "arn:aws:iam::00000000:role/ASCMonitor"}, - "offeringType": "CspmMonitorAws", - } - ], - }, - "tags": {}, - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2024-08-01-preview/examples/SecurityConnectors/PutSecurityConnector_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_git_hub_issues_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_git_hub_issues_example.py deleted file mode 100644 index 11413e752ed4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_git_hub_issues_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_git_hub_issues_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - client.git_hub_issues.begin_create( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - owner_name="myGitHubOwner", - repo_name="myGitHubRepo", - ).result() - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateGitHubIssues_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_orgs_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_orgs_example.py deleted file mode 100644 index 3fee7ac1274a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_orgs_example.py +++ /dev/null @@ -1,47 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_or_update_azure_dev_ops_orgs_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_orgs.begin_create_or_update( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - org_name="myAzDevOpsOrg", - azure_dev_ops_org={ - "properties": {"actionableRemediation": {"state": "Enabled"}, "onboardingState": "NotApplicable"} - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsOrgs_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_projects_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_projects_example.py deleted file mode 100644 index 5dd2523774cd..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_projects_example.py +++ /dev/null @@ -1,48 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_or_update_azure_dev_ops_projects_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_projects.begin_create_or_update( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - org_name="myAzDevOpsOrg", - project_name="myAzDevOpsProject", - azure_dev_ops_project={ - "properties": {"actionableRemediation": {"state": "Enabled"}, "onboardingState": "NotApplicable"} - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsProjects_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_repos_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_repos_example.py deleted file mode 100644 index 2095f0690c56..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_azure_dev_ops_repos_example.py +++ /dev/null @@ -1,49 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_or_update_azure_dev_ops_repos_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_repos.begin_create_or_update( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - org_name="myAzDevOpsOrg", - project_name="myAzDevOpsProject", - repo_name="myAzDevOpsRepo", - azure_dev_ops_repository={ - "properties": {"actionableRemediation": {"state": "Enabled"}, "onboardingState": "NotApplicable"} - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsRepos_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_and_future_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_and_future_example.py deleted file mode 100644 index c07b29d6cdcd..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_and_future_example.py +++ /dev/null @@ -1,46 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_or_update_dev_ops_configurations_onboard_current_and_future_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.dev_ops_configurations.begin_create_or_update( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - dev_ops_configuration={ - "properties": {"authorization": {"code": "00000000000000000000"}, "autoDiscovery": "Enabled"} - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_only_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_only_example.py deleted file mode 100644 index aea3cf742743..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_current_only_example.py +++ /dev/null @@ -1,46 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_or_update_dev_ops_configurations_onboard_current_only_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.dev_ops_configurations.begin_create_or_update( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - dev_ops_configuration={ - "properties": {"authorization": {"code": "00000000000000000000"}, "autoDiscovery": "Disabled"} - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentOnly_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_selected_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_selected_example.py deleted file mode 100644 index 58e830803d9f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_onboard_selected_example.py +++ /dev/null @@ -1,50 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_or_update_dev_ops_configurations_onboard_selected_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.dev_ops_configurations.begin_create_or_update( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - dev_ops_configuration={ - "properties": { - "authorization": {"code": "00000000000000000000"}, - "autoDiscovery": "Disabled", - "topLevelInventoryList": ["org1", "org2"], - } - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardSelected_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_with_agentless_configurations_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_with_agentless_configurations_example.py deleted file mode 100644 index af668502036b..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/create_or_update_dev_ops_configurations_with_agentless_configurations_example.py +++ /dev/null @@ -1,56 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_or_update_dev_ops_configurations_with_agentless_configurations_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.dev_ops_configurations.begin_create_or_update( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - dev_ops_configuration={ - "properties": { - "agentlessConfiguration": { - "agentlessAutoDiscovery": "Disabled", - "agentlessEnabled": "Enabled", - "inventoryList": [{"inventoryKind": "AzureDevOpsOrganization", "value": "org1"}], - "inventoryListType": "Inclusion", - "scanners": ["scanner1", "scanner2"], - }, - "authorization": {"code": "00000000000000000000"}, - "autoDiscovery": "Enabled", - } - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsWithAgentlessConfigurations_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/delete_dev_ops_configurations_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/delete_dev_ops_configurations_example.py deleted file mode 100644 index 022598adf215..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/delete_dev_ops_configurations_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_dev_ops_configurations_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - client.dev_ops_configurations.begin_delete( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - ).result() - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/DeleteDevOpsConfigurations_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_orgs_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_orgs_example.py deleted file mode 100644 index 73c85fac5e76..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_orgs_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_azure_dev_ops_orgs_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_orgs.get( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - org_name="myAzDevOpsOrg", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsOrgs_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_projects_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_projects_example.py deleted file mode 100644 index 471144b64c08..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_projects_example.py +++ /dev/null @@ -1,45 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_azure_dev_ops_projects_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_projects.get( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - org_name="myAzDevOpsOrg", - project_name="myAzDevOpsProject", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsProjects_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_repos_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_repos_example.py deleted file mode 100644 index 8312a285d490..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_azure_dev_ops_repos_example.py +++ /dev/null @@ -1,46 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_azure_dev_ops_repos_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_repos.get( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - org_name="myAzDevOpsOrg", - project_name="myAzDevOpsProject", - repo_name="myAzDevOpsRepo", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsRepos_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_example.py deleted file mode 100644 index e60e4a08f2cb..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_dev_ops_configurations_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.dev_ops_configurations.get( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsConfigurations_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_agentless_configurations_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_agentless_configurations_example.py deleted file mode 100644 index b151a67eef5b..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_agentless_configurations_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_dev_ops_configurations_with_agentless_configurations_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.dev_ops_configurations.get( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsConfigurationsWithAgentlessConfigurations_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_capabilities_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_capabilities_example.py deleted file mode 100644 index 650e4d89d9f4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_configurations_with_capabilities_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_dev_ops_configurations_with_capabilities_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.dev_ops_configurations.get( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsConfigurationsWithCapabilities_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_failed_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_failed_example.py deleted file mode 100644 index 3fb0b0a2f79e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_failed_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_dev_ops_operation_results_failed_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.dev_ops_operation_results.get( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - operation_result_id="8d4caace-e7b3-4b3e-af99-73f76829ebcf", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsFailed_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_succeeded_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_succeeded_example.py deleted file mode 100644 index 1bae07846fe2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_dev_ops_operation_results_succeeded_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_dev_ops_operation_results_succeeded_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.dev_ops_operation_results.get( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - operation_result_id="4e826cf1-5c36-4808-a7d2-fb4f5170978b", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsSucceeded_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_owners_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_owners_example.py deleted file mode 100644 index 91877f18071e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_owners_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_git_hub_owners_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.git_hub_owners.get( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - owner_name="myGitHubOwner", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetGitHubOwners_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_repos_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_repos_example.py deleted file mode 100644 index 96390bb59e5a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_hub_repos_example.py +++ /dev/null @@ -1,45 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_git_hub_repos_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.git_hub_repos.get( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - owner_name="myGitHubOwner", - repo_name="myGitHubRepo", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetGitHubRepos_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_groups_example.py deleted file mode 100644 index dc1939a2b8d4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_groups_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_git_lab_groups_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.git_lab_groups.get( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - group_fq_name="myGitLabGroup$mySubGroup", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetGitLabGroups_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_projects_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_projects_example.py deleted file mode 100644 index dcc9063cf161..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/get_git_lab_projects_example.py +++ /dev/null @@ -1,45 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_git_lab_projects_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.git_lab_projects.get( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - group_fq_name="myGitLabGroup$mySubGroup", - project_name="myGitLabProject", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/GetGitLabProjects_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_azure_dev_ops_orgs_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_azure_dev_ops_orgs_example.py deleted file mode 100644 index 809658c6cb1c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_azure_dev_ops_orgs_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_available_azure_dev_ops_orgs_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_orgs.list_available( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListAvailableAzureDevOpsOrgs_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_hub_owners_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_hub_owners_example.py deleted file mode 100644 index b14b0f7733f1..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_hub_owners_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_available_git_hub_owners_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.git_hub_owners.list_available( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitHubOwners_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_lab_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_lab_groups_example.py deleted file mode 100644 index 5ec41ac27b13..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_available_git_lab_groups_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_available_git_lab_groups_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.git_lab_groups.list_available( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitLabGroups_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_orgs_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_orgs_example.py deleted file mode 100644 index b260d06ed3a5..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_orgs_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_azure_dev_ops_orgs_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_orgs.list( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsOrgs_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_projects_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_projects_example.py deleted file mode 100644 index ba3d7e3cf59a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_projects_example.py +++ /dev/null @@ -1,45 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_azure_dev_ops_projects_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_projects.list( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - org_name="myAzDevOpsOrg", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsProjects_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_repos_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_repos_example.py deleted file mode 100644 index 67c498729a88..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_azure_dev_ops_repos_example.py +++ /dev/null @@ -1,46 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_azure_dev_ops_repos_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_repos.list( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - org_name="myAzDevOpsOrg", - project_name="myAzDevOpsProject", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsRepos_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_dev_ops_configurations_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_dev_ops_configurations_example.py deleted file mode 100644 index bc2f4b5daad8..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_dev_ops_configurations_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_dev_ops_configurations_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.dev_ops_configurations.list( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListDevOpsConfigurations_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_owners_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_owners_example.py deleted file mode 100644 index 9e97875ffb4f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_owners_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_git_hub_owners_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.git_hub_owners.list( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListGitHubOwners_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_repos_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_repos_example.py deleted file mode 100644 index 28af6d6dcd80..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_hub_repos_example.py +++ /dev/null @@ -1,45 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_git_hub_repos_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.git_hub_repos.list( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - owner_name="myGitHubOwner", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListGitHubRepos_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_groups_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_groups_example.py deleted file mode 100644 index bb59f26461d7..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_groups_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_git_lab_groups_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.git_lab_groups.list( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListGitLabGroups_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_projects_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_projects_example.py deleted file mode 100644 index 3740e819894d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_projects_example.py +++ /dev/null @@ -1,45 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_git_lab_projects_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.git_lab_projects.list( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - group_fq_name="myGitLabGroup$mySubGroup", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListGitLabProjects_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_subgroups_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_subgroups_example.py deleted file mode 100644 index 54aaabf3fac7..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/list_git_lab_subgroups_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_git_lab_subgroups_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.git_lab_subgroups.list( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - group_fq_name="myGitLabGroup", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/ListGitLabSubgroups_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_orgs_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_orgs_example.py deleted file mode 100644 index a023382660d0..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_orgs_example.py +++ /dev/null @@ -1,47 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_azure_dev_ops_orgs_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_orgs.begin_update( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - org_name="myAzDevOpsOrg", - azure_dev_ops_org={ - "properties": {"actionableRemediation": {"state": "Enabled"}, "onboardingState": "NotApplicable"} - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsOrgs_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_projects_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_projects_example.py deleted file mode 100644 index c332e5ebd29e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_projects_example.py +++ /dev/null @@ -1,48 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_azure_dev_ops_projects_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_projects.begin_update( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - org_name="myAzDevOpsOrg", - project_name="myAzDevOpsProject", - azure_dev_ops_project={ - "properties": {"actionableRemediation": {"state": "Enabled"}, "onboardingState": "NotApplicable"} - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsProjects_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_repos_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_repos_example.py deleted file mode 100644 index 0cf3ff8b1e40..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_azure_dev_ops_repos_example.py +++ /dev/null @@ -1,49 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_azure_dev_ops_repos_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.azure_dev_ops_repos.begin_update( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - org_name="myAzDevOpsOrg", - project_name="myAzDevOpsProject", - repo_name="myAzDevOpsRepo", - azure_dev_ops_repository={ - "properties": {"actionableRemediation": {"state": "Enabled"}, "onboardingState": "NotApplicable"} - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsRepos_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_dev_ops_configurations_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_dev_ops_configurations_example.py deleted file mode 100644 index 6d36e90204d3..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_connectors_dev_ops/update_dev_ops_configurations_example.py +++ /dev/null @@ -1,55 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_dev_ops_configurations_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="0806e1cd-cfda-4ff8-b99c-2b0af42cffd3", - ) - - response = client.dev_ops_configurations.begin_update( - resource_group_name="myRg", - security_connector_name="mySecurityConnectorName", - dev_ops_configuration={ - "properties": { - "agentlessConfiguration": { - "agentlessAutoDiscovery": "Disabled", - "agentlessEnabled": "Enabled", - "inventoryList": [{"inventoryKind": "AzureDevOpsOrganization", "value": "org1"}], - "inventoryListType": "Inclusion", - "scanners": ["scanner1", "scanner2"], - }, - "autoDiscovery": "Enabled", - } - }, - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2025-11-01-preview/examples/SecurityConnectorsDevOps/UpdateDevOpsConfigurations_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_operators/delete_security_operator_by_name_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_operators/delete_security_operator_by_name_example.py deleted file mode 100644 index f8859f8f629b..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_operators/delete_security_operator_by_name_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_security_operator_by_name_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.security_operators.delete( - pricing_name="CloudPosture", - security_operator_name="DefenderCSPMSecurityOperator", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-01-01-preview/examples/SecurityOperators/DeleteSecurityOperatorByName_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_operators/get_security_operator_by_name_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_operators/get_security_operator_by_name_example.py deleted file mode 100644 index 86e159c20bd0..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_operators/get_security_operator_by_name_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_security_operator_by_name_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.security_operators.get( - pricing_name="CloudPosture", - security_operator_name="DefenderCSPMSecurityOperator", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-01-01-preview/examples/SecurityOperators/GetSecurityOperatorByName_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_operators/list_security_operators_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_operators/list_security_operators_example.py deleted file mode 100644 index c0f97dbae034..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_operators/list_security_operators_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_security_operators_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.security_operators.list( - pricing_name="CloudPosture", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-01-01-preview/examples/SecurityOperators/ListSecurityOperators_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_operators/put_security_operator_by_name_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_operators/put_security_operator_by_name_example.py deleted file mode 100644 index aceab20cfe2a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_operators/put_security_operator_by_name_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_security_operator_by_name_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.security_operators.create_or_update( - pricing_name="CloudPosture", - security_operator_name="DefenderCSPMSecurityOperator", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-01-01-preview/examples/SecurityOperators/PutSecurityOperatorByName_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_resource_group_location_example.py deleted file mode 100644 index 24b41f428ed0..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_resource_group_location_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_security_solutions_resource_group_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.security_solutions.get( - resource_group_name="myRg2", - asc_location="centralus", - security_solution_name="paloalto7", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsResourceGroupLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_subscription_example.py deleted file mode 100644 index 85cd33dca4a7..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_solutions/get_security_solutions_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_security_solutions_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.security_solutions.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_example.py deleted file mode 100644 index 85416781b33c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_example.py +++ /dev/null @@ -1,40 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_security_solutions_reference_data_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.security_solutions_reference_data.list() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_location_example.py deleted file mode 100644 index f7f72d2b39f3..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_solutions_reference_data/get_security_solutions_reference_data_subscription_location_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_security_solutions_reference_data_subscription_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.security_solutions_reference_data.list_by_home_region( - asc_location="westcentralus", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscriptionLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_management_group_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_management_group_security_standard_example.py deleted file mode 100644 index 9b914a8104a1..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_management_group_security_standard_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_by_management_group_security_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.security_standards.delete( - scope="providers/Microsoft.Management/managementGroups/contoso", - standard_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/DeleteByManagementGroupSecurityStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_security_connector_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_security_connector_security_standard_example.py deleted file mode 100644 index 6950e21f5b55..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_security_connector_security_standard_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_by_security_connector_security_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.security_standards.delete( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - standard_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/DeleteBySecurityConnectorSecurityStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_subscription_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_subscription_security_standard_example.py deleted file mode 100644 index 3eb802b58a66..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/delete_by_subscription_security_standard_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_by_subscription_security_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.security_standards.delete( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - standard_id="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/DeleteBySubscriptionSecurityStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_management_group_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_management_group_security_standard_example.py deleted file mode 100644 index c402239aa2fc..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_management_group_security_standard_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_by_management_group_security_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.security_standards.get( - scope="providers/Microsoft.Management/managementGroups/contoso", - standard_id="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/GetByManagementGroupSecurityStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_security_connector_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_security_connector_security_standard_example.py deleted file mode 100644 index 00a695814f5b..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_security_connector_security_standard_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_by_security_connector_security_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.security_standards.get( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - standard_id="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/GetBySecurityConnectorSecurityStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_subscription_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_subscription_security_standard_example.py deleted file mode 100644 index ccd0a3769b88..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/get_by_subscription_security_standard_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_by_subscription_security_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.security_standards.get( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - standard_id="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/GetBySubscriptionSecurityStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_management_group_security_standards_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_management_group_security_standards_example.py deleted file mode 100644 index 9ae3d66fb74c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_management_group_security_standards_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_management_group_security_standards_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.security_standards.list( - scope="providers/Microsoft.Management/managementGroups/contoso", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/ListByManagementGroupSecurityStandards_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_security_connector_security_standards_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_security_connector_security_standards_example.py deleted file mode 100644 index 4eaee5c9f4f8..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_security_connector_security_standards_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_security_connector_security_standards_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.security_standards.list( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/ListBySecurityConnectorSecurityStandards_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_subscription_security_standards_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_subscription_security_standards_example.py deleted file mode 100644 index 4b7f7d75ea01..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/list_by_subscription_security_standards_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_subscription_security_standards_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.security_standards.list( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/ListBySubscriptionSecurityStandards_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_management_group_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_management_group_security_standard_example.py deleted file mode 100644 index cce9c7e79c52..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_management_group_security_standard_example.py +++ /dev/null @@ -1,55 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_by_management_group_security_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.security_standards.create_or_update( - scope="providers/Microsoft.Management/managementGroups/contoso", - standard_id="8bb8be0a-6010-4789-812f-e4d661c4ed0e", - standard={ - "properties": { - "assessments": [ - {"assessmentKey": "1195afff-c881-495e-9bc5-1486211ae03f"}, - {"assessmentKey": "dbd0cb49-b563-45e7-9724-889e799fa648"}, - ], - "cloudProviders": ["GCP"], - "description": "description of Azure Test Security Standard 1", - "displayName": "Azure Test Security Standard 1", - "policySetDefinitionId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Authorization/policySetDefinitions/patchorchestration-applicationversions", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/PutByManagementGroupSecurityStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_security_connector_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_security_connector_security_standard_example.py deleted file mode 100644 index 877aa3f70640..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_security_connector_security_standard_example.py +++ /dev/null @@ -1,54 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_by_security_connector_security_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.security_standards.create_or_update( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - standard_id="8bb8be0a-6010-4789-812f-e4d661c4ed0e", - standard={ - "properties": { - "assessments": [ - {"assessmentKey": "1195afff-c881-495e-9bc5-1486211ae03f"}, - {"assessmentKey": "dbd0cb49-b563-45e7-9724-889e799fa648"}, - ], - "cloudProviders": ["GCP"], - "description": "description of Azure Test Security Standard 1", - "displayName": "Azure Test Security Standard 1", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/PutBySecurityConnectorSecurityStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_subscription_security_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_subscription_security_standard_example.py deleted file mode 100644 index 93b4930ae9e4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/security_standards/put_by_subscription_security_standard_example.py +++ /dev/null @@ -1,55 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_by_subscription_security_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.security_standards.create_or_update( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - standard_id="8bb8be0a-6010-4789-812f-e4d661c4ed0e", - standard={ - "properties": { - "assessments": [ - {"assessmentKey": "1195afff-c881-495e-9bc5-1486211ae03f"}, - {"assessmentKey": "dbd0cb49-b563-45e7-9724-889e799fa648"}, - ], - "cloudProviders": ["GCP"], - "description": "description of Azure Test Security Standard 1", - "displayName": "Azure Test Security Standard 1", - "policySetDefinitionId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Authorization/policySetDefinitions/patchorchestration-applicationversions", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/SecurityStandards/PutBySubscriptionSecurityStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_example.py deleted file mode 100644 index 3faa96791214..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_example.py +++ /dev/null @@ -1,40 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_sensitivity_settings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sensitivity_settings.get() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_list_example.py b/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_list_example.py deleted file mode 100644 index cff21a8252d3..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/get_sensitivity_settings_list_example.py +++ /dev/null @@ -1,40 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_sensitivity_settings_list_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sensitivity_settings.list() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettingsList_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/put_sensitivity_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/put_sensitivity_settings_example.py deleted file mode 100644 index e5f78f01a27c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sensitivity_settings/put_sensitivity_settings_example.py +++ /dev/null @@ -1,50 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_sensitivity_settings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sensitivity_settings.create_or_update( - sensitivity_settings={ - "sensitiveInfoTypesIds": [ - "f2f8a7a1-28c0-404b-9ab4-30a0a7af18cb", - "b452f22b-f87d-4f48-8490-ecf0873325b5", - "d59ee8b6-2618-404b-a5e7-aa377cd67543", - ], - "sensitivityThresholdLabelId": "f2f8a7a1-28c0-404b-9ab4-30a0a7af18cb", - "sensitivityThresholdLabelOrder": 2, - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2023-02-15-preview/examples/SensitivitySettings/PutSensitivitySettings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/create_server_vulnerability_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/create_server_vulnerability_assessments_example.py deleted file mode 100644 index f01ce7abb6b7..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/create_server_vulnerability_assessments_example.py +++ /dev/null @@ -1,45 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_server_vulnerability_assessments_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.server_vulnerability_assessment.create_or_update( - resource_group_name="rg1", - resource_namespace="Microsoft.Compute", - resource_type="virtualMachines", - resource_name="vm1", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/CreateServerVulnerabilityAssessments_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/delete_server_vulnerability_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/delete_server_vulnerability_assessments_example.py deleted file mode 100644 index 38692d02255a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/delete_server_vulnerability_assessments_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_server_vulnerability_assessments_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.server_vulnerability_assessment.begin_delete( - resource_group_name="rg1", - resource_namespace="Microsoft.Compute", - resource_type="virtualMachines", - resource_name="vm1", - ).result() - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/DeleteServerVulnerabilityAssessments_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/get_server_vulnerability_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/get_server_vulnerability_assessments_example.py deleted file mode 100644 index ca283886cc84..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/get_server_vulnerability_assessments_example.py +++ /dev/null @@ -1,45 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_server_vulnerability_assessments_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.server_vulnerability_assessment.get( - resource_group_name="rg1", - resource_namespace="Microsoft.Compute", - resource_type="virtualMachines", - resource_name="vm1", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/GetServerVulnerabilityAssessments_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/list_by_extended_resource_server_vulnerability_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/list_by_extended_resource_server_vulnerability_assessments_example.py deleted file mode 100644 index 2bec730452a6..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments/list_by_extended_resource_server_vulnerability_assessments_example.py +++ /dev/null @@ -1,45 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_extended_resource_server_vulnerability_assessments_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.server_vulnerability_assessment.list_by_extended_resource( - resource_group_name="rg1", - resource_namespace="Microsoft.Compute", - resource_type="virtualMachines", - resource_name="vm1", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/ListByExtendedResourceServerVulnerabilityAssessments_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/delete_server_vulnerability_assessments_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/delete_server_vulnerability_assessments_setting_example.py deleted file mode 100644 index c56eaf95608e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/delete_server_vulnerability_assessments_setting_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_server_vulnerability_assessments_setting_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.server_vulnerability_assessments_settings.delete( - setting_kind="azureServersSetting", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/DeleteServerVulnerabilityAssessmentsSetting_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/get_server_vulnerability_assessments_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/get_server_vulnerability_assessments_setting_example.py deleted file mode 100644 index 854922330893..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/get_server_vulnerability_assessments_setting_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_server_vulnerability_assessments_setting_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.server_vulnerability_assessments_settings.get( - setting_kind="azureServersSetting", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/GetServerVulnerabilityAssessmentsSetting_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/list_server_vulnerability_assessments_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/list_server_vulnerability_assessments_settings_example.py deleted file mode 100644 index 96c9b3c03717..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/list_server_vulnerability_assessments_settings_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_server_vulnerability_assessments_settings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.server_vulnerability_assessments_settings.list_by_subscription() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/ListServerVulnerabilityAssessmentsSettings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/put_server_vulnerability_assessments_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/put_server_vulnerability_assessments_setting_example.py deleted file mode 100644 index e41940723468..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/server_vulnerability_assessments_settings/put_server_vulnerability_assessments_setting_example.py +++ /dev/null @@ -1,46 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_server_vulnerability_assessments_setting_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.server_vulnerability_assessments_settings.create_or_update( - setting_kind="azureServersSetting", - server_vulnerability_assessments_setting={ - "kind": "AzureServersSetting", - "properties": {"selectedProvider": "MdeTvm"}, - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/PutServerVulnerabilityAssessmentsSetting_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/settings/get_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/settings/get_setting_example.py deleted file mode 100644 index 1f6014c4cb95..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/settings/get_setting_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_setting_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.settings.get( - setting_name="WDATP", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-05-01/examples/Settings/GetSetting_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/settings/get_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/settings/get_settings_example.py deleted file mode 100644 index 49100e9eb3cd..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/settings/get_settings_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_settings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.settings.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-05-01/examples/Settings/GetSettings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/settings/update_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/settings/update_setting_example.py deleted file mode 100644 index 66bc6be6ae9e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/settings/update_setting_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_setting_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.settings.update( - setting_name="WDATP", - setting={"kind": "DataExportSettings", "properties": {"enabled": True}}, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2022-05-01/examples/Settings/UpdateSetting_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_add.py deleted file mode 100644 index 9869e836c88d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_add.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python arc_machine_baseline_rules_add.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.add( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Add.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_delete.py deleted file mode 100644 index 5fd19c6fbb97..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_delete.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python arc_machine_baseline_rules_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.sql_vulnerability_assessment_baseline_rules.delete( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", - rule_id="VA1234", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_get.py deleted file mode 100644 index 5bff5f75cc4d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python arc_machine_baseline_rules_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.get( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_list.py deleted file mode 100644 index 15c324c82b97..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python arc_machine_baseline_rules_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_put.py deleted file mode 100644 index 8690fd1873ab..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/arc_machine_baseline_rules_put.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python arc_machine_baseline_rules_put.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Put.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_add.py deleted file mode 100644 index 78a1a580b081..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_add.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_managed_instance_baseline_rules_add.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.add( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlManagedInstanceBaselineRules_Add.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_delete.py deleted file mode 100644 index cf21ed8566ef..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_delete.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_managed_instance_baseline_rules_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.sql_vulnerability_assessment_baseline_rules.delete( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - rule_id="VA1234", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlManagedInstanceBaselineRules_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_get.py deleted file mode 100644 index 6e05c0ee8950..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_managed_instance_baseline_rules_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.get( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlManagedInstanceBaselineRules_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_list.py deleted file mode 100644 index a0acde682aeb..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_managed_instance_baseline_rules_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlManagedInstanceBaselineRules_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_put.py deleted file mode 100644 index ca6967f18b20..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_managed_instance_baseline_rules_put.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_managed_instance_baseline_rules_put.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlManagedInstanceBaselineRules_Put.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_add.py deleted file mode 100644 index 20c51b09e558..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_add.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_server_baseline_rules_add.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.add( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlServerBaselineRules_Add.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_delete.py deleted file mode 100644 index dc12cc990ed2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_delete.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_server_baseline_rules_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.sql_vulnerability_assessment_baseline_rules.delete( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - rule_id="VA1234", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlServerBaselineRules_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_get.py deleted file mode 100644 index fb17c2bb43dd..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_server_baseline_rules_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.get( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlServerBaselineRules_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_list.py deleted file mode 100644 index 0f1d452a085f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_server_baseline_rules_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlServerBaselineRules_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_put.py deleted file mode 100644 index 85d532c053a2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_sql_server_baseline_rules_put.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_server_baseline_rules_put.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SqlServerBaselineRules_Put.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_add.py deleted file mode 100644 index 19849e3878b5..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_add.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_synapse_baseline_rules_add.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.add( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SynapseBaselineRules_Add.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_delete.py deleted file mode 100644 index 3f29eb22fe37..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_delete.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_synapse_baseline_rules_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.sql_vulnerability_assessment_baseline_rules.delete( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - rule_id="VA1234", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SynapseBaselineRules_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_get.py deleted file mode 100644 index 376daafc3d72..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_synapse_baseline_rules_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.get( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SynapseBaselineRules_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_list.py deleted file mode 100644 index 669293fae4e0..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_synapse_baseline_rules_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SynapseBaselineRules_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_put.py deleted file mode 100644 index bbe794584f61..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/server_level_synapse_baseline_rules_put.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_synapse_baseline_rules_put.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ServerLevel_SynapseBaselineRules_Put.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_add.py deleted file mode 100644 index 6dacbacd4468..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_add.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_baseline_rules_add.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.add( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlManagedInstanceBaselineRules_Add.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_delete.py deleted file mode 100644 index e3eb544bd217..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_delete.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_baseline_rules_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.sql_vulnerability_assessment_baseline_rules.delete( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", - rule_id="VA1234", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlManagedInstanceBaselineRules_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_get.py deleted file mode 100644 index c7b5bbadc09e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_baseline_rules_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.get( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlManagedInstanceBaselineRules_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_list.py deleted file mode 100644 index d862df0726a9..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_baseline_rules_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlManagedInstanceBaselineRules_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_put.py deleted file mode 100644 index 789c380abedf..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_managed_instance_baseline_rules_put.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_baseline_rules_put.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlManagedInstanceBaselineRules_Put.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_add.py deleted file mode 100644 index 273ebd690b8c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_add.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_baseline_rules_add.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.add( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlServerBaselineRules_Add.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_delete.py deleted file mode 100644 index 3637399f4c54..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_delete.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_baseline_rules_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.sql_vulnerability_assessment_baseline_rules.delete( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", - rule_id="VA1234", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlServerBaselineRules_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_get.py deleted file mode 100644 index 9b3fdc8a1cec..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_baseline_rules_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.get( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlServerBaselineRules_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_list.py deleted file mode 100644 index a9fae12f5a01..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_baseline_rules_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlServerBaselineRules_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_put.py deleted file mode 100644 index f014e6c61619..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/sql_server_baseline_rules_put.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_baseline_rules_put.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SqlServerBaselineRules_Put.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_add.py deleted file mode 100644 index 5b228873e756..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_add.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_baseline_rules_add.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.add( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SynapseBaselineRules_Add.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_delete.py deleted file mode 100644 index 3beb1f7dd9be..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_delete.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_baseline_rules_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.sql_vulnerability_assessment_baseline_rules.delete( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", - rule_id="VA1234", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SynapseBaselineRules_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_get.py deleted file mode 100644 index 230f75c119e2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_baseline_rules_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.get( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SynapseBaselineRules_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_list.py deleted file mode 100644 index 68c50833e5f5..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_baseline_rules_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SynapseBaselineRules_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_put.py deleted file mode 100644 index fa009fbd2d4f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/synapse_baseline_rules_put.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_baseline_rules_put.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/SynapseBaselineRules_Put.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_add.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_add.py deleted file mode 100644 index 57ff2a5c664a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_add.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python virtual_machine_baseline_rules_add.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.add( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/VirtualMachineBaselineRules_Add.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_delete.py deleted file mode 100644 index 893af2bd5656..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_delete.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python virtual_machine_baseline_rules_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.sql_vulnerability_assessment_baseline_rules.delete( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", - rule_id="VA1234", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/VirtualMachineBaselineRules_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_get.py deleted file mode 100644 index bad687b857e5..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python virtual_machine_baseline_rules_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.get( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/VirtualMachineBaselineRules_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_list.py deleted file mode 100644 index 9e17a884f889..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python virtual_machine_baseline_rules_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/VirtualMachineBaselineRules_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_put.py deleted file mode 100644 index 405f91fd7ab4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_baseline_rule_operations/virtual_machine_baseline_rules_put.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python virtual_machine_baseline_rules_put.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_baseline_rules.create_or_update( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", - rule_id="VA1234", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/VirtualMachineBaselineRules_Put.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_get.py deleted file mode 100644 index 95e7281dd9ce..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python arc_machine_scans_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ArcMachineScans_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_list.py deleted file mode 100644 index b536a9384a2d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/arc_machine_scans_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python arc_machine_scans_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ArcMachineScans_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get.py deleted file mode 100644 index fc28603e2845..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_managed_instance_scans_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlManagedInstanceScans_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get_scan_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get_scan_operation_result.py deleted file mode 100644 index 95ee88fd6f29..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_get_scan_operation_result.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_managed_instance_scans_get_scan_operation_result.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get_scan_operation_result( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - operation_id="11111111-2222-3333-4444-555555555555", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlManagedInstanceScans_GetScanOperationResult.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_initiate_scan.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_initiate_scan.py deleted file mode 100644 index 1761772e280e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_initiate_scan.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_managed_instance_scans_initiate_scan.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.begin_initiate_scan( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlManagedInstanceScans_InitiateScan.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_list.py deleted file mode 100644 index 93dea53f677b..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_managed_instance_scans_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_managed_instance_scans_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlManagedInstanceScans_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get.py deleted file mode 100644 index 396312f52b65..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_server_scans_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlServerScans_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get_scan_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get_scan_operation_result.py deleted file mode 100644 index 03cb35ace7e6..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_get_scan_operation_result.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_server_scans_get_scan_operation_result.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get_scan_operation_result( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - operation_id="11111111-2222-3333-4444-555555555555", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlServerScans_GetScanOperationResult.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_initiate_scan.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_initiate_scan.py deleted file mode 100644 index a199148c337c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_initiate_scan.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_server_scans_initiate_scan.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.begin_initiate_scan( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlServerScans_InitiateScan.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_list.py deleted file mode 100644 index 80eba700f05a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_sql_server_scans_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_server_scans_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SqlServerScans_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get.py deleted file mode 100644 index bffa802e9d31..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_synapse_scans_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SynapseScans_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get_scan_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get_scan_operation_result.py deleted file mode 100644 index 2610a805178d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_get_scan_operation_result.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_synapse_scans_get_scan_operation_result.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get_scan_operation_result( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - operation_id="11111111-2222-3333-4444-555555555555", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SynapseScans_GetScanOperationResult.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_initiate_scan.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_initiate_scan.py deleted file mode 100644 index 9613f6cf944f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_initiate_scan.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_synapse_scans_initiate_scan.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.begin_initiate_scan( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SynapseScans_InitiateScan.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_list.py deleted file mode 100644 index 4fdcfaa95fb8..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/server_level_synapse_scans_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_synapse_scans_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/ServerLevel_SynapseScans_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get.py deleted file mode 100644 index beda93464b34..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_scans_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlManagedInstanceScans_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get_scan_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get_scan_operation_result.py deleted file mode 100644 index c1abf338e490..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_get_scan_operation_result.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_scans_get_scan_operation_result.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get_scan_operation_result( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", - operation_id="11111111-2222-3333-4444-555555555555", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlManagedInstanceScans_GetScanOperationResult.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_initiate_scan.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_initiate_scan.py deleted file mode 100644 index c381984c008c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_initiate_scan.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_scans_initiate_scan.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.begin_initiate_scan( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlManagedInstanceScans_InitiateScan.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_list.py deleted file mode 100644 index 462daa7d124e..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_managed_instance_scans_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_scans_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlManagedInstanceScans_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get.py deleted file mode 100644 index fb0e23943576..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_scans_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlServerScans_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get_scan_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get_scan_operation_result.py deleted file mode 100644 index a37591848394..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_get_scan_operation_result.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_scans_get_scan_operation_result.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get_scan_operation_result( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", - operation_id="11111111-2222-3333-4444-555555555555", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlServerScans_GetScanOperationResult.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_initiate_scan.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_initiate_scan.py deleted file mode 100644 index 97d8fddd77dd..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_initiate_scan.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_scans_initiate_scan.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.begin_initiate_scan( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlServerScans_InitiateScan.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_list.py deleted file mode 100644 index 3fcab9b9bc2d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/sql_server_scans_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_scans_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SqlServerScans_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get.py deleted file mode 100644 index 0a3fd8628036..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_scans_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SynapseScans_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get_scan_operation_result.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get_scan_operation_result.py deleted file mode 100644 index a0d678f10be9..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_get_scan_operation_result.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_scans_get_scan_operation_result.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get_scan_operation_result( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/mySqlPool", - operation_id="11111111-2222-3333-4444-555555555555", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SynapseScans_GetScanOperationResult.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_initiate_scan.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_initiate_scan.py deleted file mode 100644 index 622cc22386d0..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_initiate_scan.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_scans_initiate_scan.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.begin_initiate_scan( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", - ).result() - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SynapseScans_InitiateScan.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_list.py deleted file mode 100644 index 0c04e1b42f11..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/synapse_scans_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_scans_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/SynapseScans_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_get.py deleted file mode 100644 index f352cd3ab4be..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python virtual_machine_scans_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.get( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/VirtualMachineScans_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_list.py deleted file mode 100644 index 9e96e68b2bb5..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_operations/virtual_machine_scans_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python virtual_machine_scans_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scans.list( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanOperations/VirtualMachineScans_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_get.py deleted file mode 100644 index 969fd6ddae78..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_get.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python arc_machine_scan_results_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.get( - scan_id="Scheduled-20200623", - scan_result_id="VA1234", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_list.py deleted file mode 100644 index e992fdeda0e4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/arc_machine_scan_results_list.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python arc_machine_scan_results_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.list( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_get.py deleted file mode 100644 index dc061c49a7dc..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_get.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_managed_instance_scan_results_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.get( - scan_id="Scheduled-20200623", - scan_result_id="VA1234", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ServerLevel_SqlManagedInstanceScanResults_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_list.py deleted file mode 100644 index 2d4fea4b7233..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_managed_instance_scan_results_list.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_managed_instance_scan_results_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.list( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ServerLevel_SqlManagedInstanceScanResults_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_get.py deleted file mode 100644 index 635b544ebd95..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_get.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_server_scan_results_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.get( - scan_id="Scheduled-20200623", - scan_result_id="VA1234", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ServerLevel_SqlServerScanResults_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_list.py deleted file mode 100644 index 8594068e88a5..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_sql_server_scan_results_list.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_sql_server_scan_results_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.list( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ServerLevel_SqlServerScanResults_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_get.py deleted file mode 100644 index 8d6c0ea18424..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_get.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_synapse_scan_results_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.get( - scan_id="Scheduled-20200623", - scan_result_id="VA1234", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ServerLevel_SynapseScanResults_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_list.py deleted file mode 100644 index 9533e46afb27..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/server_level_synapse_scan_results_list.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python server_level_synapse_scan_results_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.list( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ServerLevel_SynapseScanResults_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_get.py deleted file mode 100644 index 0d2b7934370f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_get.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_scan_results_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.get( - scan_id="Scheduled-20200623", - scan_result_id="VA1234", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/SqlManagedInstanceScanResults_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_list.py deleted file mode 100644 index 6db10b30b77c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_managed_instance_scan_results_list.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_scan_results_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.list( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance/databases/db", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/SqlManagedInstanceScanResults_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_get.py deleted file mode 100644 index 1ab09553c6ed..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_get.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_scan_results_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.get( - scan_id="Scheduled-20200623", - scan_result_id="VA1234", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/SqlServerScanResults_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_list.py deleted file mode 100644 index 0127b5a98dd0..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/sql_server_scan_results_list.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_scan_results_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.list( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer/databases/db", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/SqlServerScanResults_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_get.py deleted file mode 100644 index cd7465983dc8..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_get.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_scan_results_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.get( - scan_id="Scheduled-20200623", - scan_result_id="VA1234", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/SynapseScanResults_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_list.py deleted file mode 100644 index ce9eba184ba7..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/synapse_scan_results_list.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_scan_results_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.list( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace/sqlPools/myPool", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/SynapseScanResults_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_get.py deleted file mode 100644 index 6c723a2940d8..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_get.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python virtual_machine_scan_results_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.get( - scan_id="Scheduled-20200623", - scan_result_id="VA1234", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/VirtualMachineScanResults_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_list.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_list.py deleted file mode 100644 index 32c13b47b44c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_scan_results_operations/virtual_machine_scan_results_list.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python virtual_machine_scan_results_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_scan_results.list( - scan_id="Scheduled-20200623", - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Compute/virtualMachines/myVm/sqlServers/server1/databases/master", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/VirtualMachineScanResults_List.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_delete.py deleted file mode 100644 index 6bfbf5273c3d..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_delete.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_settings_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.sql_vulnerability_assessment_settings.delete( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SqlManagedInstanceSettings_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_get.py deleted file mode 100644 index 70a5d690ccdf..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_get.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_settings_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_settings.get( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SqlManagedInstanceSettings_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_put.py deleted file mode 100644 index 622c8dfeb7da..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_managed_instance_settings_put.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_managed_instance_settings_put.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_settings.create_or_update( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/managedInstances/myManagedInstance", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SqlManagedInstanceSettings_Put.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_delete.py deleted file mode 100644 index 2e5eb2b66804..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_delete.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_settings_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.sql_vulnerability_assessment_settings.delete( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SqlServerSettings_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_get.py deleted file mode 100644 index d9da549b83b9..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_get.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_settings_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_settings.get( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SqlServerSettings_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_put.py deleted file mode 100644 index b9b53711011f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/sql_server_settings_put.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python sql_server_settings_put.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_settings.create_or_update( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Sql/servers/myServer", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SqlServerSettings_Put.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_delete.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_delete.py deleted file mode 100644 index c9a8b0a9d6b1..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_delete.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_settings_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.sql_vulnerability_assessment_settings.delete( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SynapseSettings_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_get.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_get.py deleted file mode 100644 index 531def942f40..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_get.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_settings_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_settings.get( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SynapseSettings_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_put.py b/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_put.py deleted file mode 100644 index ec8bd68ba27a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sql_vulnerability_assessments_settings_operations/synapse_settings_put.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python synapse_settings_put.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sql_vulnerability_assessment_settings.create_or_update( - resource_id="subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.Synapse/workspaces/myWorkspace", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2026-04-01-preview/examples/sqlVulnerabilityAssessmentsSettingsOperations/SynapseSettings_Put.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/delete_standard_assignment.py b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/delete_standard_assignment.py deleted file mode 100644 index 644975b8a1c8..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/delete_standard_assignment.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_standard_assignment.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - client.standard_assignments.delete( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - standard_assignment_name="ad9a8e26-29d9-4829-bb30-e597a58cdbb8", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/StandardAssignments/DeleteStandardAssignment.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/get_standard_assignment.py b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/get_standard_assignment.py deleted file mode 100644 index e15b5005f807..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/get_standard_assignment.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_standard_assignment.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.standard_assignments.get( - resource_id="providers/Microsoft.Management/managementGroups/contoso", - standard_assignment_name="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/StandardAssignments/GetStandardAssignment.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/list_standard_assignments.py b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/list_standard_assignments.py deleted file mode 100644 index 07c49ee89f58..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/list_standard_assignments.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_standard_assignments.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.standard_assignments.list( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/StandardAssignments/ListStandardAssignments.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_exemption_standard_assignment.py b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_exemption_standard_assignment.py deleted file mode 100644 index dc794a8919ba..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_exemption_standard_assignment.py +++ /dev/null @@ -1,58 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_exemption_standard_assignment.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.standard_assignments.create( - resource_id="subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/ANAT_TEST_RG/providers/Microsoft.Compute/virtualMachines/anatTestE2LA", - standard_assignment_name="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - standard_assignment={ - "properties": { - "assignedStandard": { - "id": "/providers/Microsoft.Security/securityStandards/1f3afdf9-d0c9-4c3d-847f-89da613e70a8" - }, - "description": "Exemption description", - "displayName": "Test exemption", - "effect": "Exempt", - "exemptionData": { - "assignedAssessment": {"assessmentKey": "1195afff-c881-495e-9bc5-1486211ae03f"}, - "exemptionCategory": "waiver", - }, - "expiresOn": "2022-05-01T19:50:47.083633Z", - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/StandardAssignments/PutExemptionStandardAssignment.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_standard_assignment.py b/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_standard_assignment.py deleted file mode 100644 index bd7bb42b77bd..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/standard_assignments/put_standard_assignment.py +++ /dev/null @@ -1,54 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_standard_assignment.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.standard_assignments.create( - resource_id="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - standard_assignment_name="1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - standard_assignment={ - "properties": { - "assignedStandard": { - "id": "/providers/Microsoft.Security/securityStandards/1f3afdf9-d0c9-4c3d-847f-89da613e70a8" - }, - "description": "Set of policies monitored by Azure Security Center for cross cloud", - "displayName": "ASC Default", - "effect": "Audit", - "excludedScopes": [], - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2024-08-01/examples/StandardAssignments/PutStandardAssignment.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standards/delete_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/standards/delete_standard_example.py deleted file mode 100644 index 9cbf7486c1a4..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/standards/delete_standard_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.standards.delete( - resource_group_name="myResourceGroup", - standard_id="8bb8be0a-6010-4789-812f-e4d661c4ed0e", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Standards/DeleteStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standards/get_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/standards/get_standard_example.py deleted file mode 100644 index 8f5da4d0ecd8..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/standards/get_standard_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.standards.get( - resource_group_name="myResourceGroup", - standard_id="21300918-b2e3-0346-785f-c77ff57d243b", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Standards/GetStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standards/list_by_subscription_standards_example.py b/sdk/security/azure-mgmt-security/generated_samples/standards/list_by_subscription_standards_example.py deleted file mode 100644 index 3137c9010124..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/standards/list_by_subscription_standards_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_by_subscription_standards_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.standards.list_by_subscription() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Standards/ListBySubscriptionStandards_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standards/list_standards_example.py b/sdk/security/azure-mgmt-security/generated_samples/standards/list_standards_example.py deleted file mode 100644 index 6d06712633fb..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/standards/list_standards_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_standards_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.standards.list( - resource_group_name="myResourceGroup", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Standards/ListStandards_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/standards/put_standard_example.py b/sdk/security/azure-mgmt-security/generated_samples/standards/put_standard_example.py deleted file mode 100644 index e0df0cff3139..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/standards/put_standard_example.py +++ /dev/null @@ -1,55 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python put_standard_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.standards.create_or_update( - resource_group_name="myResourceGroup", - standard_id="8bb8be0a-6010-4789-812f-e4d661c4ed0e", - standard={ - "properties": { - "category": "SecurityCenter", - "components": [ - {"key": "1195afff-c881-495e-9bc5-1486211ae03f"}, - {"key": "dbd0cb49-b563-45e7-9724-889e799fa648"}, - ], - "description": "description of Azure Test Security Standard 1", - "displayName": "Azure Test Security Standard 1", - "supportedClouds": ["GCP"], - } - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2021-08-01-preview/examples/Standards/PutStandard_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/get_sub_assessment_example.py b/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/get_sub_assessment_example.py deleted file mode 100644 index 630a567f7dfd..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/get_sub_assessment_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_sub_assessment_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sub_assessments.get( - scope="subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/DEMORG/providers/Microsoft.Compute/virtualMachines/vm2", - assessment_name="1195afff-c881-495e-9bc5-1486211ae03f", - sub_assessment_name="95f7da9c-a2a4-1322-0758-fcd24ef09b85", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/SubAssessments/GetSubAssessment_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_sub_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_sub_assessments_example.py deleted file mode 100644 index 688b2b0acda2..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_sub_assessments_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_sub_assessments_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sub_assessments.list( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - assessment_name="82e20e14-edc5-4373-bfc4-f13121257c37", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubAssessments_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_subscription_sub_assessments_example.py b/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_subscription_sub_assessments_example.py deleted file mode 100644 index 381e35042d08..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/sub_assessments/list_subscription_sub_assessments_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python list_subscription_sub_assessments_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="SUBSCRIPTION_ID", - ) - - response = client.sub_assessments.list_all( - scope="subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubscriptionSubAssessments_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_resource_group_location_example.py deleted file mode 100644 index 33368e813e16..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_resource_group_location_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_task_resource_group_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.tasks.get_resource_group_level_task( - resource_group_name="myRg", - asc_location="westeurope", - task_name="d55b4dc0-779c-c66c-33e5-d7bce24c4222", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/GetTaskResourceGroupLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_subscription_location_example.py deleted file mode 100644 index 96bc73b2f6f3..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_task_subscription_location_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_task_subscription_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.tasks.get_subscription_level_task( - asc_location="westeurope", - task_name="62609ee7-d0a5-8616-9fe4-1df5cca7758d", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/GetTaskSubscriptionLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_resource_group_location_example.py deleted file mode 100644 index 82ed389acf10..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_resource_group_location_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_tasks_resource_group_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.tasks.list_by_resource_group( - resource_group_name="myRg", - asc_location="westeurope", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/GetTasksResourceGroupLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_example.py deleted file mode 100644 index d417915276bb..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_tasks_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.tasks.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_location_example.py deleted file mode 100644 index 33a67164a953..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/get_tasks_subscription_location_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_tasks_subscription_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.tasks.list_by_home_region( - asc_location="westeurope", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscriptionLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_resource_group_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_resource_group_location_example.py deleted file mode 100644 index 210d2e5ed381..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_resource_group_location_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_task_resource_group_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.tasks.update_resource_group_level_task_state( - resource_group_name="myRg", - asc_location="westeurope", - task_name="d55b4dc0-779c-c66c-33e5-d7bce24c4222", - task_update_action_type="Dismiss", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskResourceGroupLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_subscription_location_example.py deleted file mode 100644 index 1d4629bb9505..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/tasks/update_task_subscription_location_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_task_subscription_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.tasks.update_subscription_level_task_state( - asc_location="westeurope", - task_name="62609ee7-d0a5-8616-9fe4-1df5cca7758d", - task_update_action_type="Dismiss", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskSubscriptionLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_example.py b/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_example.py deleted file mode 100644 index d89c8c0d770f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_example.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_topology_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="3eeab341-f466-499c-a8be-85427e154bad", - ) - - response = client.topology.get( - resource_group_name="myservers", - asc_location="centralus", - topology_resource_name="vnets", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/Topology/GetTopology_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_example.py b/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_example.py deleted file mode 100644 index 3d70a5f09f6c..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_topology_subscription_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="3eeab341-f466-499c-a8be-85427e154bad", - ) - - response = client.topology.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_location_example.py b/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_location_example.py deleted file mode 100644 index 235a34ba9737..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/topology/get_topology_subscription_location_example.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_topology_subscription_location_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="3eeab341-f466-499c-a8be-85427e154bad", - ) - - response = client.topology.list_by_home_region( - asc_location="centralus", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/create_workspace_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/create_workspace_setting_example.py deleted file mode 100644 index eea52892e6f1..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/create_workspace_setting_example.py +++ /dev/null @@ -1,51 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python create_workspace_setting_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.workspace_settings.create( - workspace_setting_name="default", - workspace_setting={ - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/workspaceSettings/default", - "name": "default", - "properties": { - "scope": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - "workspaceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", - }, - "type": "Microsoft.Security/workspaceSettings", - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/WorkspaceSettings/CreateWorkspaceSetting_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/delete_workspace_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/delete_workspace_setting_example.py deleted file mode 100644 index a08d9310db8a..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/delete_workspace_setting_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python delete_workspace_setting_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - client.workspace_settings.delete( - workspace_setting_name="default", - ) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/WorkspaceSettings/DeleteWorkspaceSetting_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_setting_example.py deleted file mode 100644 index 6f79c20a8e44..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_setting_example.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_workspace_setting_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.workspace_settings.get( - workspace_setting_name="default", - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSetting_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_settings_example.py b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_settings_example.py deleted file mode 100644 index fbea8b9a489f..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/get_workspace_settings_example.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python get_workspace_settings_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.workspace_settings.list() - for item in response: - print(item) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSettings_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/update_workspace_setting_example.py b/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/update_workspace_setting_example.py deleted file mode 100644 index 8e5873d78f25..000000000000 --- a/sdk/security/azure-mgmt-security/generated_samples/workspace_settings/update_workspace_setting_example.py +++ /dev/null @@ -1,50 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from azure.identity import DefaultAzureCredential - -from azure.mgmt.security import SecurityCenter - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-security -# USAGE - python update_workspace_setting_example.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = SecurityCenter( - credential=DefaultAzureCredential(), - subscription_id="20ff7fc3-e762-44dd-bd96-b71116dcdc23", - ) - - response = client.workspace_settings.update( - workspace_setting_name="default", - workspace_setting={ - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/workspaceSettings/default", - "name": "default", - "properties": { - "workspaceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace" - }, - "type": "Microsoft.Security/workspaceSettings", - }, - ) - print(response) - - -# x-ms-original-file: specification/security/resource-manager/Microsoft.Security/Security/preview/2017-08-01-preview/examples/WorkspaceSettings/UpdateWorkspaceSetting_example.json -if __name__ == "__main__": - main() diff --git a/sdk/security/azure-mgmt-security/generated_tests/conftest.py b/sdk/security/azure-mgmt-security/generated_tests/conftest.py index 597418983477..6153b8893b28 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/conftest.py +++ b/sdk/security/azure-mgmt-security/generated_tests/conftest.py @@ -2,7 +2,7 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import os @@ -21,14 +21,14 @@ # For security, please avoid record sensitive identity information in recordings @pytest.fixture(scope="session", autouse=True) def add_sanitizers(test_proxy): - securitycenter_subscription_id = os.environ.get("AZURE_SUBSCRIPTION_ID", "00000000-0000-0000-0000-000000000000") - securitycenter_tenant_id = os.environ.get("AZURE_TENANT_ID", "00000000-0000-0000-0000-000000000000") - securitycenter_client_id = os.environ.get("AZURE_CLIENT_ID", "00000000-0000-0000-0000-000000000000") - securitycenter_client_secret = os.environ.get("AZURE_CLIENT_SECRET", "00000000-0000-0000-0000-000000000000") - add_general_regex_sanitizer(regex=securitycenter_subscription_id, value="00000000-0000-0000-0000-000000000000") - add_general_regex_sanitizer(regex=securitycenter_tenant_id, value="00000000-0000-0000-0000-000000000000") - add_general_regex_sanitizer(regex=securitycenter_client_id, value="00000000-0000-0000-0000-000000000000") - add_general_regex_sanitizer(regex=securitycenter_client_secret, value="00000000-0000-0000-0000-000000000000") + securitymanagement_subscription_id = os.environ.get("AZURE_SUBSCRIPTION_ID", "00000000-0000-0000-0000-000000000000") + securitymanagement_tenant_id = os.environ.get("AZURE_TENANT_ID", "00000000-0000-0000-0000-000000000000") + securitymanagement_client_id = os.environ.get("AZURE_CLIENT_ID", "00000000-0000-0000-0000-000000000000") + securitymanagement_client_secret = os.environ.get("AZURE_CLIENT_SECRET", "00000000-0000-0000-0000-000000000000") + add_general_regex_sanitizer(regex=securitymanagement_subscription_id, value="00000000-0000-0000-0000-000000000000") + add_general_regex_sanitizer(regex=securitymanagement_tenant_id, value="00000000-0000-0000-0000-000000000000") + add_general_regex_sanitizer(regex=securitymanagement_client_id, value="00000000-0000-0000-0000-000000000000") + add_general_regex_sanitizer(regex=securitymanagement_client_secret, value="00000000-0000-0000-0000-000000000000") add_header_regex_sanitizer(key="Set-Cookie", value="[set-cookie;]") add_header_regex_sanitizer(key="Cookie", value="cookie;") diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_connectors_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_connectors_operations.py deleted file mode 100644 index 23e4cd1e7442..000000000000 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_connectors_operations.py +++ /dev/null @@ -1,76 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import pytest -from azure.mgmt.security import SecurityCenter - -from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy - -AZURE_LOCATION = "eastus" - - -@pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterConnectorsOperations(AzureMgmtRecordedTestCase): - def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_connectors_list(self, resource_group): - response = self.client.connectors.list( - api_version="2020-01-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_connectors_get(self, resource_group): - response = self.client.connectors.get( - connector_name="str", - api_version="2020-01-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_connectors_create_or_update(self, resource_group): - response = self.client.connectors.create_or_update( - connector_name="str", - connector_setting={ - "authenticationDetails": "authentication_details_properties", - "hybridComputeSettings": { - "autoProvision": "str", - "hybridComputeProvisioningState": "str", - "proxyServer": {"ip": "str", "port": "str"}, - "region": "str", - "resourceGroupName": "str", - "servicePrincipal": {"applicationId": "str", "secret": "str"}, - }, - "id": "str", - "name": "str", - "type": "str", - }, - api_version="2020-01-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_connectors_delete(self, resource_group): - response = self.client.connectors.delete( - connector_name="str", - api_version="2020-01-01-preview", - ) - - # please add some check logic here by yourself - # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_connectors_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_connectors_operations_async.py deleted file mode 100644 index 735768ba7d25..000000000000 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_connectors_operations_async.py +++ /dev/null @@ -1,77 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import pytest -from azure.mgmt.security.aio import SecurityCenter - -from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer -from devtools_testutils.aio import recorded_by_proxy_async - -AZURE_LOCATION = "eastus" - - -@pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterConnectorsOperationsAsync(AzureMgmtRecordedTestCase): - def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_connectors_list(self, resource_group): - response = self.client.connectors.list( - api_version="2020-01-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_connectors_get(self, resource_group): - response = await self.client.connectors.get( - connector_name="str", - api_version="2020-01-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_connectors_create_or_update(self, resource_group): - response = await self.client.connectors.create_or_update( - connector_name="str", - connector_setting={ - "authenticationDetails": "authentication_details_properties", - "hybridComputeSettings": { - "autoProvision": "str", - "hybridComputeProvisioningState": "str", - "proxyServer": {"ip": "str", "port": "str"}, - "region": "str", - "resourceGroupName": "str", - "servicePrincipal": {"applicationId": "str", "secret": "str"}, - }, - "id": "str", - "name": "str", - "type": "str", - }, - api_version="2020-01-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_connectors_delete(self, resource_group): - response = await self.client.connectors.delete( - connector_name="str", - api_version="2020-01-01-preview", - ) - - # please add some check logic here by yourself - # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_assessment_automations_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_assessment_automations_operations.py deleted file mode 100644 index 089c03226785..000000000000 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_assessment_automations_operations.py +++ /dev/null @@ -1,87 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import pytest -from azure.mgmt.security import SecurityCenter - -from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy - -AZURE_LOCATION = "eastus" - - -@pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterCustomAssessmentAutomationsOperations(AzureMgmtRecordedTestCase): - def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_custom_assessment_automations_get(self, resource_group): - response = self.client.custom_assessment_automations.get( - resource_group_name=resource_group.name, - custom_assessment_automation_name="str", - api_version="2021-07-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_custom_assessment_automations_create(self, resource_group): - response = self.client.custom_assessment_automations.create( - resource_group_name=resource_group.name, - custom_assessment_automation_name="str", - custom_assessment_automation_body={ - "compressedQuery": "str", - "description": "str", - "displayName": "str", - "id": "str", - "name": "str", - "remediationDescription": "str", - "severity": "Low", - "supportedCloud": "AWS", - "type": "str", - }, - api_version="2021-07-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_custom_assessment_automations_delete(self, resource_group): - response = self.client.custom_assessment_automations.delete( - resource_group_name=resource_group.name, - custom_assessment_automation_name="str", - api_version="2021-07-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_custom_assessment_automations_list_by_resource_group(self, resource_group): - response = self.client.custom_assessment_automations.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2021-07-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_custom_assessment_automations_list_by_subscription(self, resource_group): - response = self.client.custom_assessment_automations.list_by_subscription( - api_version="2021-07-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_assessment_automations_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_assessment_automations_operations_async.py deleted file mode 100644 index bd791d269655..000000000000 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_assessment_automations_operations_async.py +++ /dev/null @@ -1,88 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import pytest -from azure.mgmt.security.aio import SecurityCenter - -from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer -from devtools_testutils.aio import recorded_by_proxy_async - -AZURE_LOCATION = "eastus" - - -@pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterCustomAssessmentAutomationsOperationsAsync(AzureMgmtRecordedTestCase): - def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_custom_assessment_automations_get(self, resource_group): - response = await self.client.custom_assessment_automations.get( - resource_group_name=resource_group.name, - custom_assessment_automation_name="str", - api_version="2021-07-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_custom_assessment_automations_create(self, resource_group): - response = await self.client.custom_assessment_automations.create( - resource_group_name=resource_group.name, - custom_assessment_automation_name="str", - custom_assessment_automation_body={ - "compressedQuery": "str", - "description": "str", - "displayName": "str", - "id": "str", - "name": "str", - "remediationDescription": "str", - "severity": "Low", - "supportedCloud": "AWS", - "type": "str", - }, - api_version="2021-07-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_custom_assessment_automations_delete(self, resource_group): - response = await self.client.custom_assessment_automations.delete( - resource_group_name=resource_group.name, - custom_assessment_automation_name="str", - api_version="2021-07-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_custom_assessment_automations_list_by_resource_group(self, resource_group): - response = self.client.custom_assessment_automations.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2021-07-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_custom_assessment_automations_list_by_subscription(self, resource_group): - response = self.client.custom_assessment_automations.list_by_subscription( - api_version="2021-07-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_entity_store_assignments_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_entity_store_assignments_operations.py deleted file mode 100644 index 2e1a63607e4b..000000000000 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_entity_store_assignments_operations.py +++ /dev/null @@ -1,77 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import pytest -from azure.mgmt.security import SecurityCenter - -from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy - -AZURE_LOCATION = "eastus" - - -@pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterCustomEntityStoreAssignmentsOperations(AzureMgmtRecordedTestCase): - def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_custom_entity_store_assignments_get(self, resource_group): - response = self.client.custom_entity_store_assignments.get( - resource_group_name=resource_group.name, - custom_entity_store_assignment_name="str", - api_version="2021-07-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_custom_entity_store_assignments_create(self, resource_group): - response = self.client.custom_entity_store_assignments.create( - resource_group_name=resource_group.name, - custom_entity_store_assignment_name="str", - custom_entity_store_assignment_request_body={"principal": "str"}, - api_version="2021-07-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_custom_entity_store_assignments_delete(self, resource_group): - response = self.client.custom_entity_store_assignments.delete( - resource_group_name=resource_group.name, - custom_entity_store_assignment_name="str", - api_version="2021-07-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_custom_entity_store_assignments_list_by_resource_group(self, resource_group): - response = self.client.custom_entity_store_assignments.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2021-07-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_custom_entity_store_assignments_list_by_subscription(self, resource_group): - response = self.client.custom_entity_store_assignments.list_by_subscription( - api_version="2021-07-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_entity_store_assignments_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_entity_store_assignments_operations_async.py deleted file mode 100644 index adfd5a4e43ee..000000000000 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_entity_store_assignments_operations_async.py +++ /dev/null @@ -1,78 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import pytest -from azure.mgmt.security.aio import SecurityCenter - -from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer -from devtools_testutils.aio import recorded_by_proxy_async - -AZURE_LOCATION = "eastus" - - -@pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterCustomEntityStoreAssignmentsOperationsAsync(AzureMgmtRecordedTestCase): - def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_custom_entity_store_assignments_get(self, resource_group): - response = await self.client.custom_entity_store_assignments.get( - resource_group_name=resource_group.name, - custom_entity_store_assignment_name="str", - api_version="2021-07-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_custom_entity_store_assignments_create(self, resource_group): - response = await self.client.custom_entity_store_assignments.create( - resource_group_name=resource_group.name, - custom_entity_store_assignment_name="str", - custom_entity_store_assignment_request_body={"principal": "str"}, - api_version="2021-07-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_custom_entity_store_assignments_delete(self, resource_group): - response = await self.client.custom_entity_store_assignments.delete( - resource_group_name=resource_group.name, - custom_entity_store_assignment_name="str", - api_version="2021-07-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_custom_entity_store_assignments_list_by_resource_group(self, resource_group): - response = self.client.custom_entity_store_assignments.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2021-07-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_custom_entity_store_assignments_list_by_subscription(self, resource_group): - response = self.client.custom_entity_store_assignments.list_by_subscription( - api_version="2021-07-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_software_inventories_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_software_inventories_operations.py deleted file mode 100644 index a17633630685..000000000000 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_software_inventories_operations.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import pytest -from azure.mgmt.security import SecurityCenter - -from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy - -AZURE_LOCATION = "eastus" - - -@pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSoftwareInventoriesOperations(AzureMgmtRecordedTestCase): - def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_software_inventories_list_by_extended_resource(self, resource_group): - response = self.client.software_inventories.list_by_extended_resource( - resource_group_name=resource_group.name, - resource_namespace="str", - resource_type="str", - resource_name="str", - api_version="2021-05-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_software_inventories_list_by_subscription(self, resource_group): - response = self.client.software_inventories.list_by_subscription( - api_version="2021-05-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_software_inventories_get(self, resource_group): - response = self.client.software_inventories.get( - resource_group_name=resource_group.name, - resource_namespace="str", - resource_type="str", - resource_name="str", - software_name="str", - api_version="2021-05-01-preview", - ) - - # please add some check logic here by yourself - # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_software_inventories_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_center_software_inventories_operations_async.py deleted file mode 100644 index f1e90e9a6565..000000000000 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_software_inventories_operations_async.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import pytest -from azure.mgmt.security.aio import SecurityCenter - -from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer -from devtools_testutils.aio import recorded_by_proxy_async - -AZURE_LOCATION = "eastus" - - -@pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSoftwareInventoriesOperationsAsync(AzureMgmtRecordedTestCase): - def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_software_inventories_list_by_extended_resource(self, resource_group): - response = self.client.software_inventories.list_by_extended_resource( - resource_group_name=resource_group.name, - resource_namespace="str", - resource_type="str", - resource_name="str", - api_version="2021-05-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_software_inventories_list_by_subscription(self, resource_group): - response = self.client.software_inventories.list_by_subscription( - api_version="2021-05-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_software_inventories_get(self, resource_group): - response = await self.client.software_inventories.get( - resource_group_name=resource_group.name, - resource_namespace="str", - resource_type="str", - resource_name="str", - software_name="str", - api_version="2021-05-01-preview", - ) - - # please add some check logic here by yourself - # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_advanced_threat_protection_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_advanced_threat_protection_operations.py similarity index 64% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_advanced_threat_protection_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_advanced_threat_protection_operations.py index a9273462c31d..7cdb6edeffa5 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_advanced_threat_protection_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_advanced_threat_protection_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAdvancedThreatProtectionOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAdvancedThreatProtectionOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -35,7 +35,20 @@ def test_advanced_threat_protection_get(self, resource_group): def test_advanced_threat_protection_create(self, resource_group): response = self.client.advanced_threat_protection.create( resource_id="str", - advanced_threat_protection_setting={"id": "str", "isEnabled": bool, "name": "str", "type": "str"}, + advanced_threat_protection_setting={ + "id": "str", + "name": "str", + "properties": {"isEnabled": bool}, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2019-01-01", setting_name="current", ) diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_advanced_threat_protection_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_advanced_threat_protection_operations_async.py similarity index 64% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_advanced_threat_protection_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_advanced_threat_protection_operations_async.py index fd3ff38edd7b..df5b83b48c67 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_advanced_threat_protection_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_advanced_threat_protection_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAdvancedThreatProtectionOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAdvancedThreatProtectionOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -36,7 +36,20 @@ async def test_advanced_threat_protection_get(self, resource_group): async def test_advanced_threat_protection_create(self, resource_group): response = await self.client.advanced_threat_protection.create( resource_id="str", - advanced_threat_protection_setting={"id": "str", "isEnabled": bool, "name": "str", "type": "str"}, + advanced_threat_protection_setting={ + "id": "str", + "name": "str", + "properties": {"isEnabled": bool}, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2019-01-01", setting_name="current", ) diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_alerts_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_alerts_operations.py similarity index 96% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_alerts_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_alerts_operations.py index 8ea72fd60eb2..5d984b67d653 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_alerts_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_alerts_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,28 +14,19 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAlertsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAlertsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_alerts_list(self, resource_group): - response = self.client.alerts.list( + def test_alerts_get_subscription_level(self, resource_group): + response = self.client.alerts.get_subscription_level( + asc_location="str", + alert_name="str", api_version="2022-01-01", ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_alerts_list_by_resource_group(self, resource_group): - response = self.client.alerts.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2022-01-01", - ) - result = [r for r in response] # please add some check logic here by yourself # ... @@ -52,20 +43,8 @@ def test_alerts_list_subscription_level_by_region(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_alerts_list_resource_group_level_by_region(self, resource_group): - response = self.client.alerts.list_resource_group_level_by_region( - asc_location="str", - resource_group_name=resource_group.name, - api_version="2022-01-01", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_alerts_get_subscription_level(self, resource_group): - response = self.client.alerts.get_subscription_level( + def test_alerts_update_subscription_level_state_to_dismiss(self, resource_group): + response = self.client.alerts.update_subscription_level_state_to_dismiss( asc_location="str", alert_name="str", api_version="2022-01-01", @@ -76,9 +55,8 @@ def test_alerts_get_subscription_level(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_alerts_get_resource_group_level(self, resource_group): - response = self.client.alerts.get_resource_group_level( - resource_group_name=resource_group.name, + def test_alerts_update_subscription_level_state_to_resolve(self, resource_group): + response = self.client.alerts.update_subscription_level_state_to_resolve( asc_location="str", alert_name="str", api_version="2022-01-01", @@ -89,8 +67,8 @@ def test_alerts_get_resource_group_level(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_alerts_update_subscription_level_state_to_dismiss(self, resource_group): - response = self.client.alerts.update_subscription_level_state_to_dismiss( + def test_alerts_update_subscription_level_state_to_activate(self, resource_group): + response = self.client.alerts.update_subscription_level_state_to_activate( asc_location="str", alert_name="str", api_version="2022-01-01", @@ -101,8 +79,8 @@ def test_alerts_update_subscription_level_state_to_dismiss(self, resource_group) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_alerts_update_subscription_level_state_to_resolve(self, resource_group): - response = self.client.alerts.update_subscription_level_state_to_resolve( + def test_alerts_update_subscription_level_state_to_in_progress(self, resource_group): + response = self.client.alerts.update_subscription_level_state_to_in_progress( asc_location="str", alert_name="str", api_version="2022-01-01", @@ -113,8 +91,9 @@ def test_alerts_update_subscription_level_state_to_resolve(self, resource_group) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_alerts_update_subscription_level_state_to_activate(self, resource_group): - response = self.client.alerts.update_subscription_level_state_to_activate( + def test_alerts_get_resource_group_level(self, resource_group): + response = self.client.alerts.get_resource_group_level( + resource_group_name=resource_group.name, asc_location="str", alert_name="str", api_version="2022-01-01", @@ -125,13 +104,13 @@ def test_alerts_update_subscription_level_state_to_activate(self, resource_group @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_alerts_update_subscription_level_state_to_in_progress(self, resource_group): - response = self.client.alerts.update_subscription_level_state_to_in_progress( + def test_alerts_list_resource_group_level_by_region(self, resource_group): + response = self.client.alerts.list_resource_group_level_by_region( + resource_group_name=resource_group.name, asc_location="str", - alert_name="str", api_version="2022-01-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... @@ -187,6 +166,27 @@ def test_alerts_update_resource_group_level_state_to_in_progress(self, resource_ # please add some check logic here by yourself # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_alerts_list(self, resource_group): + response = self.client.alerts.list( + api_version="2022-01-01", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_alerts_list_by_resource_group(self, resource_group): + response = self.client.alerts.list_by_resource_group( + resource_group_name=resource_group.name, + api_version="2022-01-01", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy def test_alerts_begin_simulate(self, resource_group): diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_alerts_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_alerts_operations_async.py similarity index 96% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_alerts_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_alerts_operations_async.py index b2b8e3d21e75..d71c298275c1 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_alerts_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_alerts_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,28 +15,19 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAlertsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAlertsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_alerts_list(self, resource_group): - response = self.client.alerts.list( + async def test_alerts_get_subscription_level(self, resource_group): + response = await self.client.alerts.get_subscription_level( + asc_location="str", + alert_name="str", api_version="2022-01-01", ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_alerts_list_by_resource_group(self, resource_group): - response = self.client.alerts.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2022-01-01", - ) - result = [r async for r in response] # please add some check logic here by yourself # ... @@ -53,20 +44,8 @@ async def test_alerts_list_subscription_level_by_region(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_alerts_list_resource_group_level_by_region(self, resource_group): - response = self.client.alerts.list_resource_group_level_by_region( - asc_location="str", - resource_group_name=resource_group.name, - api_version="2022-01-01", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_alerts_get_subscription_level(self, resource_group): - response = await self.client.alerts.get_subscription_level( + async def test_alerts_update_subscription_level_state_to_dismiss(self, resource_group): + response = await self.client.alerts.update_subscription_level_state_to_dismiss( asc_location="str", alert_name="str", api_version="2022-01-01", @@ -77,9 +56,8 @@ async def test_alerts_get_subscription_level(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_alerts_get_resource_group_level(self, resource_group): - response = await self.client.alerts.get_resource_group_level( - resource_group_name=resource_group.name, + async def test_alerts_update_subscription_level_state_to_resolve(self, resource_group): + response = await self.client.alerts.update_subscription_level_state_to_resolve( asc_location="str", alert_name="str", api_version="2022-01-01", @@ -90,8 +68,8 @@ async def test_alerts_get_resource_group_level(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_alerts_update_subscription_level_state_to_dismiss(self, resource_group): - response = await self.client.alerts.update_subscription_level_state_to_dismiss( + async def test_alerts_update_subscription_level_state_to_activate(self, resource_group): + response = await self.client.alerts.update_subscription_level_state_to_activate( asc_location="str", alert_name="str", api_version="2022-01-01", @@ -102,8 +80,8 @@ async def test_alerts_update_subscription_level_state_to_dismiss(self, resource_ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_alerts_update_subscription_level_state_to_resolve(self, resource_group): - response = await self.client.alerts.update_subscription_level_state_to_resolve( + async def test_alerts_update_subscription_level_state_to_in_progress(self, resource_group): + response = await self.client.alerts.update_subscription_level_state_to_in_progress( asc_location="str", alert_name="str", api_version="2022-01-01", @@ -114,8 +92,9 @@ async def test_alerts_update_subscription_level_state_to_resolve(self, resource_ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_alerts_update_subscription_level_state_to_activate(self, resource_group): - response = await self.client.alerts.update_subscription_level_state_to_activate( + async def test_alerts_get_resource_group_level(self, resource_group): + response = await self.client.alerts.get_resource_group_level( + resource_group_name=resource_group.name, asc_location="str", alert_name="str", api_version="2022-01-01", @@ -126,13 +105,13 @@ async def test_alerts_update_subscription_level_state_to_activate(self, resource @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_alerts_update_subscription_level_state_to_in_progress(self, resource_group): - response = await self.client.alerts.update_subscription_level_state_to_in_progress( + async def test_alerts_list_resource_group_level_by_region(self, resource_group): + response = self.client.alerts.list_resource_group_level_by_region( + resource_group_name=resource_group.name, asc_location="str", - alert_name="str", api_version="2022-01-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... @@ -188,6 +167,27 @@ async def test_alerts_update_resource_group_level_state_to_in_progress(self, res # please add some check logic here by yourself # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_alerts_list(self, resource_group): + response = self.client.alerts.list( + api_version="2022-01-01", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_alerts_list_by_resource_group(self, resource_group): + response = self.client.alerts.list_by_resource_group( + resource_group_name=resource_group.name, + api_version="2022-01-01", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async async def test_alerts_begin_simulate(self, resource_group): diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_alerts_suppression_rules_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_alerts_suppression_rules_operations.py similarity index 69% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_alerts_suppression_rules_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_alerts_suppression_rules_operations.py index df3490905e61..5818d659e8f7 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_alerts_suppression_rules_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_alerts_suppression_rules_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,19 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAlertsSuppressionRulesOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAlertsSuppressionRulesOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_alerts_suppression_rules_list(self, resource_group): - response = self.client.alerts_suppression_rules.list( - api_version="2019-01-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -45,15 +35,25 @@ def test_alerts_suppression_rules_update(self, resource_group): response = self.client.alerts_suppression_rules.update( alerts_suppression_rule_name="str", alerts_suppression_rule={ - "alertType": "str", - "comment": "str", - "expirationDateUtc": "2020-02-20 00:00:00", "id": "str", - "lastModifiedUtc": "2020-02-20 00:00:00", "name": "str", - "reason": "str", - "state": "str", - "suppressionAlertsScope": {"allOf": [{"field": "str"}]}, + "properties": { + "alertType": "str", + "reason": "str", + "state": "str", + "comment": "str", + "expirationDateUtc": "2020-02-20 00:00:00", + "lastModifiedUtc": "2020-02-20 00:00:00", + "suppressionAlertsScope": {"allOf": [{"field": "str"}]}, + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2019-01-01-preview", @@ -72,3 +72,13 @@ def test_alerts_suppression_rules_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_alerts_suppression_rules_list(self, resource_group): + response = self.client.alerts_suppression_rules.list( + api_version="2019-01-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_alerts_suppression_rules_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_alerts_suppression_rules_operations_async.py similarity index 70% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_alerts_suppression_rules_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_alerts_suppression_rules_operations_async.py index 5c877335b7be..49bc0320f6f7 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_alerts_suppression_rules_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_alerts_suppression_rules_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,19 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAlertsSuppressionRulesOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAlertsSuppressionRulesOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_alerts_suppression_rules_list(self, resource_group): - response = self.client.alerts_suppression_rules.list( - api_version="2019-01-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -46,15 +36,25 @@ async def test_alerts_suppression_rules_update(self, resource_group): response = await self.client.alerts_suppression_rules.update( alerts_suppression_rule_name="str", alerts_suppression_rule={ - "alertType": "str", - "comment": "str", - "expirationDateUtc": "2020-02-20 00:00:00", "id": "str", - "lastModifiedUtc": "2020-02-20 00:00:00", "name": "str", - "reason": "str", - "state": "str", - "suppressionAlertsScope": {"allOf": [{"field": "str"}]}, + "properties": { + "alertType": "str", + "reason": "str", + "state": "str", + "comment": "str", + "expirationDateUtc": "2020-02-20 00:00:00", + "lastModifiedUtc": "2020-02-20 00:00:00", + "suppressionAlertsScope": {"allOf": [{"field": "str"}]}, + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2019-01-01-preview", @@ -73,3 +73,13 @@ async def test_alerts_suppression_rules_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_alerts_suppression_rules_list(self, resource_group): + response = self.client.alerts_suppression_rules.list( + api_version="2019-01-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_allowed_connections_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_allowed_connections_operations.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_allowed_connections_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_allowed_connections_operations.py index 538d4ad52922..e2c6d15a72a1 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_allowed_connections_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_allowed_connections_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,17 +14,20 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAllowedConnectionsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAllowedConnectionsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_allowed_connections_list(self, resource_group): - response = self.client.allowed_connections.list( + def test_allowed_connections_get(self, resource_group): + response = self.client.allowed_connections.get( + resource_group_name=resource_group.name, + asc_location="str", + connection_type="str", api_version="2020-01-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @@ -41,13 +44,10 @@ def test_allowed_connections_list_by_home_region(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_allowed_connections_get(self, resource_group): - response = self.client.allowed_connections.get( - resource_group_name=resource_group.name, - asc_location="str", - connection_type="str", + def test_allowed_connections_list(self, resource_group): + response = self.client.allowed_connections.list( api_version="2020-01-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_allowed_connections_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_allowed_connections_operations_async.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_allowed_connections_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_allowed_connections_operations_async.py index e8a944b4f9c5..ed4236ee718f 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_allowed_connections_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_allowed_connections_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,17 +15,20 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAllowedConnectionsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAllowedConnectionsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_allowed_connections_list(self, resource_group): - response = self.client.allowed_connections.list( + async def test_allowed_connections_get(self, resource_group): + response = await self.client.allowed_connections.get( + resource_group_name=resource_group.name, + asc_location="str", + connection_type="str", api_version="2020-01-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @@ -42,13 +45,10 @@ async def test_allowed_connections_list_by_home_region(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_allowed_connections_get(self, resource_group): - response = await self.client.allowed_connections.get( - resource_group_name=resource_group.name, - asc_location="str", - connection_type="str", + async def test_allowed_connections_list(self, resource_group): + response = self.client.allowed_connections.list( api_version="2020-01-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_api_collections_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_api_collections_operations.py similarity index 92% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_api_collections_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_api_collections_operations.py index 52bd83ff10fe..b8e946e01e46 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_api_collections_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_api_collections_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,78 +14,78 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAPICollectionsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAPICollectionsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_api_collections_list_by_subscription(self, resource_group): - response = self.client.api_collections.list_by_subscription( + def test_api_collections_get_by_azure_api_management_service(self, resource_group): + response = self.client.api_collections.get_by_azure_api_management_service( + resource_group_name=resource_group.name, + service_name="str", + api_id="str", api_version="2023-11-15", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_api_collections_list_by_resource_group(self, resource_group): - response = self.client.api_collections.list_by_resource_group( + def test_api_collections_begin_onboard_azure_api_management_api(self, resource_group): + response = self.client.api_collections.begin_onboard_azure_api_management_api( resource_group_name=resource_group.name, + service_name="str", + api_id="str", api_version="2023-11-15", - ) - result = [r for r in response] + ).result() # call '.result()' to poll until service return final result + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_api_collections_list_by_azure_api_management_service(self, resource_group): - response = self.client.api_collections.list_by_azure_api_management_service( + def test_api_collections_offboard_azure_api_management_api(self, resource_group): + response = self.client.api_collections.offboard_azure_api_management_api( resource_group_name=resource_group.name, service_name="str", + api_id="str", api_version="2023-11-15", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_api_collections_get_by_azure_api_management_service(self, resource_group): - response = self.client.api_collections.get_by_azure_api_management_service( + def test_api_collections_list_by_azure_api_management_service(self, resource_group): + response = self.client.api_collections.list_by_azure_api_management_service( resource_group_name=resource_group.name, service_name="str", - api_id="str", api_version="2023-11-15", ) - + result = [r for r in response] # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_api_collections_begin_onboard_azure_api_management_api(self, resource_group): - response = self.client.api_collections.begin_onboard_azure_api_management_api( - resource_group_name=resource_group.name, - service_name="str", - api_id="str", + def test_api_collections_list_by_subscription(self, resource_group): + response = self.client.api_collections.list_by_subscription( api_version="2023-11-15", - ).result() # call '.result()' to poll until service return final result - + ) + result = [r for r in response] # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_api_collections_offboard_azure_api_management_api(self, resource_group): - response = self.client.api_collections.offboard_azure_api_management_api( + def test_api_collections_list_by_resource_group(self, resource_group): + response = self.client.api_collections.list_by_resource_group( resource_group_name=resource_group.name, - service_name="str", - api_id="str", api_version="2023-11-15", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_api_collections_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_api_collections_operations_async.py similarity index 92% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_api_collections_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_api_collections_operations_async.py index 0d92c9c42d70..6838b77df428 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_api_collections_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_api_collections_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,80 +15,80 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAPICollectionsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAPICollectionsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_api_collections_list_by_subscription(self, resource_group): - response = self.client.api_collections.list_by_subscription( + async def test_api_collections_get_by_azure_api_management_service(self, resource_group): + response = await self.client.api_collections.get_by_azure_api_management_service( + resource_group_name=resource_group.name, + service_name="str", + api_id="str", api_version="2023-11-15", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_api_collections_list_by_resource_group(self, resource_group): - response = self.client.api_collections.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2023-11-15", - ) - result = [r async for r in response] + async def test_api_collections_begin_onboard_azure_api_management_api(self, resource_group): + response = await ( + await self.client.api_collections.begin_onboard_azure_api_management_api( + resource_group_name=resource_group.name, + service_name="str", + api_id="str", + api_version="2023-11-15", + ) + ).result() # call '.result()' to poll until service return final result + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_api_collections_list_by_azure_api_management_service(self, resource_group): - response = self.client.api_collections.list_by_azure_api_management_service( + async def test_api_collections_offboard_azure_api_management_api(self, resource_group): + response = await self.client.api_collections.offboard_azure_api_management_api( resource_group_name=resource_group.name, service_name="str", + api_id="str", api_version="2023-11-15", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_api_collections_get_by_azure_api_management_service(self, resource_group): - response = await self.client.api_collections.get_by_azure_api_management_service( + async def test_api_collections_list_by_azure_api_management_service(self, resource_group): + response = self.client.api_collections.list_by_azure_api_management_service( resource_group_name=resource_group.name, service_name="str", - api_id="str", api_version="2023-11-15", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_api_collections_begin_onboard_azure_api_management_api(self, resource_group): - response = await ( - await self.client.api_collections.begin_onboard_azure_api_management_api( - resource_group_name=resource_group.name, - service_name="str", - api_id="str", - api_version="2023-11-15", - ) - ).result() # call '.result()' to poll until service return final result - + async def test_api_collections_list_by_subscription(self, resource_group): + response = self.client.api_collections.list_by_subscription( + api_version="2023-11-15", + ) + result = [r async for r in response] # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_api_collections_offboard_azure_api_management_api(self, resource_group): - response = await self.client.api_collections.offboard_azure_api_management_api( + async def test_api_collections_list_by_resource_group(self, resource_group): + response = self.client.api_collections.list_by_resource_group( resource_group_name=resource_group.name, - service_name="str", - api_id="str", api_version="2023-11-15", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_application_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_application_operations.py similarity index 69% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_application_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_application_operations.py index a0ac52274b8b..69f968d82b87 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_application_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_application_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterApplicationOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementApplicationOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -35,12 +35,22 @@ def test_application_create_or_update(self, resource_group): response = self.client.application.create_or_update( application_id="str", application={ - "conditionSets": [{}], - "description": "str", - "displayName": "str", "id": "str", "name": "str", - "sourceResourceType": "str", + "properties": { + "conditionSets": [{}], + "sourceResourceType": "str", + "description": "str", + "displayName": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2022-07-01-preview", diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_application_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_application_operations_async.py similarity index 69% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_application_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_application_operations_async.py index 3b3908d0c958..eea1449bc1e6 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_application_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_application_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterApplicationOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementApplicationOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -36,12 +36,22 @@ async def test_application_create_or_update(self, resource_group): response = await self.client.application.create_or_update( application_id="str", application={ - "conditionSets": [{}], - "description": "str", - "displayName": "str", "id": "str", "name": "str", - "sourceResourceType": "str", + "properties": { + "conditionSets": [{}], + "sourceResourceType": "str", + "description": "str", + "displayName": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2022-07-01-preview", diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_applications_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_applications_operations.py similarity index 79% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_applications_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_applications_operations.py index aae3d266da10..49922260e07a 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_applications_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_applications_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterApplicationsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementApplicationsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_applications_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_applications_operations_async.py similarity index 79% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_applications_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_applications_operations_async.py index c0b6d9cf6a75..d01fe460dd6d 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_applications_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_applications_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterApplicationsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementApplicationsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_assessments_metadata_operations.py similarity index 68% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_assessments_metadata_operations.py index 331d3ce20c38..f24257644255 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_assessments_metadata_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,25 +14,57 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAssessmentsMetadataOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAssessmentsMetadataOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_assessments_metadata_list(self, resource_group): - response = self.client.assessments_metadata.list( + def test_assessments_metadata_get_in_subscription(self, resource_group): + response = self.client.assessments_metadata.get_in_subscription( + assessment_metadata_name="str", api_version="2025-05-04", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_assessments_metadata_get(self, resource_group): - response = self.client.assessments_metadata.get( + def test_assessments_metadata_create_in_subscription(self, resource_group): + response = self.client.assessments_metadata.create_in_subscription( assessment_metadata_name="str", + assessment_metadata={ + "id": "str", + "name": "str", + "properties": { + "assessmentType": "str", + "displayName": "str", + "severity": "str", + "categories": ["str"], + "description": "str", + "implementationEffort": "str", + "partnerData": {"partnerName": "str", "secret": "str", "productName": "str"}, + "plannedDeprecationDate": "str", + "policyDefinitionId": "str", + "preview": bool, + "publishDates": {"public": "str", "GA": "str"}, + "remediationDescription": "str", + "tactics": ["str"], + "techniques": ["str"], + "threats": ["str"], + "userImpact": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2025-05-04", ) @@ -41,51 +73,30 @@ def test_assessments_metadata_get(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_assessments_metadata_list_by_subscription(self, resource_group): - response = self.client.assessments_metadata.list_by_subscription( + def test_assessments_metadata_delete_in_subscription(self, resource_group): + response = self.client.assessments_metadata.delete_in_subscription( + assessment_metadata_name="str", api_version="2025-05-04", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_assessments_metadata_get_in_subscription(self, resource_group): - response = self.client.assessments_metadata.get_in_subscription( - assessment_metadata_name="str", + def test_assessments_metadata_list_by_subscription(self, resource_group): + response = self.client.assessments_metadata.list_by_subscription( api_version="2025-05-04", ) - + result = [r for r in response] # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_assessments_metadata_create_in_subscription(self, resource_group): - response = self.client.assessments_metadata.create_in_subscription( + def test_assessments_metadata_get(self, resource_group): + response = self.client.assessments_metadata.get( assessment_metadata_name="str", - assessment_metadata={ - "assessmentType": "str", - "categories": ["str"], - "description": "str", - "displayName": "str", - "id": "str", - "implementationEffort": "str", - "name": "str", - "partnerData": {"partnerName": "str", "secret": "str", "productName": "str"}, - "plannedDeprecationDate": "str", - "policyDefinitionId": "str", - "preview": bool, - "publishDates": {"public": "str", "GA": "str"}, - "remediationDescription": "str", - "severity": "str", - "tactics": ["str"], - "techniques": ["str"], - "threats": ["str"], - "type": "str", - "userImpact": "str", - }, api_version="2025-05-04", ) @@ -94,11 +105,10 @@ def test_assessments_metadata_create_in_subscription(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_assessments_metadata_delete_in_subscription(self, resource_group): - response = self.client.assessments_metadata.delete_in_subscription( - assessment_metadata_name="str", + def test_assessments_metadata_list(self, resource_group): + response = self.client.assessments_metadata.list( api_version="2025-05-04", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_assessments_metadata_operations_async.py similarity index 69% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_assessments_metadata_operations_async.py index 8c08d149e43d..e1efbb700c7b 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_metadata_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_assessments_metadata_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,25 +15,57 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAssessmentsMetadataOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAssessmentsMetadataOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_assessments_metadata_list(self, resource_group): - response = self.client.assessments_metadata.list( + async def test_assessments_metadata_get_in_subscription(self, resource_group): + response = await self.client.assessments_metadata.get_in_subscription( + assessment_metadata_name="str", api_version="2025-05-04", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_assessments_metadata_get(self, resource_group): - response = await self.client.assessments_metadata.get( + async def test_assessments_metadata_create_in_subscription(self, resource_group): + response = await self.client.assessments_metadata.create_in_subscription( assessment_metadata_name="str", + assessment_metadata={ + "id": "str", + "name": "str", + "properties": { + "assessmentType": "str", + "displayName": "str", + "severity": "str", + "categories": ["str"], + "description": "str", + "implementationEffort": "str", + "partnerData": {"partnerName": "str", "secret": "str", "productName": "str"}, + "plannedDeprecationDate": "str", + "policyDefinitionId": "str", + "preview": bool, + "publishDates": {"public": "str", "GA": "str"}, + "remediationDescription": "str", + "tactics": ["str"], + "techniques": ["str"], + "threats": ["str"], + "userImpact": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2025-05-04", ) @@ -42,51 +74,30 @@ async def test_assessments_metadata_get(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_assessments_metadata_list_by_subscription(self, resource_group): - response = self.client.assessments_metadata.list_by_subscription( + async def test_assessments_metadata_delete_in_subscription(self, resource_group): + response = await self.client.assessments_metadata.delete_in_subscription( + assessment_metadata_name="str", api_version="2025-05-04", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_assessments_metadata_get_in_subscription(self, resource_group): - response = await self.client.assessments_metadata.get_in_subscription( - assessment_metadata_name="str", + async def test_assessments_metadata_list_by_subscription(self, resource_group): + response = self.client.assessments_metadata.list_by_subscription( api_version="2025-05-04", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_assessments_metadata_create_in_subscription(self, resource_group): - response = await self.client.assessments_metadata.create_in_subscription( + async def test_assessments_metadata_get(self, resource_group): + response = await self.client.assessments_metadata.get( assessment_metadata_name="str", - assessment_metadata={ - "assessmentType": "str", - "categories": ["str"], - "description": "str", - "displayName": "str", - "id": "str", - "implementationEffort": "str", - "name": "str", - "partnerData": {"partnerName": "str", "secret": "str", "productName": "str"}, - "plannedDeprecationDate": "str", - "policyDefinitionId": "str", - "preview": bool, - "publishDates": {"public": "str", "GA": "str"}, - "remediationDescription": "str", - "severity": "str", - "tactics": ["str"], - "techniques": ["str"], - "threats": ["str"], - "type": "str", - "userImpact": "str", - }, api_version="2025-05-04", ) @@ -95,11 +106,10 @@ async def test_assessments_metadata_create_in_subscription(self, resource_group) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_assessments_metadata_delete_in_subscription(self, resource_group): - response = await self.client.assessments_metadata.delete_in_subscription( - assessment_metadata_name="str", + async def test_assessments_metadata_list(self, resource_group): + response = self.client.assessments_metadata.list( api_version="2025-05-04", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_assessments_operations.py similarity index 51% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_assessments_operations.py index d6db46c56011..21baecfa521b 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_assessments_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,20 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAssessmentsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAssessmentsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_assessments_list(self, resource_group): - response = self.client.assessments.list( - scope="str", - api_version="2025-05-04", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -48,41 +37,51 @@ def test_assessments_create_or_update(self, resource_group): resource_id="str", assessment_name="str", assessment={ - "additionalData": {"str": "str"}, - "displayName": "str", "id": "str", - "links": {"azurePortalUri": "str"}, - "metadata": { - "assessmentType": "str", + "name": "str", + "properties": { + "resourceDetails": "common_resource_details", + "status": {"code": "str", "cause": "str", "description": "str"}, + "additionalData": {"str": "str"}, "displayName": "str", - "severity": "str", - "categories": ["str"], - "description": "str", - "implementationEffort": "str", - "partnerData": {"partnerName": "str", "secret": "str", "productName": "str"}, - "policyDefinitionId": "str", - "preview": bool, - "remediationDescription": "str", - "threats": ["str"], - "userImpact": "str", + "links": {"azurePortalUri": "str"}, + "metadata": { + "assessmentType": "str", + "displayName": "str", + "severity": "str", + "categories": ["str"], + "description": "str", + "implementationEffort": "str", + "partnerData": {"partnerName": "str", "secret": "str", "productName": "str"}, + "policyDefinitionId": "str", + "preview": bool, + "remediationDescription": "str", + "threats": ["str"], + "userImpact": "str", + }, + "partnersData": {"partnerName": "str", "secret": "str"}, + "risk": { + "attackPathsReferences": ["str"], + "isContextualRisk": bool, + "level": "str", + "paths": [ + { + "edges": [{"id": "str", "sourceId": "str", "targetId": "str"}], + "id": "str", + "nodes": [{"id": "str", "nodePropertiesLabel": ["str"]}], + } + ], + "riskFactors": ["str"], + }, }, - "name": "str", - "partnersData": {"partnerName": "str", "secret": "str"}, - "resourceDetails": "resource_details", - "risk": { - "attackPathsReferences": ["str"], - "isContextualRisk": bool, - "level": "str", - "paths": [ - { - "edges": [{"id": "str", "sourceId": "str", "targetId": "str"}], - "id": "str", - "nodes": [{"id": "str", "nodePropertiesLabel": ["str"]}], - } - ], - "riskFactors": ["str"], + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", }, - "status": {"code": "str", "cause": "str", "description": "str"}, "type": "str", }, api_version="2025-05-04", @@ -102,3 +101,14 @@ def test_assessments_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_assessments_list(self, resource_group): + response = self.client.assessments.list( + scope="str", + api_version="2025-05-04", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_assessments_operations_async.py similarity index 52% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_assessments_operations_async.py index 9a8bd2a36580..ba54e074a64f 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assessments_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_assessments_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,20 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAssessmentsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAssessmentsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_assessments_list(self, resource_group): - response = self.client.assessments.list( - scope="str", - api_version="2025-05-04", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -49,41 +38,51 @@ async def test_assessments_create_or_update(self, resource_group): resource_id="str", assessment_name="str", assessment={ - "additionalData": {"str": "str"}, - "displayName": "str", "id": "str", - "links": {"azurePortalUri": "str"}, - "metadata": { - "assessmentType": "str", + "name": "str", + "properties": { + "resourceDetails": "common_resource_details", + "status": {"code": "str", "cause": "str", "description": "str"}, + "additionalData": {"str": "str"}, "displayName": "str", - "severity": "str", - "categories": ["str"], - "description": "str", - "implementationEffort": "str", - "partnerData": {"partnerName": "str", "secret": "str", "productName": "str"}, - "policyDefinitionId": "str", - "preview": bool, - "remediationDescription": "str", - "threats": ["str"], - "userImpact": "str", + "links": {"azurePortalUri": "str"}, + "metadata": { + "assessmentType": "str", + "displayName": "str", + "severity": "str", + "categories": ["str"], + "description": "str", + "implementationEffort": "str", + "partnerData": {"partnerName": "str", "secret": "str", "productName": "str"}, + "policyDefinitionId": "str", + "preview": bool, + "remediationDescription": "str", + "threats": ["str"], + "userImpact": "str", + }, + "partnersData": {"partnerName": "str", "secret": "str"}, + "risk": { + "attackPathsReferences": ["str"], + "isContextualRisk": bool, + "level": "str", + "paths": [ + { + "edges": [{"id": "str", "sourceId": "str", "targetId": "str"}], + "id": "str", + "nodes": [{"id": "str", "nodePropertiesLabel": ["str"]}], + } + ], + "riskFactors": ["str"], + }, }, - "name": "str", - "partnersData": {"partnerName": "str", "secret": "str"}, - "resourceDetails": "resource_details", - "risk": { - "attackPathsReferences": ["str"], - "isContextualRisk": bool, - "level": "str", - "paths": [ - { - "edges": [{"id": "str", "sourceId": "str", "targetId": "str"}], - "id": "str", - "nodes": [{"id": "str", "nodePropertiesLabel": ["str"]}], - } - ], - "riskFactors": ["str"], + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", }, - "status": {"code": "str", "cause": "str", "description": "str"}, "type": "str", }, api_version="2025-05-04", @@ -103,3 +102,14 @@ async def test_assessments_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_assessments_list(self, resource_group): + response = self.client.assessments.list( + scope="str", + api_version="2025-05-04", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_assignments_operations.py similarity index 81% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_assignments_operations.py index 43b9d22785f9..9a3c90e0af73 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_assignments_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,30 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAssignmentsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAssignmentsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_assignments_list_by_subscription(self, resource_group): - response = self.client.assignments.list_by_subscription( - api_version="2021-08-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_assignments_list(self, resource_group): - response = self.client.assignments.list( - resource_group_name=resource_group.name, - api_version="2021-08-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -58,20 +37,22 @@ def test_assignments_create_or_update(self, resource_group): resource_group_name=resource_group.name, assignment_id="str", assignment={ - "additionalData": {"exemptionCategory": "str"}, - "assignedComponent": {"key": "str"}, - "assignedStandard": {"id": "str"}, - "description": "str", - "displayName": "str", - "effect": "str", "etag": "str", - "expiresOn": "2020-02-20 00:00:00", "id": "str", "kind": "str", "location": "str", - "metadata": {}, "name": "str", - "scope": "str", + "properties": { + "additionalData": {"exemptionCategory": "str"}, + "assignedComponent": {"key": "str"}, + "assignedStandard": {"id": "str"}, + "description": "str", + "displayName": "str", + "effect": "str", + "expiresOn": "2020-02-20 00:00:00", + "metadata": {}, + "scope": "str", + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -100,3 +81,24 @@ def test_assignments_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_assignments_list(self, resource_group): + response = self.client.assignments.list( + resource_group_name=resource_group.name, + api_version="2021-08-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_assignments_list_by_subscription(self, resource_group): + response = self.client.assignments.list_by_subscription( + api_version="2021-08-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_assignments_operations_async.py similarity index 81% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_assignments_operations_async.py index eede30a0b6da..03e15f258a70 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_assignments_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_assignments_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,30 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAssignmentsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAssignmentsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_assignments_list_by_subscription(self, resource_group): - response = self.client.assignments.list_by_subscription( - api_version="2021-08-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_assignments_list(self, resource_group): - response = self.client.assignments.list( - resource_group_name=resource_group.name, - api_version="2021-08-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -59,20 +38,22 @@ async def test_assignments_create_or_update(self, resource_group): resource_group_name=resource_group.name, assignment_id="str", assignment={ - "additionalData": {"exemptionCategory": "str"}, - "assignedComponent": {"key": "str"}, - "assignedStandard": {"id": "str"}, - "description": "str", - "displayName": "str", - "effect": "str", "etag": "str", - "expiresOn": "2020-02-20 00:00:00", "id": "str", "kind": "str", "location": "str", - "metadata": {}, "name": "str", - "scope": "str", + "properties": { + "additionalData": {"exemptionCategory": "str"}, + "assignedComponent": {"key": "str"}, + "assignedStandard": {"id": "str"}, + "description": "str", + "displayName": "str", + "effect": "str", + "expiresOn": "2020-02-20 00:00:00", + "metadata": {}, + "scope": "str", + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -101,3 +82,24 @@ async def test_assignments_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_assignments_list(self, resource_group): + response = self.client.assignments.list( + resource_group_name=resource_group.name, + api_version="2021-08-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_assignments_list_by_subscription(self, resource_group): + response = self.client.assignments.list_by_subscription( + api_version="2021-08-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_auto_provisioning_settings_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_auto_provisioning_settings_operations.py similarity index 69% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_auto_provisioning_settings_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_auto_provisioning_settings_operations.py index a2c0ca5163eb..6726d38d19c3 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_auto_provisioning_settings_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_auto_provisioning_settings_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,25 +14,40 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAutoProvisioningSettingsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAutoProvisioningSettingsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_auto_provisioning_settings_list(self, resource_group): - response = self.client.auto_provisioning_settings.list( + def test_auto_provisioning_settings_get(self, resource_group): + response = self.client.auto_provisioning_settings.get( + setting_name="str", api_version="2017-08-01-preview", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_auto_provisioning_settings_get(self, resource_group): - response = self.client.auto_provisioning_settings.get( + def test_auto_provisioning_settings_create(self, resource_group): + response = self.client.auto_provisioning_settings.create( setting_name="str", + setting={ + "id": "str", + "name": "str", + "properties": {"autoProvision": "str"}, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2017-08-01-preview", ) @@ -41,12 +56,10 @@ def test_auto_provisioning_settings_get(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_auto_provisioning_settings_create(self, resource_group): - response = self.client.auto_provisioning_settings.create( - setting_name="str", - setting={"autoProvision": "str", "id": "str", "name": "str", "type": "str"}, + def test_auto_provisioning_settings_list(self, resource_group): + response = self.client.auto_provisioning_settings.list( api_version="2017-08-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_auto_provisioning_settings_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_auto_provisioning_settings_operations_async.py similarity index 69% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_auto_provisioning_settings_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_auto_provisioning_settings_operations_async.py index bd4d89f5ac85..fee0cca2c5fe 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_auto_provisioning_settings_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_auto_provisioning_settings_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,25 +15,40 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAutoProvisioningSettingsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAutoProvisioningSettingsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_auto_provisioning_settings_list(self, resource_group): - response = self.client.auto_provisioning_settings.list( + async def test_auto_provisioning_settings_get(self, resource_group): + response = await self.client.auto_provisioning_settings.get( + setting_name="str", api_version="2017-08-01-preview", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_auto_provisioning_settings_get(self, resource_group): - response = await self.client.auto_provisioning_settings.get( + async def test_auto_provisioning_settings_create(self, resource_group): + response = await self.client.auto_provisioning_settings.create( setting_name="str", + setting={ + "id": "str", + "name": "str", + "properties": {"autoProvision": "str"}, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2017-08-01-preview", ) @@ -42,12 +57,10 @@ async def test_auto_provisioning_settings_get(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_auto_provisioning_settings_create(self, resource_group): - response = await self.client.auto_provisioning_settings.create( - setting_name="str", - setting={"autoProvision": "str", "id": "str", "name": "str", "type": "str"}, + async def test_auto_provisioning_settings_list(self, resource_group): + response = self.client.auto_provisioning_settings.list( api_version="2017-08-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_automations_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_automations_operations.py similarity index 51% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_automations_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_automations_operations.py index 4ed80824b7ee..34dc84835d11 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_automations_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_automations_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,30 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAutomationsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAutomationsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_automations_list(self, resource_group): - response = self.client.automations.list( - api_version="2023-12-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_automations_list_by_resource_group(self, resource_group): - response = self.client.automations.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2023-12-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -58,32 +37,42 @@ def test_automations_create_or_update(self, resource_group): resource_group_name=resource_group.name, automation_name="str", automation={ - "actions": ["automation_action"], - "description": "str", "etag": "str", "id": "str", - "isEnabled": bool, "kind": "str", "location": "str", "name": "str", - "scopes": [{"description": "str", "scopePath": "str"}], - "sources": [ - { - "eventSource": "str", - "ruleSets": [ - { - "rules": [ - { - "expectedValue": "str", - "operator": "str", - "propertyJPath": "str", - "propertyType": "str", - } - ] - } - ], - } - ], + "properties": { + "actions": ["automation_action"], + "description": "str", + "isEnabled": bool, + "scopes": [{"description": "str", "scopePath": "str"}], + "sources": [ + { + "eventSource": "str", + "ruleSets": [ + { + "rules": [ + { + "expectedValue": "str", + "operator": "str", + "propertyJPath": "str", + "propertyType": "str", + } + ] + } + ], + } + ], + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "tags": {"str": "str"}, "type": "str", }, @@ -100,27 +89,29 @@ def test_automations_update(self, resource_group): resource_group_name=resource_group.name, automation_name="str", automation={ - "actions": ["automation_action"], - "description": "str", - "isEnabled": bool, - "scopes": [{"description": "str", "scopePath": "str"}], - "sources": [ - { - "eventSource": "str", - "ruleSets": [ - { - "rules": [ - { - "expectedValue": "str", - "operator": "str", - "propertyJPath": "str", - "propertyType": "str", - } - ] - } - ], - } - ], + "properties": { + "actions": ["automation_action"], + "description": "str", + "isEnabled": bool, + "scopes": [{"description": "str", "scopePath": "str"}], + "sources": [ + { + "eventSource": "str", + "ruleSets": [ + { + "rules": [ + { + "expectedValue": "str", + "operator": "str", + "propertyJPath": "str", + "propertyType": "str", + } + ] + } + ], + } + ], + }, "tags": {"str": "str"}, }, api_version="2023-12-01-preview", @@ -141,6 +132,27 @@ def test_automations_delete(self, resource_group): # please add some check logic here by yourself # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_automations_list_by_resource_group(self, resource_group): + response = self.client.automations.list_by_resource_group( + resource_group_name=resource_group.name, + api_version="2023-12-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_automations_list(self, resource_group): + response = self.client.automations.list( + api_version="2023-12-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy def test_automations_validate(self, resource_group): @@ -148,32 +160,42 @@ def test_automations_validate(self, resource_group): resource_group_name=resource_group.name, automation_name="str", automation={ - "actions": ["automation_action"], - "description": "str", "etag": "str", "id": "str", - "isEnabled": bool, "kind": "str", "location": "str", "name": "str", - "scopes": [{"description": "str", "scopePath": "str"}], - "sources": [ - { - "eventSource": "str", - "ruleSets": [ - { - "rules": [ - { - "expectedValue": "str", - "operator": "str", - "propertyJPath": "str", - "propertyType": "str", - } - ] - } - ], - } - ], + "properties": { + "actions": ["automation_action"], + "description": "str", + "isEnabled": bool, + "scopes": [{"description": "str", "scopePath": "str"}], + "sources": [ + { + "eventSource": "str", + "ruleSets": [ + { + "rules": [ + { + "expectedValue": "str", + "operator": "str", + "propertyJPath": "str", + "propertyType": "str", + } + ] + } + ], + } + ], + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "tags": {"str": "str"}, "type": "str", }, diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_automations_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_automations_operations_async.py similarity index 52% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_automations_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_automations_operations_async.py index f8e5cc45e2bf..9120c5ff6c18 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_automations_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_automations_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,30 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAutomationsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAutomationsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_automations_list(self, resource_group): - response = self.client.automations.list( - api_version="2023-12-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_automations_list_by_resource_group(self, resource_group): - response = self.client.automations.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2023-12-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -59,32 +38,42 @@ async def test_automations_create_or_update(self, resource_group): resource_group_name=resource_group.name, automation_name="str", automation={ - "actions": ["automation_action"], - "description": "str", "etag": "str", "id": "str", - "isEnabled": bool, "kind": "str", "location": "str", "name": "str", - "scopes": [{"description": "str", "scopePath": "str"}], - "sources": [ - { - "eventSource": "str", - "ruleSets": [ - { - "rules": [ - { - "expectedValue": "str", - "operator": "str", - "propertyJPath": "str", - "propertyType": "str", - } - ] - } - ], - } - ], + "properties": { + "actions": ["automation_action"], + "description": "str", + "isEnabled": bool, + "scopes": [{"description": "str", "scopePath": "str"}], + "sources": [ + { + "eventSource": "str", + "ruleSets": [ + { + "rules": [ + { + "expectedValue": "str", + "operator": "str", + "propertyJPath": "str", + "propertyType": "str", + } + ] + } + ], + } + ], + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "tags": {"str": "str"}, "type": "str", }, @@ -101,27 +90,29 @@ async def test_automations_update(self, resource_group): resource_group_name=resource_group.name, automation_name="str", automation={ - "actions": ["automation_action"], - "description": "str", - "isEnabled": bool, - "scopes": [{"description": "str", "scopePath": "str"}], - "sources": [ - { - "eventSource": "str", - "ruleSets": [ - { - "rules": [ - { - "expectedValue": "str", - "operator": "str", - "propertyJPath": "str", - "propertyType": "str", - } - ] - } - ], - } - ], + "properties": { + "actions": ["automation_action"], + "description": "str", + "isEnabled": bool, + "scopes": [{"description": "str", "scopePath": "str"}], + "sources": [ + { + "eventSource": "str", + "ruleSets": [ + { + "rules": [ + { + "expectedValue": "str", + "operator": "str", + "propertyJPath": "str", + "propertyType": "str", + } + ] + } + ], + } + ], + }, "tags": {"str": "str"}, }, api_version="2023-12-01-preview", @@ -142,6 +133,27 @@ async def test_automations_delete(self, resource_group): # please add some check logic here by yourself # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_automations_list_by_resource_group(self, resource_group): + response = self.client.automations.list_by_resource_group( + resource_group_name=resource_group.name, + api_version="2023-12-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_automations_list(self, resource_group): + response = self.client.automations.list( + api_version="2023-12-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async async def test_automations_validate(self, resource_group): @@ -149,32 +161,42 @@ async def test_automations_validate(self, resource_group): resource_group_name=resource_group.name, automation_name="str", automation={ - "actions": ["automation_action"], - "description": "str", "etag": "str", "id": "str", - "isEnabled": bool, "kind": "str", "location": "str", "name": "str", - "scopes": [{"description": "str", "scopePath": "str"}], - "sources": [ - { - "eventSource": "str", - "ruleSets": [ - { - "rules": [ - { - "expectedValue": "str", - "operator": "str", - "propertyJPath": "str", - "propertyType": "str", - } - ] - } - ], - } - ], + "properties": { + "actions": ["automation_action"], + "description": "str", + "isEnabled": bool, + "scopes": [{"description": "str", "scopePath": "str"}], + "sources": [ + { + "eventSource": "str", + "ruleSets": [ + { + "rules": [ + { + "expectedValue": "str", + "operator": "str", + "propertyJPath": "str", + "propertyType": "str", + } + ] + } + ], + } + ], + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "tags": {"str": "str"}, "type": "str", }, diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_orgs_operations.py similarity index 95% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_orgs_operations.py index 639a3aa02f43..4891e5b79370 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_orgs_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,33 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAzureDevOpsOrgsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAzureDevOpsOrgsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_azure_dev_ops_orgs_list_available(self, resource_group): - response = self.client.azure_dev_ops_orgs.list_available( - resource_group_name=resource_group.name, - security_connector_name="str", - api_version="2025-11-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_azure_dev_ops_orgs_list(self, resource_group): - response = self.client.azure_dev_ops_orgs.list( - resource_group_name=resource_group.name, - security_connector_name="str", - api_version="2025-11-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -130,3 +106,27 @@ def test_azure_dev_ops_orgs_begin_update(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_azure_dev_ops_orgs_list(self, resource_group): + response = self.client.azure_dev_ops_orgs.list( + resource_group_name=resource_group.name, + security_connector_name="str", + api_version="2025-11-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_azure_dev_ops_orgs_list_available(self, resource_group): + response = self.client.azure_dev_ops_orgs.list_available( + resource_group_name=resource_group.name, + security_connector_name="str", + api_version="2025-11-01-preview", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_orgs_operations_async.py similarity index 95% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_orgs_operations_async.py index 09678f7ed6e2..e3193c5a96ac 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_orgs_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_orgs_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,33 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAzureDevOpsOrgsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAzureDevOpsOrgsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_azure_dev_ops_orgs_list_available(self, resource_group): - response = await self.client.azure_dev_ops_orgs.list_available( - resource_group_name=resource_group.name, - security_connector_name="str", - api_version="2025-11-01-preview", - ) - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_azure_dev_ops_orgs_list(self, resource_group): - response = self.client.azure_dev_ops_orgs.list( - resource_group_name=resource_group.name, - security_connector_name="str", - api_version="2025-11-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -135,3 +111,27 @@ async def test_azure_dev_ops_orgs_begin_update(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_azure_dev_ops_orgs_list(self, resource_group): + response = self.client.azure_dev_ops_orgs.list( + resource_group_name=resource_group.name, + security_connector_name="str", + api_version="2025-11-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_azure_dev_ops_orgs_list_available(self, resource_group): + response = await self.client.azure_dev_ops_orgs.list_available( + resource_group_name=resource_group.name, + security_connector_name="str", + api_version="2025-11-01-preview", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_projects_operations.py similarity index 95% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_projects_operations.py index ca35693a241f..15189e559400 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_projects_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,22 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAzureDevOpsProjectsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAzureDevOpsProjectsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_azure_dev_ops_projects_list(self, resource_group): - response = self.client.azure_dev_ops_projects.list( - resource_group_name=resource_group.name, - security_connector_name="str", - org_name="str", - api_version="2025-11-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -126,3 +113,16 @@ def test_azure_dev_ops_projects_begin_update(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_azure_dev_ops_projects_list(self, resource_group): + response = self.client.azure_dev_ops_projects.list( + resource_group_name=resource_group.name, + security_connector_name="str", + org_name="str", + api_version="2025-11-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_projects_operations_async.py similarity index 95% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_projects_operations_async.py index e03dd6032cf9..0e58966d8bbd 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_projects_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_projects_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,22 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAzureDevOpsProjectsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAzureDevOpsProjectsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_azure_dev_ops_projects_list(self, resource_group): - response = self.client.azure_dev_ops_projects.list( - resource_group_name=resource_group.name, - security_connector_name="str", - org_name="str", - api_version="2025-11-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -131,3 +118,16 @@ async def test_azure_dev_ops_projects_begin_update(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_azure_dev_ops_projects_list(self, resource_group): + response = self.client.azure_dev_ops_projects.list( + resource_group_name=resource_group.name, + security_connector_name="str", + org_name="str", + api_version="2025-11-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_repos_operations.py similarity index 95% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_repos_operations.py index 7d2f316f1309..62d86b7a8b78 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_repos_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,23 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAzureDevOpsReposOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementAzureDevOpsReposOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_azure_dev_ops_repos_list(self, resource_group): - response = self.client.azure_dev_ops_repos.list( - resource_group_name=resource_group.name, - security_connector_name="str", - org_name="str", - project_name="str", - api_version="2025-11-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -136,3 +122,17 @@ def test_azure_dev_ops_repos_begin_update(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_azure_dev_ops_repos_list(self, resource_group): + response = self.client.azure_dev_ops_repos.list( + resource_group_name=resource_group.name, + security_connector_name="str", + org_name="str", + project_name="str", + api_version="2025-11-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_repos_operations_async.py similarity index 95% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_repos_operations_async.py index 93c64d52ac16..545891e78306 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_azure_dev_ops_repos_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_azure_dev_ops_repos_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,23 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterAzureDevOpsReposOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementAzureDevOpsReposOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_azure_dev_ops_repos_list(self, resource_group): - response = self.client.azure_dev_ops_repos.list( - resource_group_name=resource_group.name, - security_connector_name="str", - org_name="str", - project_name="str", - api_version="2025-11-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -141,3 +127,17 @@ async def test_azure_dev_ops_repos_begin_update(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_azure_dev_ops_repos_list(self, resource_group): + response = self.client.azure_dev_ops_repos.list( + resource_group_name=resource_group.name, + security_connector_name="str", + org_name="str", + project_name="str", + api_version="2025-11-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_compliance_results_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_compliance_results_operations.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_compliance_results_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_compliance_results_operations.py index 394fe2241780..3835ef0ef7a4 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_compliance_results_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_compliance_results_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,29 +14,29 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterComplianceResultsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementComplianceResultsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_compliance_results_list(self, resource_group): - response = self.client.compliance_results.list( - scope="str", + def test_compliance_results_get(self, resource_group): + response = self.client.compliance_results.get( + resource_id="str", + compliance_result_name="str", api_version="2017-08-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_compliance_results_get(self, resource_group): - response = self.client.compliance_results.get( - resource_id="str", - compliance_result_name="str", + def test_compliance_results_list(self, resource_group): + response = self.client.compliance_results.list( + scope="str", api_version="2017-08-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_compliance_results_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_compliance_results_operations_async.py similarity index 83% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_compliance_results_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_compliance_results_operations_async.py index a9d4e2afc1ce..464cae38c2eb 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_compliance_results_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_compliance_results_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,29 +15,29 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterComplianceResultsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementComplianceResultsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_compliance_results_list(self, resource_group): - response = self.client.compliance_results.list( - scope="str", + async def test_compliance_results_get(self, resource_group): + response = await self.client.compliance_results.get( + resource_id="str", + compliance_result_name="str", api_version="2017-08-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_compliance_results_get(self, resource_group): - response = await self.client.compliance_results.get( - resource_id="str", - compliance_result_name="str", + async def test_compliance_results_list(self, resource_group): + response = self.client.compliance_results.list( + scope="str", api_version="2017-08-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_compliances_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_compliances_operations.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_compliances_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_compliances_operations.py index 5ce15fce3304..6c7bb7ef3f27 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_compliances_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_compliances_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,29 +14,29 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterCompliancesOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementCompliancesOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_compliances_list(self, resource_group): - response = self.client.compliances.list( + def test_compliances_get(self, resource_group): + response = self.client.compliances.get( scope="str", + compliance_name="str", api_version="2017-08-01-preview", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_compliances_get(self, resource_group): - response = self.client.compliances.get( + def test_compliances_list(self, resource_group): + response = self.client.compliances.list( scope="str", - compliance_name="str", api_version="2017-08-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_compliances_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_compliances_operations_async.py similarity index 83% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_compliances_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_compliances_operations_async.py index 0d96846921b4..8de960ec59e9 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_compliances_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_compliances_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,29 +15,29 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterCompliancesOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementCompliancesOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_compliances_list(self, resource_group): - response = self.client.compliances.list( + async def test_compliances_get(self, resource_group): + response = await self.client.compliances.get( scope="str", + compliance_name="str", api_version="2017-08-01-preview", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_compliances_get(self, resource_group): - response = await self.client.compliances.get( + async def test_compliances_list(self, resource_group): + response = self.client.compliances.list( scope="str", - compliance_name="str", api_version="2017-08-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_recommendations_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_custom_recommendations_operations.py similarity index 80% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_recommendations_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_custom_recommendations_operations.py index b386f72e3b30..2c3e0ffa52a6 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_recommendations_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_custom_recommendations_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,20 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterCustomRecommendationsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementCustomRecommendationsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_custom_recommendations_list(self, resource_group): - response = self.client.custom_recommendations.list( - scope="str", - api_version="2024-08-01", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -48,16 +37,18 @@ def test_custom_recommendations_create_or_update(self, resource_group): scope="str", custom_recommendation_name="str", custom_recommendation_body={ - "assessmentKey": "str", - "cloudProviders": ["str"], - "description": "str", - "displayName": "str", "id": "str", "name": "str", - "query": "str", - "remediationDescription": "str", - "securityIssue": "BestPractices", - "severity": "Low", + "properties": { + "assessmentKey": "str", + "cloudProviders": ["str"], + "description": "str", + "displayName": "str", + "query": "str", + "remediationDescription": "str", + "securityIssue": "str", + "severity": "str", + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -85,3 +76,14 @@ def test_custom_recommendations_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_custom_recommendations_list(self, resource_group): + response = self.client.custom_recommendations.list( + scope="str", + api_version="2024-08-01", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_recommendations_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_custom_recommendations_operations_async.py similarity index 80% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_recommendations_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_custom_recommendations_operations_async.py index 65b814db137c..aeddc05c2b5a 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_custom_recommendations_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_custom_recommendations_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,20 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterCustomRecommendationsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementCustomRecommendationsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_custom_recommendations_list(self, resource_group): - response = self.client.custom_recommendations.list( - scope="str", - api_version="2024-08-01", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -49,16 +38,18 @@ async def test_custom_recommendations_create_or_update(self, resource_group): scope="str", custom_recommendation_name="str", custom_recommendation_body={ - "assessmentKey": "str", - "cloudProviders": ["str"], - "description": "str", - "displayName": "str", "id": "str", "name": "str", - "query": "str", - "remediationDescription": "str", - "securityIssue": "BestPractices", - "severity": "Low", + "properties": { + "assessmentKey": "str", + "cloudProviders": ["str"], + "description": "str", + "displayName": "str", + "query": "str", + "remediationDescription": "str", + "securityIssue": "str", + "severity": "str", + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -86,3 +77,14 @@ async def test_custom_recommendations_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_custom_recommendations_list(self, resource_group): + response = self.client.custom_recommendations.list( + scope="str", + api_version="2024-08-01", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_defender_for_storage_operations.py similarity index 85% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_defender_for_storage_operations.py index 213351fa1a44..83912c83a94a 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_defender_for_storage_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,20 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterDefenderForStorageOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementDefenderForStorageOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_defender_for_storage_list(self, resource_group): - response = self.client.defender_for_storage.list( - resource_id="str", - api_version="2025-09-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -53,8 +42,8 @@ def test_defender_for_storage_create(self, resource_group): "properties": { "isEnabled": bool, "malwareScanning": { - "automatedResponse": "None", - "blobScanResultsOptions": "BlobIndexTags", + "automatedResponse": "str", + "blobScanResultsOptions": "str", "onUpload": { "capGBPerMonth": 0, "filters": { @@ -70,6 +59,14 @@ def test_defender_for_storage_create(self, resource_group): "overrideSubscriptionLevelSettings": bool, "sensitiveDataDiscovery": {"isEnabled": bool, "operationStatus": {"code": "str", "message": "str"}}, }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2025-09-01-preview", @@ -78,6 +75,17 @@ def test_defender_for_storage_create(self, resource_group): # please add some check logic here by yourself # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_defender_for_storage_list(self, resource_group): + response = self.client.defender_for_storage.list( + resource_id="str", + api_version="2025-09-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy def test_defender_for_storage_start_malware_scan(self, resource_group): diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_defender_for_storage_operations_async.py similarity index 85% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_defender_for_storage_operations_async.py index 587745c70fea..e4fd743b1065 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_defender_for_storage_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_defender_for_storage_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,20 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterDefenderForStorageOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementDefenderForStorageOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_defender_for_storage_list(self, resource_group): - response = self.client.defender_for_storage.list( - resource_id="str", - api_version="2025-09-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -54,8 +43,8 @@ async def test_defender_for_storage_create(self, resource_group): "properties": { "isEnabled": bool, "malwareScanning": { - "automatedResponse": "None", - "blobScanResultsOptions": "BlobIndexTags", + "automatedResponse": "str", + "blobScanResultsOptions": "str", "onUpload": { "capGBPerMonth": 0, "filters": { @@ -71,6 +60,14 @@ async def test_defender_for_storage_create(self, resource_group): "overrideSubscriptionLevelSettings": bool, "sensitiveDataDiscovery": {"isEnabled": bool, "operationStatus": {"code": "str", "message": "str"}}, }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2025-09-01-preview", @@ -79,6 +76,17 @@ async def test_defender_for_storage_create(self, resource_group): # please add some check logic here by yourself # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_defender_for_storage_list(self, resource_group): + response = self.client.defender_for_storage.list( + resource_id="str", + api_version="2025-09-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async async def test_defender_for_storage_start_malware_scan(self, resource_group): diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_dev_ops_configurations_operations.py similarity index 95% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_dev_ops_configurations_operations.py index b46bc28ce0a1..719af22cc20b 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_dev_ops_configurations_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,21 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterDevOpsConfigurationsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementDevOpsConfigurationsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_dev_ops_configurations_list(self, resource_group): - response = self.client.dev_ops_configurations.list( - resource_group_name=resource_group.name, - security_connector_name="str", - api_version="2025-11-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -135,3 +123,15 @@ def test_dev_ops_configurations_begin_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_dev_ops_configurations_list(self, resource_group): + response = self.client.dev_ops_configurations.list( + resource_group_name=resource_group.name, + security_connector_name="str", + api_version="2025-11-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_dev_ops_configurations_operations_async.py similarity index 95% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_dev_ops_configurations_operations_async.py index a396aecc3abe..31e8c1388345 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_configurations_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_dev_ops_configurations_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,21 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterDevOpsConfigurationsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementDevOpsConfigurationsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_dev_ops_configurations_list(self, resource_group): - response = self.client.dev_ops_configurations.list( - resource_group_name=resource_group.name, - security_connector_name="str", - api_version="2025-11-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -142,3 +130,15 @@ async def test_dev_ops_configurations_begin_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_dev_ops_configurations_list(self, resource_group): + response = self.client.dev_ops_configurations.list( + resource_group_name=resource_group.name, + security_connector_name="str", + api_version="2025-11-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_dev_ops_operation_results_operations.py similarity index 80% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_dev_ops_operation_results_operations.py index 67161b7c1a98..462de602e046 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_dev_ops_operation_results_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterDevOpsOperationResultsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementDevOpsOperationResultsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_dev_ops_operation_results_operations_async.py similarity index 80% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_dev_ops_operation_results_operations_async.py index e770a518cb3d..49ed6d766afc 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_dev_ops_operation_results_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_dev_ops_operation_results_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterDevOpsOperationResultsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementDevOpsOperationResultsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_device_security_groups_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_device_security_groups_operations.py similarity index 50% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_device_security_groups_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_device_security_groups_operations.py index 663068c45f39..4f12fa07d8d9 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_device_security_groups_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_device_security_groups_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,20 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterDeviceSecurityGroupsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementDeviceSecurityGroupsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_device_security_groups_list(self, resource_group): - response = self.client.device_security_groups.list( - resource_id="str", - api_version="2019-08-01", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -48,21 +37,59 @@ def test_device_security_groups_create_or_update(self, resource_group): resource_id="str", device_security_group_name="str", device_security_group={ - "allowlistRules": ["allowlist_custom_alert_rule"], - "denylistRules": [ - { - "denylistValues": ["str"], - "isEnabled": bool, - "ruleType": "DenylistCustomAlertRule", - "description": "str", - "displayName": "str", - "valueType": "str", - } - ], "id": "str", "name": "str", - "thresholdRules": ["threshold_custom_alert_rule"], - "timeWindowRules": ["time_window_custom_alert_rule"], + "properties": { + "allowlistRules": [ + { + "allowlistValues": ["str"], + "isEnabled": bool, + "ruleType": "AllowlistCustomAlertRule", + "description": "str", + "displayName": "str", + "valueType": "str", + } + ], + "denylistRules": [ + { + "denylistValues": ["str"], + "isEnabled": bool, + "ruleType": "DenylistCustomAlertRule", + "description": "str", + "displayName": "str", + "valueType": "str", + } + ], + "thresholdRules": [ + { + "isEnabled": bool, + "maxThreshold": 0, + "minThreshold": 0, + "ruleType": "ThresholdCustomAlertRule", + "description": "str", + "displayName": "str", + } + ], + "timeWindowRules": [ + { + "isEnabled": bool, + "maxThreshold": 0, + "minThreshold": 0, + "ruleType": "TimeWindowCustomAlertRule", + "timeWindowSize": "1 day, 0:00:00", + "description": "str", + "displayName": "str", + } + ], + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2019-08-01", @@ -82,3 +109,14 @@ def test_device_security_groups_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_device_security_groups_list(self, resource_group): + response = self.client.device_security_groups.list( + resource_id="str", + api_version="2019-08-01", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_device_security_groups_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_device_security_groups_operations_async.py similarity index 51% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_device_security_groups_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_device_security_groups_operations_async.py index 1d0c2cd01a54..204be27262ef 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_device_security_groups_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_device_security_groups_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,20 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterDeviceSecurityGroupsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementDeviceSecurityGroupsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_device_security_groups_list(self, resource_group): - response = self.client.device_security_groups.list( - resource_id="str", - api_version="2019-08-01", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -49,21 +38,59 @@ async def test_device_security_groups_create_or_update(self, resource_group): resource_id="str", device_security_group_name="str", device_security_group={ - "allowlistRules": ["allowlist_custom_alert_rule"], - "denylistRules": [ - { - "denylistValues": ["str"], - "isEnabled": bool, - "ruleType": "DenylistCustomAlertRule", - "description": "str", - "displayName": "str", - "valueType": "str", - } - ], "id": "str", "name": "str", - "thresholdRules": ["threshold_custom_alert_rule"], - "timeWindowRules": ["time_window_custom_alert_rule"], + "properties": { + "allowlistRules": [ + { + "allowlistValues": ["str"], + "isEnabled": bool, + "ruleType": "AllowlistCustomAlertRule", + "description": "str", + "displayName": "str", + "valueType": "str", + } + ], + "denylistRules": [ + { + "denylistValues": ["str"], + "isEnabled": bool, + "ruleType": "DenylistCustomAlertRule", + "description": "str", + "displayName": "str", + "valueType": "str", + } + ], + "thresholdRules": [ + { + "isEnabled": bool, + "maxThreshold": 0, + "minThreshold": 0, + "ruleType": "ThresholdCustomAlertRule", + "description": "str", + "displayName": "str", + } + ], + "timeWindowRules": [ + { + "isEnabled": bool, + "maxThreshold": 0, + "minThreshold": 0, + "ruleType": "TimeWindowCustomAlertRule", + "timeWindowSize": "1 day, 0:00:00", + "description": "str", + "displayName": "str", + } + ], + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2019-08-01", @@ -83,3 +110,14 @@ async def test_device_security_groups_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_device_security_groups_list(self, resource_group): + response = self.client.device_security_groups.list( + resource_id="str", + api_version="2019-08-01", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_discovered_security_solutions_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_discovered_security_solutions_operations.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_discovered_security_solutions_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_discovered_security_solutions_operations.py index 5a143e1080e5..6726ccd1ddac 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_discovered_security_solutions_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_discovered_security_solutions_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,17 +14,20 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterDiscoveredSecuritySolutionsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementDiscoveredSecuritySolutionsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_discovered_security_solutions_list(self, resource_group): - response = self.client.discovered_security_solutions.list( + def test_discovered_security_solutions_get(self, resource_group): + response = self.client.discovered_security_solutions.get( + resource_group_name=resource_group.name, + asc_location="str", + discovered_security_solution_name="str", api_version="2020-01-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @@ -41,13 +44,10 @@ def test_discovered_security_solutions_list_by_home_region(self, resource_group) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_discovered_security_solutions_get(self, resource_group): - response = self.client.discovered_security_solutions.get( - resource_group_name=resource_group.name, - asc_location="str", - discovered_security_solution_name="str", + def test_discovered_security_solutions_list(self, resource_group): + response = self.client.discovered_security_solutions.list( api_version="2020-01-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_discovered_security_solutions_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_discovered_security_solutions_operations_async.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_discovered_security_solutions_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_discovered_security_solutions_operations_async.py index 337211055de9..29affa2d3a4f 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_discovered_security_solutions_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_discovered_security_solutions_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,17 +15,20 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterDiscoveredSecuritySolutionsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementDiscoveredSecuritySolutionsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_discovered_security_solutions_list(self, resource_group): - response = self.client.discovered_security_solutions.list( + async def test_discovered_security_solutions_get(self, resource_group): + response = await self.client.discovered_security_solutions.get( + resource_group_name=resource_group.name, + asc_location="str", + discovered_security_solution_name="str", api_version="2020-01-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @@ -42,13 +45,10 @@ async def test_discovered_security_solutions_list_by_home_region(self, resource_ @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_discovered_security_solutions_get(self, resource_group): - response = await self.client.discovered_security_solutions.get( - resource_group_name=resource_group.name, - asc_location="str", - discovered_security_solution_name="str", + async def test_discovered_security_solutions_list(self, resource_group): + response = self.client.discovered_security_solutions.list( api_version="2020-01-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_external_security_solutions_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_external_security_solutions_operations.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_external_security_solutions_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_external_security_solutions_operations.py index 208caee4fa83..a834c437add7 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_external_security_solutions_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_external_security_solutions_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,17 +14,20 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterExternalSecuritySolutionsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementExternalSecuritySolutionsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_external_security_solutions_list(self, resource_group): - response = self.client.external_security_solutions.list( + def test_external_security_solutions_get(self, resource_group): + response = self.client.external_security_solutions.get( + resource_group_name=resource_group.name, + asc_location="str", + external_security_solutions_name="str", api_version="2020-01-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @@ -41,13 +44,10 @@ def test_external_security_solutions_list_by_home_region(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_external_security_solutions_get(self, resource_group): - response = self.client.external_security_solutions.get( - resource_group_name=resource_group.name, - asc_location="str", - external_security_solutions_name="str", + def test_external_security_solutions_list(self, resource_group): + response = self.client.external_security_solutions.list( api_version="2020-01-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_external_security_solutions_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_external_security_solutions_operations_async.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_external_security_solutions_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_external_security_solutions_operations_async.py index 1808ceb22fe3..08d548a213c0 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_external_security_solutions_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_external_security_solutions_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,17 +15,20 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterExternalSecuritySolutionsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementExternalSecuritySolutionsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_external_security_solutions_list(self, resource_group): - response = self.client.external_security_solutions.list( + async def test_external_security_solutions_get(self, resource_group): + response = await self.client.external_security_solutions.get( + resource_group_name=resource_group.name, + asc_location="str", + external_security_solutions_name="str", api_version="2020-01-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @@ -42,13 +45,10 @@ async def test_external_security_solutions_list_by_home_region(self, resource_gr @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_external_security_solutions_get(self, resource_group): - response = await self.client.external_security_solutions.get( - resource_group_name=resource_group.name, - asc_location="str", - external_security_solutions_name="str", + async def test_external_security_solutions_list(self, resource_group): + response = self.client.external_security_solutions.list( api_version="2020-01-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_issues_operations.py similarity index 82% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_issues_operations.py index 3b244fec9253..0c433ee63e56 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_issues_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGitHubIssuesOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementGitHubIssuesOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_issues_operations_async.py similarity index 82% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_issues_operations_async.py index 75f39a80a28e..5f1a7274e105 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_issues_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_issues_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGitHubIssuesOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementGitHubIssuesOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_owners_operations.py similarity index 88% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_owners_operations.py index 29475caaaef8..1b4fd7681e59 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_owners_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,16 +14,17 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGitHubOwnersOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementGitHubOwnersOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_git_hub_owners_list_available(self, resource_group): - response = self.client.git_hub_owners.list_available( + def test_git_hub_owners_get(self, resource_group): + response = self.client.git_hub_owners.get( resource_group_name=resource_group.name, security_connector_name="str", + owner_name="str", api_version="2025-11-01-preview", ) @@ -44,11 +45,10 @@ def test_git_hub_owners_list(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_git_hub_owners_get(self, resource_group): - response = self.client.git_hub_owners.get( + def test_git_hub_owners_list_available(self, resource_group): + response = self.client.git_hub_owners.list_available( resource_group_name=resource_group.name, security_connector_name="str", - owner_name="str", api_version="2025-11-01-preview", ) diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_owners_operations_async.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_owners_operations_async.py index 1ff92b85b896..4fc8aad74f96 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_owners_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_owners_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,16 +15,17 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGitHubOwnersOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementGitHubOwnersOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_git_hub_owners_list_available(self, resource_group): - response = await self.client.git_hub_owners.list_available( + async def test_git_hub_owners_get(self, resource_group): + response = await self.client.git_hub_owners.get( resource_group_name=resource_group.name, security_connector_name="str", + owner_name="str", api_version="2025-11-01-preview", ) @@ -45,11 +46,10 @@ async def test_git_hub_owners_list(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_git_hub_owners_get(self, resource_group): - response = await self.client.git_hub_owners.get( + async def test_git_hub_owners_list_available(self, resource_group): + response = await self.client.git_hub_owners.list_available( resource_group_name=resource_group.name, security_connector_name="str", - owner_name="str", api_version="2025-11-01-preview", ) diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_repos_operations.py similarity index 86% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_repos_operations.py index 7e586e70c5c5..aac36da238c4 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_repos_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,33 +14,33 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGitHubReposOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementGitHubReposOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_git_hub_repos_list(self, resource_group): - response = self.client.git_hub_repos.list( + def test_git_hub_repos_get(self, resource_group): + response = self.client.git_hub_repos.get( resource_group_name=resource_group.name, security_connector_name="str", owner_name="str", + repo_name="str", api_version="2025-11-01-preview", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_git_hub_repos_get(self, resource_group): - response = self.client.git_hub_repos.get( + def test_git_hub_repos_list(self, resource_group): + response = self.client.git_hub_repos.list( resource_group_name=resource_group.name, security_connector_name="str", owner_name="str", - repo_name="str", api_version="2025-11-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_repos_operations_async.py similarity index 85% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_repos_operations_async.py index c80a265d523b..1c5c41cbb95f 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_hub_repos_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_hub_repos_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,33 +15,33 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGitHubReposOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementGitHubReposOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_git_hub_repos_list(self, resource_group): - response = self.client.git_hub_repos.list( + async def test_git_hub_repos_get(self, resource_group): + response = await self.client.git_hub_repos.get( resource_group_name=resource_group.name, security_connector_name="str", owner_name="str", + repo_name="str", api_version="2025-11-01-preview", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_git_hub_repos_get(self, resource_group): - response = await self.client.git_hub_repos.get( + async def test_git_hub_repos_list(self, resource_group): + response = self.client.git_hub_repos.list( resource_group_name=resource_group.name, security_connector_name="str", owner_name="str", - repo_name="str", api_version="2025-11-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_groups_operations.py similarity index 88% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_groups_operations.py index 77d80288e670..3d9ca64acf68 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_groups_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,16 +14,17 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGitLabGroupsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementGitLabGroupsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_git_lab_groups_list_available(self, resource_group): - response = self.client.git_lab_groups.list_available( + def test_git_lab_groups_get(self, resource_group): + response = self.client.git_lab_groups.get( resource_group_name=resource_group.name, security_connector_name="str", + group_fq_name="str", api_version="2025-11-01-preview", ) @@ -44,11 +45,10 @@ def test_git_lab_groups_list(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_git_lab_groups_get(self, resource_group): - response = self.client.git_lab_groups.get( + def test_git_lab_groups_list_available(self, resource_group): + response = self.client.git_lab_groups.list_available( resource_group_name=resource_group.name, security_connector_name="str", - group_fq_name="str", api_version="2025-11-01-preview", ) diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_groups_operations_async.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_groups_operations_async.py index 60c4b4783d75..209b770fe0f2 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_groups_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_groups_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,16 +15,17 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGitLabGroupsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementGitLabGroupsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_git_lab_groups_list_available(self, resource_group): - response = await self.client.git_lab_groups.list_available( + async def test_git_lab_groups_get(self, resource_group): + response = await self.client.git_lab_groups.get( resource_group_name=resource_group.name, security_connector_name="str", + group_fq_name="str", api_version="2025-11-01-preview", ) @@ -45,11 +46,10 @@ async def test_git_lab_groups_list(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_git_lab_groups_get(self, resource_group): - response = await self.client.git_lab_groups.get( + async def test_git_lab_groups_list_available(self, resource_group): + response = await self.client.git_lab_groups.list_available( resource_group_name=resource_group.name, security_connector_name="str", - group_fq_name="str", api_version="2025-11-01-preview", ) diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_projects_operations.py similarity index 86% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_projects_operations.py index 5fc642384e70..3d768db6dcca 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_projects_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,33 +14,33 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGitLabProjectsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementGitLabProjectsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_git_lab_projects_list(self, resource_group): - response = self.client.git_lab_projects.list( + def test_git_lab_projects_get(self, resource_group): + response = self.client.git_lab_projects.get( resource_group_name=resource_group.name, security_connector_name="str", group_fq_name="str", + project_name="str", api_version="2025-11-01-preview", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_git_lab_projects_get(self, resource_group): - response = self.client.git_lab_projects.get( + def test_git_lab_projects_list(self, resource_group): + response = self.client.git_lab_projects.list( resource_group_name=resource_group.name, security_connector_name="str", group_fq_name="str", - project_name="str", api_version="2025-11-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_projects_operations_async.py similarity index 85% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_projects_operations_async.py index 0d85ce266889..ca9183f73895 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_projects_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_projects_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,33 +15,33 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGitLabProjectsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementGitLabProjectsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_git_lab_projects_list(self, resource_group): - response = self.client.git_lab_projects.list( + async def test_git_lab_projects_get(self, resource_group): + response = await self.client.git_lab_projects.get( resource_group_name=resource_group.name, security_connector_name="str", group_fq_name="str", + project_name="str", api_version="2025-11-01-preview", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_git_lab_projects_get(self, resource_group): - response = await self.client.git_lab_projects.get( + async def test_git_lab_projects_list(self, resource_group): + response = self.client.git_lab_projects.list( resource_group_name=resource_group.name, security_connector_name="str", group_fq_name="str", - project_name="str", api_version="2025-11-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_subgroups_operations.py similarity index 80% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_subgroups_operations.py index 6ba428b7c89a..2386f7096989 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_subgroups_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGitLabSubgroupsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementGitLabSubgroupsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_subgroups_operations_async.py similarity index 80% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_subgroups_operations_async.py index 53760c651a4c..d9bc47c32b65 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_git_lab_subgroups_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_git_lab_subgroups_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGitLabSubgroupsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementGitLabSubgroupsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_governance_assignments_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_governance_assignments_operations.py similarity index 68% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_governance_assignments_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_governance_assignments_operations.py index 0af095181f48..9361c05a74c7 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_governance_assignments_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_governance_assignments_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,21 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGovernanceAssignmentsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementGovernanceAssignmentsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_governance_assignments_list(self, resource_group): - response = self.client.governance_assignments.list( - scope="str", - assessment_name="str", - api_version="2022-01-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -51,17 +39,27 @@ def test_governance_assignments_create_or_update(self, resource_group): assessment_name="str", assignment_key="str", governance_assignment={ - "additionalData": {"ticketLink": "str", "ticketNumber": 0, "ticketStatus": "str"}, - "governanceEmailNotification": { - "disableManagerEmailNotification": bool, - "disableOwnerEmailNotification": bool, - }, "id": "str", - "isGracePeriod": bool, "name": "str", - "owner": "str", - "remediationDueDate": "2020-02-20 00:00:00", - "remediationEta": {"eta": "2020-02-20 00:00:00", "justification": "str"}, + "properties": { + "remediationDueDate": "2020-02-20 00:00:00", + "additionalData": {"ticketLink": "str", "ticketNumber": 0, "ticketStatus": "str"}, + "governanceEmailNotification": { + "disableManagerEmailNotification": bool, + "disableOwnerEmailNotification": bool, + }, + "isGracePeriod": bool, + "owner": "str", + "remediationEta": {"eta": "2020-02-20 00:00:00", "justification": "str"}, + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2022-01-01-preview", @@ -82,3 +80,15 @@ def test_governance_assignments_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_governance_assignments_list(self, resource_group): + response = self.client.governance_assignments.list( + scope="str", + assessment_name="str", + api_version="2022-01-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_governance_assignments_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_governance_assignments_operations_async.py similarity index 68% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_governance_assignments_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_governance_assignments_operations_async.py index aff8695f12ad..3811600c15d4 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_governance_assignments_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_governance_assignments_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,21 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGovernanceAssignmentsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementGovernanceAssignmentsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_governance_assignments_list(self, resource_group): - response = self.client.governance_assignments.list( - scope="str", - assessment_name="str", - api_version="2022-01-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -52,17 +40,27 @@ async def test_governance_assignments_create_or_update(self, resource_group): assessment_name="str", assignment_key="str", governance_assignment={ - "additionalData": {"ticketLink": "str", "ticketNumber": 0, "ticketStatus": "str"}, - "governanceEmailNotification": { - "disableManagerEmailNotification": bool, - "disableOwnerEmailNotification": bool, - }, "id": "str", - "isGracePeriod": bool, "name": "str", - "owner": "str", - "remediationDueDate": "2020-02-20 00:00:00", - "remediationEta": {"eta": "2020-02-20 00:00:00", "justification": "str"}, + "properties": { + "remediationDueDate": "2020-02-20 00:00:00", + "additionalData": {"ticketLink": "str", "ticketNumber": 0, "ticketStatus": "str"}, + "governanceEmailNotification": { + "disableManagerEmailNotification": bool, + "disableOwnerEmailNotification": bool, + }, + "isGracePeriod": bool, + "owner": "str", + "remediationEta": {"eta": "2020-02-20 00:00:00", "justification": "str"}, + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2022-01-01-preview", @@ -83,3 +81,15 @@ async def test_governance_assignments_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_governance_assignments_list(self, resource_group): + response = self.client.governance_assignments.list( + scope="str", + assessment_name="str", + api_version="2022-01-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_governance_rules_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_governance_rules_operations.py similarity index 67% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_governance_rules_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_governance_rules_operations.py index a3280b10e873..503ffb60388e 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_governance_rules_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_governance_rules_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,20 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGovernanceRulesOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementGovernanceRulesOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_governance_rules_list(self, resource_group): - response = self.client.governance_rules.list( - scope="str", - api_version="2022-01-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -48,31 +37,41 @@ def test_governance_rules_create_or_update(self, resource_group): scope="str", rule_id="str", governance_rule={ - "conditionSets": [{}], - "description": "str", - "displayName": "str", - "excludedScopes": ["str"], - "governanceEmailNotification": { - "disableManagerEmailNotification": bool, - "disableOwnerEmailNotification": bool, - }, "id": "str", - "includeMemberScopes": bool, - "isDisabled": bool, - "isGracePeriod": bool, - "metadata": { + "name": "str", + "properties": { + "conditionSets": [{}], + "displayName": "str", + "ownerSource": {"type": "str", "value": "str"}, + "rulePriority": 0, + "ruleType": "str", + "sourceResourceType": "str", + "description": "str", + "excludedScopes": ["str"], + "governanceEmailNotification": { + "disableManagerEmailNotification": bool, + "disableOwnerEmailNotification": bool, + }, + "includeMemberScopes": bool, + "isDisabled": bool, + "isGracePeriod": bool, + "metadata": { + "createdBy": "str", + "createdOn": "2020-02-20 00:00:00", + "updatedBy": "str", + "updatedOn": "2020-02-20 00:00:00", + }, + "remediationTimeframe": "str", + "tenantId": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", "createdBy": "str", - "createdOn": "2020-02-20 00:00:00", - "updatedBy": "str", - "updatedOn": "2020-02-20 00:00:00", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", }, - "name": "str", - "ownerSource": {"type": "str", "value": "str"}, - "remediationTimeframe": "str", - "rulePriority": 0, - "ruleType": "str", - "sourceResourceType": "str", - "tenantId": "str", "type": "str", }, api_version="2022-01-01-preview", @@ -93,6 +92,17 @@ def test_governance_rules_begin_delete(self, resource_group): # please add some check logic here by yourself # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_governance_rules_list(self, resource_group): + response = self.client.governance_rules.list( + scope="str", + api_version="2022-01-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy def test_governance_rules_begin_execute(self, resource_group): diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_governance_rules_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_governance_rules_operations_async.py similarity index 68% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_governance_rules_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_governance_rules_operations_async.py index 46a034d3964d..cae78b75acd1 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_governance_rules_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_governance_rules_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,20 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterGovernanceRulesOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementGovernanceRulesOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_governance_rules_list(self, resource_group): - response = self.client.governance_rules.list( - scope="str", - api_version="2022-01-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -49,31 +38,41 @@ async def test_governance_rules_create_or_update(self, resource_group): scope="str", rule_id="str", governance_rule={ - "conditionSets": [{}], - "description": "str", - "displayName": "str", - "excludedScopes": ["str"], - "governanceEmailNotification": { - "disableManagerEmailNotification": bool, - "disableOwnerEmailNotification": bool, - }, "id": "str", - "includeMemberScopes": bool, - "isDisabled": bool, - "isGracePeriod": bool, - "metadata": { + "name": "str", + "properties": { + "conditionSets": [{}], + "displayName": "str", + "ownerSource": {"type": "str", "value": "str"}, + "rulePriority": 0, + "ruleType": "str", + "sourceResourceType": "str", + "description": "str", + "excludedScopes": ["str"], + "governanceEmailNotification": { + "disableManagerEmailNotification": bool, + "disableOwnerEmailNotification": bool, + }, + "includeMemberScopes": bool, + "isDisabled": bool, + "isGracePeriod": bool, + "metadata": { + "createdBy": "str", + "createdOn": "2020-02-20 00:00:00", + "updatedBy": "str", + "updatedOn": "2020-02-20 00:00:00", + }, + "remediationTimeframe": "str", + "tenantId": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", "createdBy": "str", - "createdOn": "2020-02-20 00:00:00", - "updatedBy": "str", - "updatedOn": "2020-02-20 00:00:00", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", }, - "name": "str", - "ownerSource": {"type": "str", "value": "str"}, - "remediationTimeframe": "str", - "rulePriority": 0, - "ruleType": "str", - "sourceResourceType": "str", - "tenantId": "str", "type": "str", }, api_version="2022-01-01-preview", @@ -96,6 +95,17 @@ async def test_governance_rules_begin_delete(self, resource_group): # please add some check logic here by yourself # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_governance_rules_list(self, resource_group): + response = self.client.governance_rules.list( + scope="str", + api_version="2022-01-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async async def test_governance_rules_begin_execute(self, resource_group): diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_health_reports_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_health_reports_operations.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_health_reports_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_health_reports_operations.py index d70072453554..e5174e6eb3c6 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_health_reports_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_health_reports_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,29 +14,29 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterHealthReportsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementHealthReportsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_health_reports_list(self, resource_group): - response = self.client.health_reports.list( - scope="str", + def test_health_reports_get(self, resource_group): + response = self.client.health_reports.get( + resource_id="str", + health_report_name="str", api_version="2023-05-01-preview", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_health_reports_get(self, resource_group): - response = self.client.health_reports.get( - resource_id="str", - health_report_name="str", + def test_health_reports_list(self, resource_group): + response = self.client.health_reports.list( + scope="str", api_version="2023-05-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_health_reports_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_health_reports_operations_async.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_health_reports_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_health_reports_operations_async.py index 475c49925cf4..68b5c1c73d70 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_health_reports_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_health_reports_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,29 +15,29 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterHealthReportsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementHealthReportsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_health_reports_list(self, resource_group): - response = self.client.health_reports.list( - scope="str", + async def test_health_reports_get(self, resource_group): + response = await self.client.health_reports.get( + resource_id="str", + health_report_name="str", api_version="2023-05-01-preview", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_health_reports_get(self, resource_group): - response = await self.client.health_reports.get( - resource_id="str", - health_report_name="str", + async def test_health_reports_list(self, resource_group): + response = self.client.health_reports.list( + scope="str", api_version="2023-05-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_information_protection_policies_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_information_protection_policies_operations.py similarity index 60% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_information_protection_policies_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_information_protection_policies_operations.py index eb09b907ece4..df3578e2e47a 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_information_protection_policies_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_information_protection_policies_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterInformationProtectionPoliciesOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementInformationProtectionPoliciesOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -38,24 +38,34 @@ def test_information_protection_policies_create_or_update(self, resource_group): information_protection_policy_name="str", information_protection_policy={ "id": "str", - "informationTypes": { - "str": { - "custom": bool, - "description": "str", - "displayName": "str", - "enabled": bool, - "keywords": [{"canBeNumeric": bool, "custom": bool, "excluded": bool, "pattern": "str"}], - "order": 0, - "recommendedLabelId": "str", - } + "name": "str", + "properties": { + "informationTypes": { + "str": { + "custom": bool, + "description": "str", + "displayName": "str", + "enabled": bool, + "keywords": [{"canBeNumeric": bool, "custom": bool, "excluded": bool, "pattern": "str"}], + "order": 0, + "recommendedLabelId": "str", + } + }, + "labels": { + "str": {"description": "str", "displayName": "str", "enabled": bool, "order": 0, "rank": "str"} + }, + "lastModifiedUtc": "2020-02-20 00:00:00", + "version": "str", }, - "labels": { - "str": {"description": "str", "displayName": "str", "enabled": bool, "order": 0, "rank": "str"} + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", }, - "lastModifiedUtc": "2020-02-20 00:00:00", - "name": "str", "type": "str", - "version": "str", }, api_version="2017-08-01-preview", ) diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_information_protection_policies_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_information_protection_policies_operations_async.py similarity index 60% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_information_protection_policies_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_information_protection_policies_operations_async.py index a33ef2ba0f57..f6fc5b9052c0 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_information_protection_policies_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_information_protection_policies_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterInformationProtectionPoliciesOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementInformationProtectionPoliciesOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -39,24 +39,34 @@ async def test_information_protection_policies_create_or_update(self, resource_g information_protection_policy_name="str", information_protection_policy={ "id": "str", - "informationTypes": { - "str": { - "custom": bool, - "description": "str", - "displayName": "str", - "enabled": bool, - "keywords": [{"canBeNumeric": bool, "custom": bool, "excluded": bool, "pattern": "str"}], - "order": 0, - "recommendedLabelId": "str", - } + "name": "str", + "properties": { + "informationTypes": { + "str": { + "custom": bool, + "description": "str", + "displayName": "str", + "enabled": bool, + "keywords": [{"canBeNumeric": bool, "custom": bool, "excluded": bool, "pattern": "str"}], + "order": 0, + "recommendedLabelId": "str", + } + }, + "labels": { + "str": {"description": "str", "displayName": "str", "enabled": bool, "order": 0, "rank": "str"} + }, + "lastModifiedUtc": "2020-02-20 00:00:00", + "version": "str", }, - "labels": { - "str": {"description": "str", "displayName": "str", "enabled": bool, "order": 0, "rank": "str"} + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", }, - "lastModifiedUtc": "2020-02-20 00:00:00", - "name": "str", "type": "str", - "version": "str", }, api_version="2017-08-01-preview", ) diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solution_analytics_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solution_analytics_operations.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solution_analytics_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solution_analytics_operations.py index 1e70d9ae2547..06bf1e32595d 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solution_analytics_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solution_analytics_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,14 +14,14 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterIotSecuritySolutionAnalyticsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementIotSecuritySolutionAnalyticsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_iot_security_solution_analytics_list(self, resource_group): - response = self.client.iot_security_solution_analytics.list( + def test_iot_security_solution_analytics_get(self, resource_group): + response = self.client.iot_security_solution_analytics.get( resource_group_name=resource_group.name, solution_name="str", api_version="2019-08-01", @@ -32,8 +32,8 @@ def test_iot_security_solution_analytics_list(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_iot_security_solution_analytics_get(self, resource_group): - response = self.client.iot_security_solution_analytics.get( + def test_iot_security_solution_analytics_list(self, resource_group): + response = self.client.iot_security_solution_analytics.list( resource_group_name=resource_group.name, solution_name="str", api_version="2019-08-01", diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solution_analytics_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solution_analytics_operations_async.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solution_analytics_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solution_analytics_operations_async.py index a7bf8b27a647..e38a60f38e2d 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solution_analytics_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solution_analytics_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,14 +15,14 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterIotSecuritySolutionAnalyticsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementIotSecuritySolutionAnalyticsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_iot_security_solution_analytics_list(self, resource_group): - response = await self.client.iot_security_solution_analytics.list( + async def test_iot_security_solution_analytics_get(self, resource_group): + response = await self.client.iot_security_solution_analytics.get( resource_group_name=resource_group.name, solution_name="str", api_version="2019-08-01", @@ -33,8 +33,8 @@ async def test_iot_security_solution_analytics_list(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_iot_security_solution_analytics_get(self, resource_group): - response = await self.client.iot_security_solution_analytics.get( + async def test_iot_security_solution_analytics_list(self, resource_group): + response = await self.client.iot_security_solution_analytics.list( resource_group_name=resource_group.name, solution_name="str", api_version="2019-08-01", diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solution_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solution_operations.py similarity index 75% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solution_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solution_operations.py index 8f4d49753c0a..36c564c1a6dd 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solution_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solution_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,30 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterIotSecuritySolutionOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementIotSecuritySolutionOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_iot_security_solution_list_by_subscription(self, resource_group): - response = self.client.iot_security_solution.list_by_subscription( - api_version="2019-08-01", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_iot_security_solution_list_by_resource_group(self, resource_group): - response = self.client.iot_security_solution.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2019-08-01", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -58,17 +37,22 @@ def test_iot_security_solution_create_or_update(self, resource_group): resource_group_name=resource_group.name, solution_name="str", iot_security_solution_data={ - "additionalWorkspaces": [{"dataTypes": ["str"], "type": "Sentinel", "workspace": "str"}], - "autoDiscoveredResources": ["str"], - "disabledDataSources": ["str"], - "displayName": "str", - "export": ["str"], "id": "str", - "iotHubs": ["str"], "location": "str", "name": "str", - "recommendationsConfiguration": [{"recommendationType": "str", "status": "Enabled", "name": "str"}], - "status": "Enabled", + "properties": { + "displayName": "str", + "iotHubs": ["str"], + "additionalWorkspaces": [{"dataTypes": ["str"], "type": "str", "workspace": "str"}], + "autoDiscoveredResources": ["str"], + "disabledDataSources": ["str"], + "export": ["str"], + "recommendationsConfiguration": [{"recommendationType": "str", "status": "str", "name": "str"}], + "status": "str", + "unmaskedIpLoggingStatus": "str", + "userDefinedResources": {"query": "str", "querySubscriptions": ["str"]}, + "workspace": "str", + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -79,9 +63,6 @@ def test_iot_security_solution_create_or_update(self, resource_group): }, "tags": {"str": "str"}, "type": "str", - "unmaskedIpLoggingStatus": "Disabled", - "userDefinedResources": {"query": "str", "querySubscriptions": ["str"]}, - "workspace": "str", }, api_version="2019-08-01", ) @@ -96,9 +77,11 @@ def test_iot_security_solution_update(self, resource_group): resource_group_name=resource_group.name, solution_name="str", update_iot_security_solution_data={ - "recommendationsConfiguration": [{"recommendationType": "str", "status": "Enabled", "name": "str"}], + "properties": { + "recommendationsConfiguration": [{"recommendationType": "str", "status": "str", "name": "str"}], + "userDefinedResources": {"query": "str", "querySubscriptions": ["str"]}, + }, "tags": {"str": "str"}, - "userDefinedResources": {"query": "str", "querySubscriptions": ["str"]}, }, api_version="2019-08-01", ) @@ -117,3 +100,24 @@ def test_iot_security_solution_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_iot_security_solution_list_by_resource_group(self, resource_group): + response = self.client.iot_security_solution.list_by_resource_group( + resource_group_name=resource_group.name, + api_version="2019-08-01", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_iot_security_solution_list_by_subscription(self, resource_group): + response = self.client.iot_security_solution.list_by_subscription( + api_version="2019-08-01", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solution_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solution_operations_async.py similarity index 75% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solution_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solution_operations_async.py index 0060761b0931..0e86822143c1 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solution_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solution_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,30 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterIotSecuritySolutionOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementIotSecuritySolutionOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_iot_security_solution_list_by_subscription(self, resource_group): - response = self.client.iot_security_solution.list_by_subscription( - api_version="2019-08-01", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_iot_security_solution_list_by_resource_group(self, resource_group): - response = self.client.iot_security_solution.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2019-08-01", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -59,17 +38,22 @@ async def test_iot_security_solution_create_or_update(self, resource_group): resource_group_name=resource_group.name, solution_name="str", iot_security_solution_data={ - "additionalWorkspaces": [{"dataTypes": ["str"], "type": "Sentinel", "workspace": "str"}], - "autoDiscoveredResources": ["str"], - "disabledDataSources": ["str"], - "displayName": "str", - "export": ["str"], "id": "str", - "iotHubs": ["str"], "location": "str", "name": "str", - "recommendationsConfiguration": [{"recommendationType": "str", "status": "Enabled", "name": "str"}], - "status": "Enabled", + "properties": { + "displayName": "str", + "iotHubs": ["str"], + "additionalWorkspaces": [{"dataTypes": ["str"], "type": "str", "workspace": "str"}], + "autoDiscoveredResources": ["str"], + "disabledDataSources": ["str"], + "export": ["str"], + "recommendationsConfiguration": [{"recommendationType": "str", "status": "str", "name": "str"}], + "status": "str", + "unmaskedIpLoggingStatus": "str", + "userDefinedResources": {"query": "str", "querySubscriptions": ["str"]}, + "workspace": "str", + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -80,9 +64,6 @@ async def test_iot_security_solution_create_or_update(self, resource_group): }, "tags": {"str": "str"}, "type": "str", - "unmaskedIpLoggingStatus": "Disabled", - "userDefinedResources": {"query": "str", "querySubscriptions": ["str"]}, - "workspace": "str", }, api_version="2019-08-01", ) @@ -97,9 +78,11 @@ async def test_iot_security_solution_update(self, resource_group): resource_group_name=resource_group.name, solution_name="str", update_iot_security_solution_data={ - "recommendationsConfiguration": [{"recommendationType": "str", "status": "Enabled", "name": "str"}], + "properties": { + "recommendationsConfiguration": [{"recommendationType": "str", "status": "str", "name": "str"}], + "userDefinedResources": {"query": "str", "querySubscriptions": ["str"]}, + }, "tags": {"str": "str"}, - "userDefinedResources": {"query": "str", "querySubscriptions": ["str"]}, }, api_version="2019-08-01", ) @@ -118,3 +101,24 @@ async def test_iot_security_solution_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_iot_security_solution_list_by_resource_group(self, resource_group): + response = self.client.iot_security_solution.list_by_resource_group( + resource_group_name=resource_group.name, + api_version="2019-08-01", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_iot_security_solution_list_by_subscription(self, resource_group): + response = self.client.iot_security_solution.list_by_subscription( + api_version="2019-08-01", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solutions_analytics_aggregated_alert_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solutions_analytics_aggregated_alert_operations.py similarity index 88% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solutions_analytics_aggregated_alert_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solutions_analytics_aggregated_alert_operations.py index 2ee66c9ea8b8..432084ce810b 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solutions_analytics_aggregated_alert_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solutions_analytics_aggregated_alert_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,32 +14,32 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterIotSecuritySolutionsAnalyticsAggregatedAlertOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementIotSecuritySolutionsAnalyticsAggregatedAlertOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_iot_security_solutions_analytics_aggregated_alert_list(self, resource_group): - response = self.client.iot_security_solutions_analytics_aggregated_alert.list( + def test_iot_security_solutions_analytics_aggregated_alert_get(self, resource_group): + response = self.client.iot_security_solutions_analytics_aggregated_alert.get( resource_group_name=resource_group.name, solution_name="str", + aggregated_alert_name="str", api_version="2019-08-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_iot_security_solutions_analytics_aggregated_alert_get(self, resource_group): - response = self.client.iot_security_solutions_analytics_aggregated_alert.get( + def test_iot_security_solutions_analytics_aggregated_alert_list(self, resource_group): + response = self.client.iot_security_solutions_analytics_aggregated_alert.list( resource_group_name=resource_group.name, solution_name="str", - aggregated_alert_name="str", api_version="2019-08-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solutions_analytics_aggregated_alert_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solutions_analytics_aggregated_alert_operations_async.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solutions_analytics_aggregated_alert_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solutions_analytics_aggregated_alert_operations_async.py index aa9694252483..7ea03dc3af70 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solutions_analytics_aggregated_alert_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solutions_analytics_aggregated_alert_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,32 +15,32 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterIotSecuritySolutionsAnalyticsAggregatedAlertOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementIotSecuritySolutionsAnalyticsAggregatedAlertOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_iot_security_solutions_analytics_aggregated_alert_list(self, resource_group): - response = self.client.iot_security_solutions_analytics_aggregated_alert.list( + async def test_iot_security_solutions_analytics_aggregated_alert_get(self, resource_group): + response = await self.client.iot_security_solutions_analytics_aggregated_alert.get( resource_group_name=resource_group.name, solution_name="str", + aggregated_alert_name="str", api_version="2019-08-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_iot_security_solutions_analytics_aggregated_alert_get(self, resource_group): - response = await self.client.iot_security_solutions_analytics_aggregated_alert.get( + async def test_iot_security_solutions_analytics_aggregated_alert_list(self, resource_group): + response = self.client.iot_security_solutions_analytics_aggregated_alert.list( resource_group_name=resource_group.name, solution_name="str", - aggregated_alert_name="str", api_version="2019-08-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solutions_analytics_recommendation_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solutions_analytics_recommendation_operations.py similarity index 85% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solutions_analytics_recommendation_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solutions_analytics_recommendation_operations.py index 369631744a86..d19744fea73d 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solutions_analytics_recommendation_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solutions_analytics_recommendation_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterIotSecuritySolutionsAnalyticsRecommendationOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementIotSecuritySolutionsAnalyticsRecommendationOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solutions_analytics_recommendation_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solutions_analytics_recommendation_operations_async.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solutions_analytics_recommendation_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solutions_analytics_recommendation_operations_async.py index bbe598b529c2..6e99e02732aa 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_iot_security_solutions_analytics_recommendation_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_iot_security_solutions_analytics_recommendation_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterIotSecuritySolutionsAnalyticsRecommendationOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementIotSecuritySolutionsAnalyticsRecommendationOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_jit_network_access_policies_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_jit_network_access_policies_operations.py similarity index 66% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_jit_network_access_policies_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_jit_network_access_policies_operations.py index db242be2b7fc..26c624e75b42 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_jit_network_access_policies_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_jit_network_access_policies_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,39 +14,102 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterJitNetworkAccessPoliciesOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementJitNetworkAccessPoliciesOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_jit_network_access_policies_list(self, resource_group): - response = self.client.jit_network_access_policies.list( + def test_jit_network_access_policies_get(self, resource_group): + response = self.client.jit_network_access_policies.get( + resource_group_name=resource_group.name, + asc_location="str", + jit_network_access_policy_name="str", api_version="2020-01-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_jit_network_access_policies_list_by_region(self, resource_group): - response = self.client.jit_network_access_policies.list_by_region( + def test_jit_network_access_policies_create_or_update(self, resource_group): + response = self.client.jit_network_access_policies.create_or_update( + resource_group_name=resource_group.name, asc_location="str", + jit_network_access_policy_name="str", + body={ + "location": "str", + "properties": { + "virtualMachines": [ + { + "id": "str", + "ports": [ + { + "maxRequestAccessDuration": "str", + "number": 0, + "protocol": "str", + "allowedSourceAddressPrefix": "str", + "allowedSourceAddressPrefixes": ["str"], + } + ], + "publicIpAddress": "str", + } + ], + "provisioningState": "str", + "requests": [ + { + "requestor": "str", + "startTimeUtc": "2020-02-20 00:00:00", + "virtualMachines": [ + { + "id": "str", + "ports": [ + { + "endTimeUtc": "2020-02-20 00:00:00", + "number": 0, + "status": "str", + "statusReason": "str", + "allowedSourceAddressPrefix": "str", + "allowedSourceAddressPrefixes": ["str"], + "mappedPort": 0, + } + ], + } + ], + "justification": "str", + } + ], + }, + "id": "str", + "kind": "str", + "name": "str", + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2020-01-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_jit_network_access_policies_list_by_resource_group(self, resource_group): - response = self.client.jit_network_access_policies.list_by_resource_group( + def test_jit_network_access_policies_delete(self, resource_group): + response = self.client.jit_network_access_policies.delete( resource_group_name=resource_group.name, + asc_location="str", + jit_network_access_policy_name="str", api_version="2020-01-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @@ -64,21 +127,19 @@ def test_jit_network_access_policies_list_by_resource_group_and_region(self, res @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_jit_network_access_policies_get(self, resource_group): - response = self.client.jit_network_access_policies.get( - resource_group_name=resource_group.name, + def test_jit_network_access_policies_list_by_region(self, resource_group): + response = self.client.jit_network_access_policies.list_by_region( asc_location="str", - jit_network_access_policy_name="str", api_version="2020-01-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_jit_network_access_policies_create_or_update(self, resource_group): - response = self.client.jit_network_access_policies.create_or_update( + def test_jit_network_access_policies_initiate(self, resource_group): + response = self.client.jit_network_access_policies.initiate( resource_group_name=resource_group.name, asc_location="str", jit_network_access_policy_name="str", @@ -87,48 +148,14 @@ def test_jit_network_access_policies_create_or_update(self, resource_group): { "id": "str", "ports": [ - { - "maxRequestAccessDuration": "str", - "number": 0, - "protocol": "str", - "allowedSourceAddressPrefix": "str", - "allowedSourceAddressPrefixes": ["str"], - } - ], - "publicIpAddress": "str", - } - ], - "id": "str", - "kind": "str", - "location": "str", - "name": "str", - "provisioningState": "str", - "requests": [ - { - "requestor": "str", - "startTimeUtc": "2020-02-20 00:00:00", - "virtualMachines": [ - { - "id": "str", - "ports": [ - { - "endTimeUtc": "2020-02-20 00:00:00", - "number": 0, - "status": "str", - "statusReason": "str", - "allowedSourceAddressPrefix": "str", - "allowedSourceAddressPrefixes": ["str"], - "mappedPort": 0, - } - ], - } + {"endTimeUtc": "2020-02-20 00:00:00", "number": 0, "allowedSourceAddressPrefix": "str"} ], - "justification": "str", } ], - "type": "str", + "justification": "str", }, api_version="2020-01-01", + jit_network_access_policy_initiate_type="initiate", ) # please add some check logic here by yourself @@ -136,38 +163,21 @@ def test_jit_network_access_policies_create_or_update(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_jit_network_access_policies_delete(self, resource_group): - response = self.client.jit_network_access_policies.delete( - resource_group_name=resource_group.name, - asc_location="str", - jit_network_access_policy_name="str", + def test_jit_network_access_policies_list(self, resource_group): + response = self.client.jit_network_access_policies.list( api_version="2020-01-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_jit_network_access_policies_initiate(self, resource_group): - response = self.client.jit_network_access_policies.initiate( + def test_jit_network_access_policies_list_by_resource_group(self, resource_group): + response = self.client.jit_network_access_policies.list_by_resource_group( resource_group_name=resource_group.name, - asc_location="str", - jit_network_access_policy_name="str", - body={ - "virtualMachines": [ - { - "id": "str", - "ports": [ - {"endTimeUtc": "2020-02-20 00:00:00", "number": 0, "allowedSourceAddressPrefix": "str"} - ], - } - ], - "justification": "str", - }, - jit_network_access_policy_initiate_type="initiate", api_version="2020-01-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_jit_network_access_policies_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_jit_network_access_policies_operations_async.py similarity index 67% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_jit_network_access_policies_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_jit_network_access_policies_operations_async.py index bd287170af18..ca68e921fc1b 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_jit_network_access_policies_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_jit_network_access_policies_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,39 +15,102 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterJitNetworkAccessPoliciesOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementJitNetworkAccessPoliciesOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_jit_network_access_policies_list(self, resource_group): - response = self.client.jit_network_access_policies.list( + async def test_jit_network_access_policies_get(self, resource_group): + response = await self.client.jit_network_access_policies.get( + resource_group_name=resource_group.name, + asc_location="str", + jit_network_access_policy_name="str", api_version="2020-01-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_jit_network_access_policies_list_by_region(self, resource_group): - response = self.client.jit_network_access_policies.list_by_region( + async def test_jit_network_access_policies_create_or_update(self, resource_group): + response = await self.client.jit_network_access_policies.create_or_update( + resource_group_name=resource_group.name, asc_location="str", + jit_network_access_policy_name="str", + body={ + "location": "str", + "properties": { + "virtualMachines": [ + { + "id": "str", + "ports": [ + { + "maxRequestAccessDuration": "str", + "number": 0, + "protocol": "str", + "allowedSourceAddressPrefix": "str", + "allowedSourceAddressPrefixes": ["str"], + } + ], + "publicIpAddress": "str", + } + ], + "provisioningState": "str", + "requests": [ + { + "requestor": "str", + "startTimeUtc": "2020-02-20 00:00:00", + "virtualMachines": [ + { + "id": "str", + "ports": [ + { + "endTimeUtc": "2020-02-20 00:00:00", + "number": 0, + "status": "str", + "statusReason": "str", + "allowedSourceAddressPrefix": "str", + "allowedSourceAddressPrefixes": ["str"], + "mappedPort": 0, + } + ], + } + ], + "justification": "str", + } + ], + }, + "id": "str", + "kind": "str", + "name": "str", + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2020-01-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_jit_network_access_policies_list_by_resource_group(self, resource_group): - response = self.client.jit_network_access_policies.list_by_resource_group( + async def test_jit_network_access_policies_delete(self, resource_group): + response = await self.client.jit_network_access_policies.delete( resource_group_name=resource_group.name, + asc_location="str", + jit_network_access_policy_name="str", api_version="2020-01-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @@ -65,21 +128,19 @@ async def test_jit_network_access_policies_list_by_resource_group_and_region(sel @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_jit_network_access_policies_get(self, resource_group): - response = await self.client.jit_network_access_policies.get( - resource_group_name=resource_group.name, + async def test_jit_network_access_policies_list_by_region(self, resource_group): + response = self.client.jit_network_access_policies.list_by_region( asc_location="str", - jit_network_access_policy_name="str", api_version="2020-01-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_jit_network_access_policies_create_or_update(self, resource_group): - response = await self.client.jit_network_access_policies.create_or_update( + async def test_jit_network_access_policies_initiate(self, resource_group): + response = await self.client.jit_network_access_policies.initiate( resource_group_name=resource_group.name, asc_location="str", jit_network_access_policy_name="str", @@ -88,48 +149,14 @@ async def test_jit_network_access_policies_create_or_update(self, resource_group { "id": "str", "ports": [ - { - "maxRequestAccessDuration": "str", - "number": 0, - "protocol": "str", - "allowedSourceAddressPrefix": "str", - "allowedSourceAddressPrefixes": ["str"], - } - ], - "publicIpAddress": "str", - } - ], - "id": "str", - "kind": "str", - "location": "str", - "name": "str", - "provisioningState": "str", - "requests": [ - { - "requestor": "str", - "startTimeUtc": "2020-02-20 00:00:00", - "virtualMachines": [ - { - "id": "str", - "ports": [ - { - "endTimeUtc": "2020-02-20 00:00:00", - "number": 0, - "status": "str", - "statusReason": "str", - "allowedSourceAddressPrefix": "str", - "allowedSourceAddressPrefixes": ["str"], - "mappedPort": 0, - } - ], - } + {"endTimeUtc": "2020-02-20 00:00:00", "number": 0, "allowedSourceAddressPrefix": "str"} ], - "justification": "str", } ], - "type": "str", + "justification": "str", }, api_version="2020-01-01", + jit_network_access_policy_initiate_type="initiate", ) # please add some check logic here by yourself @@ -137,38 +164,21 @@ async def test_jit_network_access_policies_create_or_update(self, resource_group @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_jit_network_access_policies_delete(self, resource_group): - response = await self.client.jit_network_access_policies.delete( - resource_group_name=resource_group.name, - asc_location="str", - jit_network_access_policy_name="str", + async def test_jit_network_access_policies_list(self, resource_group): + response = self.client.jit_network_access_policies.list( api_version="2020-01-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_jit_network_access_policies_initiate(self, resource_group): - response = await self.client.jit_network_access_policies.initiate( + async def test_jit_network_access_policies_list_by_resource_group(self, resource_group): + response = self.client.jit_network_access_policies.list_by_resource_group( resource_group_name=resource_group.name, - asc_location="str", - jit_network_access_policy_name="str", - body={ - "virtualMachines": [ - { - "id": "str", - "ports": [ - {"endTimeUtc": "2020-02-20 00:00:00", "number": 0, "allowedSourceAddressPrefix": "str"} - ], - } - ], - "justification": "str", - }, - jit_network_access_policy_initiate_type="initiate", api_version="2020-01-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_locations_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_locations_operations.py similarity index 83% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_locations_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_locations_operations.py index 68d8e081d799..78f6e1ec9e3b 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_locations_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_locations_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,27 +14,27 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterLocationsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementLocationsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_locations_list(self, resource_group): - response = self.client.locations.list( + def test_locations_get(self, resource_group): + response = self.client.locations.get( + asc_location="str", api_version="2015-06-01-preview", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_locations_get(self, resource_group): - response = self.client.locations.get( - asc_location="str", + def test_locations_list(self, resource_group): + response = self.client.locations.list( api_version="2015-06-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_locations_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_locations_operations_async.py similarity index 83% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_locations_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_locations_operations_async.py index b5e2c8f8aff3..e70c0c106bb2 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_locations_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_locations_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,27 +15,27 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterLocationsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementLocationsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_locations_list(self, resource_group): - response = self.client.locations.list( + async def test_locations_get(self, resource_group): + response = await self.client.locations.get( + asc_location="str", api_version="2015-06-01-preview", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_locations_get(self, resource_group): - response = await self.client.locations.get( - asc_location="str", + async def test_locations_list(self, resource_group): + response = self.client.locations.list( api_version="2015-06-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_mde_onboardings_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_mde_onboardings_operations.py similarity index 81% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_mde_onboardings_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_mde_onboardings_operations.py index f6f843c8d325..fd3f785e94bd 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_mde_onboardings_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_mde_onboardings_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,14 +14,14 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterMdeOnboardingsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementMdeOnboardingsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_mde_onboardings_list(self, resource_group): - response = self.client.mde_onboardings.list( + def test_mde_onboardings_get(self, resource_group): + response = self.client.mde_onboardings.get( api_version="2021-10-01-preview", ) @@ -30,10 +30,10 @@ def test_mde_onboardings_list(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_mde_onboardings_get(self, resource_group): - response = self.client.mde_onboardings.get( + def test_mde_onboardings_list(self, resource_group): + response = self.client.mde_onboardings.list( api_version="2021-10-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_mde_onboardings_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_mde_onboardings_operations_async.py similarity index 77% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_mde_onboardings_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_mde_onboardings_operations_async.py index bd80ec3a5a77..56dcab804cfd 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_mde_onboardings_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_mde_onboardings_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,14 +15,14 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterMdeOnboardingsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementMdeOnboardingsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_mde_onboardings_list(self, resource_group): - response = await self.client.mde_onboardings.list( + async def test_mde_onboardings_get(self, resource_group): + response = await self.client.mde_onboardings.get( api_version="2021-10-01-preview", ) @@ -31,10 +31,10 @@ async def test_mde_onboardings_list(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_mde_onboardings_get(self, resource_group): - response = await self.client.mde_onboardings.get( + async def test_mde_onboardings_list(self, resource_group): + response = self.client.mde_onboardings.list( api_version="2021-10-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_operation_results_operations.py similarity index 79% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_operation_results_operations.py index 747788c3f136..bceabb9373c9 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_operation_results_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterOperationResultsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementOperationResultsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_operation_results_operations_async.py similarity index 79% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_operation_results_operations_async.py index cb3d60e4c637..e88daa3434b4 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_results_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_operation_results_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterOperationResultsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementOperationResultsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_operation_statuses_operations.py similarity index 79% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_operation_statuses_operations.py index 71f4f4abf108..dca6392dc017 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_operation_statuses_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterOperationStatusesOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementOperationStatusesOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_operation_statuses_operations_async.py similarity index 79% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_operation_statuses_operations_async.py index 65d8711a1426..1d5a38fceb03 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operation_statuses_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_operation_statuses_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterOperationStatusesOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementOperationStatusesOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_operations.py similarity index 80% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_operations.py index bc28a4be1eb6..eb0325525a00 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_operations_async.py similarity index 79% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_operations_async.py index 17ebdc1a5ca1..6db52a3cf71f 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_pricings_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_pricings_operations.py similarity index 59% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_pricings_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_pricings_operations.py index 45ae54466bbe..3f9210430642 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_pricings_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_pricings_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterPricingsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementPricingsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -37,26 +37,36 @@ def test_pricings_update(self, resource_group): scope_id="str", pricing_name="str", pricing={ - "deprecated": bool, - "enablementTime": "2020-02-20 00:00:00", - "enforce": "str", - "extensions": [ - { - "isEnabled": "str", - "name": "str", - "additionalExtensionProperties": {"str": {}}, - "operationStatus": {"code": "str", "message": "str"}, - } - ], - "freeTrialRemainingTime": "1 day, 0:00:00", "id": "str", - "inherited": "str", - "inheritedFrom": "str", "name": "str", - "pricingTier": "str", - "replacedBy": ["str"], - "resourcesCoverageStatus": "str", - "subPlan": "str", + "properties": { + "pricingTier": "str", + "deprecated": bool, + "enablementTime": "2020-02-20 00:00:00", + "enforce": "str", + "extensions": [ + { + "isEnabled": "str", + "name": "str", + "additionalExtensionProperties": {"str": {}}, + "operationStatus": {"code": "str", "message": "str"}, + } + ], + "freeTrialRemainingTime": "1 day, 0:00:00", + "inherited": "str", + "inheritedFrom": "str", + "replacedBy": ["str"], + "resourcesCoverageStatus": "str", + "subPlan": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2024-01-01", @@ -84,6 +94,6 @@ def test_pricings_list(self, resource_group): scope_id="str", api_version="2024-01-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_pricings_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_pricings_operations_async.py similarity index 58% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_pricings_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_pricings_operations_async.py index a709b115b9a3..7981ccd12842 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_pricings_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_pricings_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterPricingsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementPricingsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -38,26 +38,36 @@ async def test_pricings_update(self, resource_group): scope_id="str", pricing_name="str", pricing={ - "deprecated": bool, - "enablementTime": "2020-02-20 00:00:00", - "enforce": "str", - "extensions": [ - { - "isEnabled": "str", - "name": "str", - "additionalExtensionProperties": {"str": {}}, - "operationStatus": {"code": "str", "message": "str"}, - } - ], - "freeTrialRemainingTime": "1 day, 0:00:00", "id": "str", - "inherited": "str", - "inheritedFrom": "str", "name": "str", - "pricingTier": "str", - "replacedBy": ["str"], - "resourcesCoverageStatus": "str", - "subPlan": "str", + "properties": { + "pricingTier": "str", + "deprecated": bool, + "enablementTime": "2020-02-20 00:00:00", + "enforce": "str", + "extensions": [ + { + "isEnabled": "str", + "name": "str", + "additionalExtensionProperties": {"str": {}}, + "operationStatus": {"code": "str", "message": "str"}, + } + ], + "freeTrialRemainingTime": "1 day, 0:00:00", + "inherited": "str", + "inheritedFrom": "str", + "replacedBy": ["str"], + "resourcesCoverageStatus": "str", + "subPlan": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2024-01-01", @@ -81,10 +91,10 @@ async def test_pricings_delete(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async async def test_pricings_list(self, resource_group): - response = await self.client.pricings.list( + response = self.client.pricings.list( scope_id="str", api_version="2024-01-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_endpoint_connections_operations.py similarity index 80% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_endpoint_connections_operations.py index 46861b7aeeb2..e89dc51fc0e0 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_endpoint_connections_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,21 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterPrivateEndpointConnectionsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementPrivateEndpointConnectionsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_private_endpoint_connections_list(self, resource_group): - response = self.client.private_endpoint_connections.list( - resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, - api_version="2026-01-01", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -36,7 +24,6 @@ def test_private_endpoint_connections_get(self, resource_group): response = self.client.private_endpoint_connections.get( resource_group_name=resource_group.name, private_endpoint_connection_name="str", - private_link_parameters={"privateLinkName": "str"}, api_version="2026-01-01", ) @@ -48,15 +35,20 @@ def test_private_endpoint_connections_get(self, resource_group): def test_private_endpoint_connections_begin_create_or_update(self, resource_group): response = self.client.private_endpoint_connections.begin_create_or_update( resource_group_name=resource_group.name, + private_link_name="str", private_endpoint_connection_name="str", - private_link_parameters={"privateLinkName": "str"}, private_endpoint_connection={ - "groupIds": ["str"], "id": "str", "name": "str", - "privateEndpoint": {"id": "str"}, - "privateLinkServiceConnectionState": {"actionsRequired": "str", "description": "str", "status": "str"}, - "provisioningState": "str", + "properties": { + "privateLinkServiceConnectionState": { + "actionsRequired": "str", + "description": "str", + "status": "str", + }, + "privateEndpoint": {"id": "str"}, + "provisioningState": "str", + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -78,10 +70,22 @@ def test_private_endpoint_connections_begin_create_or_update(self, resource_grou def test_private_endpoint_connections_begin_delete(self, resource_group): response = self.client.private_endpoint_connections.begin_delete( resource_group_name=resource_group.name, + private_link_name="str", private_endpoint_connection_name="str", - private_link_parameters={"privateLinkName": "str"}, api_version="2026-01-01", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_private_endpoint_connections_list(self, resource_group): + response = self.client.private_endpoint_connections.list( + resource_group_name=resource_group.name, + private_link_name="str", + api_version="2026-01-01", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_endpoint_connections_operations_async.py similarity index 79% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_endpoint_connections_operations_async.py index 7bc604b65ab1..c08f99f05d17 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_endpoint_connections_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_endpoint_connections_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,21 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterPrivateEndpointConnectionsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementPrivateEndpointConnectionsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_private_endpoint_connections_list(self, resource_group): - response = self.client.private_endpoint_connections.list( - resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, - api_version="2026-01-01", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -37,7 +25,6 @@ async def test_private_endpoint_connections_get(self, resource_group): response = await self.client.private_endpoint_connections.get( resource_group_name=resource_group.name, private_endpoint_connection_name="str", - private_link_parameters={"privateLinkName": "str"}, api_version="2026-01-01", ) @@ -50,19 +37,20 @@ async def test_private_endpoint_connections_begin_create_or_update(self, resourc response = await ( await self.client.private_endpoint_connections.begin_create_or_update( resource_group_name=resource_group.name, + private_link_name="str", private_endpoint_connection_name="str", - private_link_parameters={"privateLinkName": "str"}, private_endpoint_connection={ - "groupIds": ["str"], "id": "str", "name": "str", - "privateEndpoint": {"id": "str"}, - "privateLinkServiceConnectionState": { - "actionsRequired": "str", - "description": "str", - "status": "str", + "properties": { + "privateLinkServiceConnectionState": { + "actionsRequired": "str", + "description": "str", + "status": "str", + }, + "privateEndpoint": {"id": "str"}, + "provisioningState": "str", }, - "provisioningState": "str", "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -86,11 +74,23 @@ async def test_private_endpoint_connections_begin_delete(self, resource_group): response = await ( await self.client.private_endpoint_connections.begin_delete( resource_group_name=resource_group.name, + private_link_name="str", private_endpoint_connection_name="str", - private_link_parameters={"privateLinkName": "str"}, api_version="2026-01-01", ) ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_private_endpoint_connections_list(self, resource_group): + response = self.client.private_endpoint_connections.list( + resource_group_name=resource_group.name, + private_link_name="str", + api_version="2026-01-01", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_link_resources_operations.py similarity index 79% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_link_resources_operations.py index 63d2be392076..ec6cce855427 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_link_resources_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,31 +14,31 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterPrivateLinkResourcesOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementPrivateLinkResourcesOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_private_link_resources_list(self, resource_group): - response = self.client.private_link_resources.list( + def test_private_link_resources_get(self, resource_group): + response = self.client.private_link_resources.get( resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", + group_id="str", api_version="2026-01-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_private_link_resources_get(self, resource_group): - response = self.client.private_link_resources.get( + def test_private_link_resources_list(self, resource_group): + response = self.client.private_link_resources.list( resource_group_name=resource_group.name, - group_id="str", - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", api_version="2026-01-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_link_resources_operations_async.py similarity index 79% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_link_resources_operations_async.py index a712a1b49f03..7fbdcd7f9598 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_link_resources_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_link_resources_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,31 +15,31 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterPrivateLinkResourcesOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementPrivateLinkResourcesOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_private_link_resources_list(self, resource_group): - response = self.client.private_link_resources.list( + async def test_private_link_resources_get(self, resource_group): + response = await self.client.private_link_resources.get( resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", + group_id="str", api_version="2026-01-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_private_link_resources_get(self, resource_group): - response = await self.client.private_link_resources.get( + async def test_private_link_resources_list(self, resource_group): + response = self.client.private_link_resources.list( resource_group_name=resource_group.name, - group_id="str", - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", api_version="2026-01-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_links_operations.py similarity index 61% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_links_operations.py index 61b69d40d9e9..5c3525b0a1b4 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_links_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,37 +14,16 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterPrivateLinksOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementPrivateLinksOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_private_links_list_by_subscription(self, resource_group): - response = self.client.private_links.list_by_subscription( - api_version="2026-01-01", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_private_links_list(self, resource_group): - response = self.client.private_links.list( - resource_group_name=resource_group.name, - api_version="2026-01-01", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy def test_private_links_get(self, resource_group): response = self.client.private_links.get( resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", api_version="2026-01-01", ) @@ -56,7 +35,7 @@ def test_private_links_get(self, resource_group): def test_private_links_head(self, resource_group): response = self.client.private_links.head( resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", api_version="2026-01-01", ) @@ -68,54 +47,55 @@ def test_private_links_head(self, resource_group): def test_private_links_begin_create(self, resource_group): response = self.client.private_links.begin_create( resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", private_link={ "location": "str", + "properties": { + "privateEndpointConnections": [ + { + "id": "str", + "name": "str", + "properties": { + "privateLinkServiceConnectionState": { + "actionsRequired": "str", + "description": "str", + "status": "str", + }, + "privateEndpoint": {"id": "str"}, + "provisioningState": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + } + ], + "privateLinkResources": [ + { + "id": "str", + "name": "str", + "properties": {"groupId": "str", "requiredMembers": ["str"], "requiredZoneNames": ["str"]}, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + } + ], + "provisioningState": "str", + "publicNetworkAccess": "str", + }, "id": "str", "name": "str", - "privateEndpointConnections": [ - { - "groupIds": ["str"], - "id": "str", - "name": "str", - "privateEndpoint": {"id": "str"}, - "privateLinkServiceConnectionState": { - "actionsRequired": "str", - "description": "str", - "status": "str", - }, - "provisioningState": "str", - "systemData": { - "createdAt": "2020-02-20 00:00:00", - "createdBy": "str", - "createdByType": "str", - "lastModifiedAt": "2020-02-20 00:00:00", - "lastModifiedBy": "str", - "lastModifiedByType": "str", - }, - "type": "str", - } - ], - "privateLinkResources": [ - { - "groupId": "str", - "id": "str", - "name": "str", - "requiredMembers": ["str"], - "requiredZoneNames": ["str"], - "systemData": { - "createdAt": "2020-02-20 00:00:00", - "createdBy": "str", - "createdByType": "str", - "lastModifiedAt": "2020-02-20 00:00:00", - "lastModifiedBy": "str", - "lastModifiedByType": "str", - }, - "type": "str", - } - ], - "provisioningState": "str", - "publicNetworkAccess": "Disabled", "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -138,7 +118,7 @@ def test_private_links_begin_create(self, resource_group): def test_private_links_update(self, resource_group): response = self.client.private_links.update( resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", private_link={"tags": {"str": "str"}}, api_version="2026-01-01", ) @@ -151,9 +131,30 @@ def test_private_links_update(self, resource_group): def test_private_links_begin_delete(self, resource_group): response = self.client.private_links.begin_delete( resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", api_version="2026-01-01", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_private_links_list(self, resource_group): + response = self.client.private_links.list( + resource_group_name=resource_group.name, + api_version="2026-01-01", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_private_links_list_by_subscription(self, resource_group): + response = self.client.private_links.list_by_subscription( + api_version="2026-01-01", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_links_operations_async.py similarity index 59% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_links_operations_async.py index 295cf7ed598d..659d9dbe5ecc 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_private_links_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_private_links_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,37 +15,16 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterPrivateLinksOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementPrivateLinksOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_private_links_list_by_subscription(self, resource_group): - response = self.client.private_links.list_by_subscription( - api_version="2026-01-01", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_private_links_list(self, resource_group): - response = self.client.private_links.list( - resource_group_name=resource_group.name, - api_version="2026-01-01", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async async def test_private_links_get(self, resource_group): response = await self.client.private_links.get( resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", api_version="2026-01-01", ) @@ -57,7 +36,7 @@ async def test_private_links_get(self, resource_group): async def test_private_links_head(self, resource_group): response = await self.client.private_links.head( resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", api_version="2026-01-01", ) @@ -70,54 +49,59 @@ async def test_private_links_begin_create(self, resource_group): response = await ( await self.client.private_links.begin_create( resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", private_link={ "location": "str", + "properties": { + "privateEndpointConnections": [ + { + "id": "str", + "name": "str", + "properties": { + "privateLinkServiceConnectionState": { + "actionsRequired": "str", + "description": "str", + "status": "str", + }, + "privateEndpoint": {"id": "str"}, + "provisioningState": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + } + ], + "privateLinkResources": [ + { + "id": "str", + "name": "str", + "properties": { + "groupId": "str", + "requiredMembers": ["str"], + "requiredZoneNames": ["str"], + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + } + ], + "provisioningState": "str", + "publicNetworkAccess": "str", + }, "id": "str", "name": "str", - "privateEndpointConnections": [ - { - "groupIds": ["str"], - "id": "str", - "name": "str", - "privateEndpoint": {"id": "str"}, - "privateLinkServiceConnectionState": { - "actionsRequired": "str", - "description": "str", - "status": "str", - }, - "provisioningState": "str", - "systemData": { - "createdAt": "2020-02-20 00:00:00", - "createdBy": "str", - "createdByType": "str", - "lastModifiedAt": "2020-02-20 00:00:00", - "lastModifiedBy": "str", - "lastModifiedByType": "str", - }, - "type": "str", - } - ], - "privateLinkResources": [ - { - "groupId": "str", - "id": "str", - "name": "str", - "requiredMembers": ["str"], - "requiredZoneNames": ["str"], - "systemData": { - "createdAt": "2020-02-20 00:00:00", - "createdBy": "str", - "createdByType": "str", - "lastModifiedAt": "2020-02-20 00:00:00", - "lastModifiedBy": "str", - "lastModifiedByType": "str", - }, - "type": "str", - } - ], - "provisioningState": "str", - "publicNetworkAccess": "Disabled", "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -141,7 +125,7 @@ async def test_private_links_begin_create(self, resource_group): async def test_private_links_update(self, resource_group): response = await self.client.private_links.update( resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", private_link={"tags": {"str": "str"}}, api_version="2026-01-01", ) @@ -155,10 +139,31 @@ async def test_private_links_begin_delete(self, resource_group): response = await ( await self.client.private_links.begin_delete( resource_group_name=resource_group.name, - private_link_parameters={"privateLinkName": "str"}, + private_link_name="str", api_version="2026-01-01", ) ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_private_links_list(self, resource_group): + response = self.client.private_links.list( + resource_group_name=resource_group.name, + api_version="2026-01-01", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_private_links_list_by_subscription(self, resource_group): + response = self.client.private_links.list_by_subscription( + api_version="2026-01-01", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_assessments_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_assessments_operations.py similarity index 85% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_assessments_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_assessments_operations.py index fd58f730b7e3..c773dc56c111 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_assessments_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_assessments_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,31 +14,31 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterRegulatoryComplianceAssessmentsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementRegulatoryComplianceAssessmentsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_regulatory_compliance_assessments_list(self, resource_group): - response = self.client.regulatory_compliance_assessments.list( + def test_regulatory_compliance_assessments_get(self, resource_group): + response = self.client.regulatory_compliance_assessments.get( regulatory_compliance_standard_name="str", regulatory_compliance_control_name="str", + regulatory_compliance_assessment_name="str", api_version="2019-01-01-preview", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_regulatory_compliance_assessments_get(self, resource_group): - response = self.client.regulatory_compliance_assessments.get( + def test_regulatory_compliance_assessments_list(self, resource_group): + response = self.client.regulatory_compliance_assessments.list( regulatory_compliance_standard_name="str", regulatory_compliance_control_name="str", - regulatory_compliance_assessment_name="str", api_version="2019-01-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_assessments_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_assessments_operations_async.py similarity index 85% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_assessments_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_assessments_operations_async.py index d67cdb1bce04..0a7f7ec118a5 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_assessments_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_assessments_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,31 +15,31 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterRegulatoryComplianceAssessmentsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementRegulatoryComplianceAssessmentsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_regulatory_compliance_assessments_list(self, resource_group): - response = self.client.regulatory_compliance_assessments.list( + async def test_regulatory_compliance_assessments_get(self, resource_group): + response = await self.client.regulatory_compliance_assessments.get( regulatory_compliance_standard_name="str", regulatory_compliance_control_name="str", + regulatory_compliance_assessment_name="str", api_version="2019-01-01-preview", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_regulatory_compliance_assessments_get(self, resource_group): - response = await self.client.regulatory_compliance_assessments.get( + async def test_regulatory_compliance_assessments_list(self, resource_group): + response = self.client.regulatory_compliance_assessments.list( regulatory_compliance_standard_name="str", regulatory_compliance_control_name="str", - regulatory_compliance_assessment_name="str", api_version="2019-01-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_controls_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_controls_operations.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_controls_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_controls_operations.py index 0a9f2fe483e9..e2166a448a17 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_controls_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_controls_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,29 +14,29 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterRegulatoryComplianceControlsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementRegulatoryComplianceControlsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_regulatory_compliance_controls_list(self, resource_group): - response = self.client.regulatory_compliance_controls.list( + def test_regulatory_compliance_controls_get(self, resource_group): + response = self.client.regulatory_compliance_controls.get( regulatory_compliance_standard_name="str", + regulatory_compliance_control_name="str", api_version="2019-01-01-preview", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_regulatory_compliance_controls_get(self, resource_group): - response = self.client.regulatory_compliance_controls.get( + def test_regulatory_compliance_controls_list(self, resource_group): + response = self.client.regulatory_compliance_controls.list( regulatory_compliance_standard_name="str", - regulatory_compliance_control_name="str", api_version="2019-01-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_controls_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_controls_operations_async.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_controls_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_controls_operations_async.py index 3bbf9200a518..edb691c8c32a 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_controls_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_controls_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,29 +15,29 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterRegulatoryComplianceControlsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementRegulatoryComplianceControlsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_regulatory_compliance_controls_list(self, resource_group): - response = self.client.regulatory_compliance_controls.list( + async def test_regulatory_compliance_controls_get(self, resource_group): + response = await self.client.regulatory_compliance_controls.get( regulatory_compliance_standard_name="str", + regulatory_compliance_control_name="str", api_version="2019-01-01-preview", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_regulatory_compliance_controls_get(self, resource_group): - response = await self.client.regulatory_compliance_controls.get( + async def test_regulatory_compliance_controls_list(self, resource_group): + response = self.client.regulatory_compliance_controls.list( regulatory_compliance_standard_name="str", - regulatory_compliance_control_name="str", api_version="2019-01-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_standards_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_standards_operations.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_standards_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_standards_operations.py index 19f7c8019117..748ef8777f78 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_standards_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_standards_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,27 +14,27 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterRegulatoryComplianceStandardsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementRegulatoryComplianceStandardsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_regulatory_compliance_standards_list(self, resource_group): - response = self.client.regulatory_compliance_standards.list( + def test_regulatory_compliance_standards_get(self, resource_group): + response = self.client.regulatory_compliance_standards.get( + regulatory_compliance_standard_name="str", api_version="2019-01-01-preview", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_regulatory_compliance_standards_get(self, resource_group): - response = self.client.regulatory_compliance_standards.get( - regulatory_compliance_standard_name="str", + def test_regulatory_compliance_standards_list(self, resource_group): + response = self.client.regulatory_compliance_standards.list( api_version="2019-01-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_standards_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_standards_operations_async.py similarity index 83% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_standards_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_standards_operations_async.py index a17ed7f94e5f..32afd4dff01a 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_regulatory_compliance_standards_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_regulatory_compliance_standards_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,27 +15,27 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterRegulatoryComplianceStandardsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementRegulatoryComplianceStandardsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_regulatory_compliance_standards_list(self, resource_group): - response = self.client.regulatory_compliance_standards.list( + async def test_regulatory_compliance_standards_get(self, resource_group): + response = await self.client.regulatory_compliance_standards.get( + regulatory_compliance_standard_name="str", api_version="2019-01-01-preview", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_regulatory_compliance_standards_get(self, resource_group): - response = await self.client.regulatory_compliance_standards.get( - regulatory_compliance_standard_name="str", + async def test_regulatory_compliance_standards_list(self, resource_group): + response = self.client.regulatory_compliance_standards.list( api_version="2019-01-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_score_control_definitions_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_score_control_definitions_operations.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_score_control_definitions_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_score_control_definitions_operations.py index e5bf1f3ae7fc..e9b02c5da168 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_score_control_definitions_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_score_control_definitions_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecureScoreControlDefinitionsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecureScoreControlDefinitionsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_score_control_definitions_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_score_control_definitions_operations_async.py similarity index 83% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_score_control_definitions_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_score_control_definitions_operations_async.py index 5ae5c82abb8f..77530ad21771 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_score_control_definitions_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_score_control_definitions_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecureScoreControlDefinitionsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecureScoreControlDefinitionsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_score_controls_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_score_controls_operations.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_score_controls_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_score_controls_operations.py index 197f7ed91e1e..8d88cd7b46ce 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_score_controls_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_score_controls_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecureScoreControlsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecureScoreControlsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_score_controls_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_score_controls_operations_async.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_score_controls_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_score_controls_operations_async.py index 48a727ff944b..c4f1af77ce10 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_score_controls_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_score_controls_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecureScoreControlsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecureScoreControlsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_scores_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_scores_operations.py similarity index 83% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_scores_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_scores_operations.py index 227efef74efb..cefc79a1dc9b 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_scores_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_scores_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,27 +14,27 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecureScoresOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecureScoresOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_secure_scores_list(self, resource_group): - response = self.client.secure_scores.list( + def test_secure_scores_get(self, resource_group): + response = self.client.secure_scores.get( + secure_score_name="str", api_version="2020-01-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_secure_scores_get(self, resource_group): - response = self.client.secure_scores.get( - secure_score_name="str", + def test_secure_scores_list(self, resource_group): + response = self.client.secure_scores.list( api_version="2020-01-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_scores_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_scores_operations_async.py similarity index 83% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_scores_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_scores_operations_async.py index 2876ddc8fe9e..b2b58b1c4b31 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_secure_scores_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_secure_scores_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,27 +15,27 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecureScoresOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecureScoresOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_secure_scores_list(self, resource_group): - response = self.client.secure_scores.list( + async def test_secure_scores_get(self, resource_group): + response = await self.client.secure_scores.get( + secure_score_name="str", api_version="2020-01-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_secure_scores_get(self, resource_group): - response = await self.client.secure_scores.get( - secure_score_name="str", + async def test_secure_scores_list(self, resource_group): + response = self.client.secure_scores.list( api_version="2020-01-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connector_application_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connector_application_operations.py similarity index 72% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connector_application_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connector_application_operations.py index d275db93d07e..832eb8dec9fd 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connector_application_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connector_application_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecurityConnectorApplicationOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecurityConnectorApplicationOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -39,12 +39,22 @@ def test_security_connector_application_create_or_update(self, resource_group): security_connector_name="str", application_id="str", application={ - "conditionSets": [{}], - "description": "str", - "displayName": "str", "id": "str", "name": "str", - "sourceResourceType": "str", + "properties": { + "conditionSets": [{}], + "sourceResourceType": "str", + "description": "str", + "displayName": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2022-07-01-preview", diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connector_application_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connector_application_operations_async.py similarity index 73% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connector_application_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connector_application_operations_async.py index b147f0be2c4d..859e93976864 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connector_application_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connector_application_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecurityConnectorApplicationOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecurityConnectorApplicationOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -40,12 +40,22 @@ async def test_security_connector_application_create_or_update(self, resource_gr security_connector_name="str", application_id="str", application={ - "conditionSets": [{}], - "description": "str", - "displayName": "str", "id": "str", "name": "str", - "sourceResourceType": "str", + "properties": { + "conditionSets": [{}], + "sourceResourceType": "str", + "description": "str", + "displayName": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2022-07-01-preview", diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connector_applications_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connector_applications_operations.py similarity index 80% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connector_applications_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connector_applications_operations.py index 8724a63892cd..142a34089322 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connector_applications_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connector_applications_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecurityConnectorApplicationsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecurityConnectorApplicationsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connector_applications_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connector_applications_operations_async.py similarity index 80% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connector_applications_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connector_applications_operations_async.py index 765f51a9c502..4d3460ba98a1 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connector_applications_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connector_applications_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecurityConnectorApplicationsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecurityConnectorApplicationsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connectors_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connectors_operations.py similarity index 82% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connectors_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connectors_operations.py index afd9647ec2e2..105c7faa063e 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connectors_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connectors_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,30 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecurityConnectorsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecurityConnectorsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_security_connectors_list(self, resource_group): - response = self.client.security_connectors.list( - api_version="2024-08-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_security_connectors_list_by_resource_group(self, resource_group): - response = self.client.security_connectors.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2024-08-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -58,16 +37,18 @@ def test_security_connectors_create_or_update(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", security_connector={ - "environmentData": "environment_data", - "environmentName": "str", "etag": "str", - "hierarchyIdentifier": "str", - "hierarchyIdentifierTrialEndDate": "2020-02-20 00:00:00", "id": "str", "kind": "str", "location": "str", "name": "str", - "offerings": ["cloud_offering"], + "properties": { + "environmentData": "environment_data", + "environmentName": "str", + "hierarchyIdentifier": "str", + "hierarchyIdentifierTrialEndDate": "2020-02-20 00:00:00", + "offerings": ["cloud_offering"], + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -92,16 +73,18 @@ def test_security_connectors_update(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", security_connector={ - "environmentData": "environment_data", - "environmentName": "str", "etag": "str", - "hierarchyIdentifier": "str", - "hierarchyIdentifierTrialEndDate": "2020-02-20 00:00:00", "id": "str", "kind": "str", "location": "str", "name": "str", - "offerings": ["cloud_offering"], + "properties": { + "environmentData": "environment_data", + "environmentName": "str", + "hierarchyIdentifier": "str", + "hierarchyIdentifierTrialEndDate": "2020-02-20 00:00:00", + "offerings": ["cloud_offering"], + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -130,3 +113,24 @@ def test_security_connectors_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_security_connectors_list_by_resource_group(self, resource_group): + response = self.client.security_connectors.list_by_resource_group( + resource_group_name=resource_group.name, + api_version="2024-08-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_security_connectors_list(self, resource_group): + response = self.client.security_connectors.list( + api_version="2024-08-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connectors_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connectors_operations_async.py similarity index 82% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connectors_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connectors_operations_async.py index 80423dfbe6eb..e7f1715d69b0 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_connectors_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_connectors_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,30 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecurityConnectorsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecurityConnectorsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_security_connectors_list(self, resource_group): - response = self.client.security_connectors.list( - api_version="2024-08-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_security_connectors_list_by_resource_group(self, resource_group): - response = self.client.security_connectors.list_by_resource_group( - resource_group_name=resource_group.name, - api_version="2024-08-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -59,16 +38,18 @@ async def test_security_connectors_create_or_update(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", security_connector={ - "environmentData": "environment_data", - "environmentName": "str", "etag": "str", - "hierarchyIdentifier": "str", - "hierarchyIdentifierTrialEndDate": "2020-02-20 00:00:00", "id": "str", "kind": "str", "location": "str", "name": "str", - "offerings": ["cloud_offering"], + "properties": { + "environmentData": "environment_data", + "environmentName": "str", + "hierarchyIdentifier": "str", + "hierarchyIdentifierTrialEndDate": "2020-02-20 00:00:00", + "offerings": ["cloud_offering"], + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -93,16 +74,18 @@ async def test_security_connectors_update(self, resource_group): resource_group_name=resource_group.name, security_connector_name="str", security_connector={ - "environmentData": "environment_data", - "environmentName": "str", "etag": "str", - "hierarchyIdentifier": "str", - "hierarchyIdentifierTrialEndDate": "2020-02-20 00:00:00", "id": "str", "kind": "str", "location": "str", "name": "str", - "offerings": ["cloud_offering"], + "properties": { + "environmentData": "environment_data", + "environmentName": "str", + "hierarchyIdentifier": "str", + "hierarchyIdentifierTrialEndDate": "2020-02-20 00:00:00", + "offerings": ["cloud_offering"], + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -131,3 +114,24 @@ async def test_security_connectors_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_security_connectors_list_by_resource_group(self, resource_group): + response = self.client.security_connectors.list_by_resource_group( + resource_group_name=resource_group.name, + api_version="2024-08-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_security_connectors_list(self, resource_group): + response = self.client.security_connectors.list( + api_version="2024-08-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_contacts_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_contacts_operations.py similarity index 71% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_contacts_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_contacts_operations.py index 857fe9b39dee..0c8ad480e3b6 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_contacts_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_contacts_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,19 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecurityContactsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecurityContactsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_security_contacts_list(self, resource_group): - response = self.client.security_contacts.list( - api_version="2023-12-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -45,13 +35,23 @@ def test_security_contacts_create(self, resource_group): response = self.client.security_contacts.create( security_contact_name="str", security_contact={ - "emails": "str", "id": "str", - "isEnabled": bool, "name": "str", - "notificationsByRole": {"roles": ["str"], "state": "str"}, - "notificationsSources": ["notifications_source"], - "phone": "str", + "properties": { + "emails": "str", + "isEnabled": bool, + "notificationsByRole": {"roles": ["str"], "state": "str"}, + "notificationsSources": ["notifications_source"], + "phone": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2023-12-01-preview", @@ -70,3 +70,13 @@ def test_security_contacts_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_security_contacts_list(self, resource_group): + response = self.client.security_contacts.list( + api_version="2023-12-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_contacts_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_contacts_operations_async.py similarity index 71% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_contacts_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_contacts_operations_async.py index af31c1c3e55b..9e4dd44831ac 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_contacts_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_contacts_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,19 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecurityContactsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecurityContactsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_security_contacts_list(self, resource_group): - response = self.client.security_contacts.list( - api_version="2023-12-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -46,13 +36,23 @@ async def test_security_contacts_create(self, resource_group): response = await self.client.security_contacts.create( security_contact_name="str", security_contact={ - "emails": "str", "id": "str", - "isEnabled": bool, "name": "str", - "notificationsByRole": {"roles": ["str"], "state": "str"}, - "notificationsSources": ["notifications_source"], - "phone": "str", + "properties": { + "emails": "str", + "isEnabled": bool, + "notificationsByRole": {"roles": ["str"], "state": "str"}, + "notificationsSources": ["notifications_source"], + "phone": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, "type": "str", }, api_version="2023-12-01-preview", @@ -71,3 +71,13 @@ async def test_security_contacts_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_security_contacts_list(self, resource_group): + response = self.client.security_contacts.list( + api_version="2023-12-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_operators_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_operators_operations.py similarity index 88% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_operators_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_operators_operations.py index 69af51db7b0c..daa29a0be6d5 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_operators_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_operators_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,15 +14,16 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecurityOperatorsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecurityOperatorsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_security_operators_list(self, resource_group): - response = self.client.security_operators.list( + def test_security_operators_get(self, resource_group): + response = self.client.security_operators.get( pricing_name="str", + security_operator_name="str", api_version="2023-01-01-preview", ) @@ -31,8 +32,8 @@ def test_security_operators_list(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_security_operators_get(self, resource_group): - response = self.client.security_operators.get( + def test_security_operators_create_or_update(self, resource_group): + response = self.client.security_operators.create_or_update( pricing_name="str", security_operator_name="str", api_version="2023-01-01-preview", @@ -43,8 +44,8 @@ def test_security_operators_get(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_security_operators_create_or_update(self, resource_group): - response = self.client.security_operators.create_or_update( + def test_security_operators_delete(self, resource_group): + response = self.client.security_operators.delete( pricing_name="str", security_operator_name="str", api_version="2023-01-01-preview", @@ -55,12 +56,11 @@ def test_security_operators_create_or_update(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_security_operators_delete(self, resource_group): - response = self.client.security_operators.delete( + def test_security_operators_list(self, resource_group): + response = self.client.security_operators.list( pricing_name="str", - security_operator_name="str", api_version="2023-01-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_operators_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_operators_operations_async.py similarity index 85% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_operators_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_operators_operations_async.py index 090619021bce..652c348f13a7 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_operators_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_operators_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,15 +15,16 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecurityOperatorsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecurityOperatorsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_security_operators_list(self, resource_group): - response = await self.client.security_operators.list( + async def test_security_operators_get(self, resource_group): + response = await self.client.security_operators.get( pricing_name="str", + security_operator_name="str", api_version="2023-01-01-preview", ) @@ -32,8 +33,8 @@ async def test_security_operators_list(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_security_operators_get(self, resource_group): - response = await self.client.security_operators.get( + async def test_security_operators_create_or_update(self, resource_group): + response = await self.client.security_operators.create_or_update( pricing_name="str", security_operator_name="str", api_version="2023-01-01-preview", @@ -44,8 +45,8 @@ async def test_security_operators_get(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_security_operators_create_or_update(self, resource_group): - response = await self.client.security_operators.create_or_update( + async def test_security_operators_delete(self, resource_group): + response = await self.client.security_operators.delete( pricing_name="str", security_operator_name="str", api_version="2023-01-01-preview", @@ -56,12 +57,11 @@ async def test_security_operators_create_or_update(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_security_operators_delete(self, resource_group): - response = await self.client.security_operators.delete( + async def test_security_operators_list(self, resource_group): + response = self.client.security_operators.list( pricing_name="str", - security_operator_name="str", api_version="2023-01-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_solutions_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_solutions_operations.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_solutions_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_solutions_operations.py index 852551874f7f..7f14b487de96 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_solutions_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_solutions_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,29 +14,29 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecuritySolutionsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecuritySolutionsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_security_solutions_list(self, resource_group): - response = self.client.security_solutions.list( + def test_security_solutions_get(self, resource_group): + response = self.client.security_solutions.get( + resource_group_name=resource_group.name, + asc_location="str", + security_solution_name="str", api_version="2020-01-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_security_solutions_get(self, resource_group): - response = self.client.security_solutions.get( - resource_group_name=resource_group.name, - asc_location="str", - security_solution_name="str", + def test_security_solutions_list(self, resource_group): + response = self.client.security_solutions.list( api_version="2020-01-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_solutions_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_solutions_operations_async.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_solutions_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_solutions_operations_async.py index 3c754d742275..4be817ac6ce3 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_solutions_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_solutions_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,29 +15,29 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecuritySolutionsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecuritySolutionsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_security_solutions_list(self, resource_group): - response = self.client.security_solutions.list( + async def test_security_solutions_get(self, resource_group): + response = await self.client.security_solutions.get( + resource_group_name=resource_group.name, + asc_location="str", + security_solution_name="str", api_version="2020-01-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_security_solutions_get(self, resource_group): - response = await self.client.security_solutions.get( - resource_group_name=resource_group.name, - asc_location="str", - security_solution_name="str", + async def test_security_solutions_list(self, resource_group): + response = self.client.security_solutions.list( api_version="2020-01-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_solutions_reference_data_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_solutions_reference_data_operations.py similarity index 83% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_solutions_reference_data_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_solutions_reference_data_operations.py index e1a52cd94290..c9d17eb8bbe4 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_solutions_reference_data_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_solutions_reference_data_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecuritySolutionsReferenceDataOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecuritySolutionsReferenceDataOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_solutions_reference_data_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_solutions_reference_data_operations_async.py similarity index 83% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_solutions_reference_data_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_solutions_reference_data_operations_async.py index bcba02da6fc7..1dec4286c58c 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_solutions_reference_data_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_solutions_reference_data_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecuritySolutionsReferenceDataOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecuritySolutionsReferenceDataOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_standards_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_standards_operations.py similarity index 67% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_standards_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_standards_operations.py index 91fd9fc0856f..6c07d1848131 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_standards_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_standards_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,20 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecurityStandardsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecurityStandardsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_security_standards_list(self, resource_group): - response = self.client.security_standards.list( - scope="str", - api_version="2024-08-01", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -48,20 +37,30 @@ def test_security_standards_create_or_update(self, resource_group): scope="str", standard_id="str", standard={ - "assessments": [{"assessmentKey": "str"}], - "cloudProviders": ["str"], - "description": "str", - "displayName": "str", "id": "str", - "metadata": { + "name": "str", + "properties": { + "assessments": [{"assessmentKey": "str"}], + "cloudProviders": ["str"], + "description": "str", + "displayName": "str", + "metadata": { + "createdBy": "str", + "createdOn": "2020-02-20 00:00:00", + "lastUpdatedBy": "str", + "lastUpdatedOn": "2020-02-20 00:00:00", + }, + "policySetDefinitionId": "str", + "standardType": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", "createdBy": "str", - "createdOn": "2020-02-20 00:00:00", - "lastUpdatedBy": "str", - "lastUpdatedOn": "2020-02-20 00:00:00", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", }, - "name": "str", - "policySetDefinitionId": "str", - "standardType": "str", "type": "str", }, api_version="2024-08-01", @@ -81,3 +80,14 @@ def test_security_standards_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_security_standards_list(self, resource_group): + response = self.client.security_standards.list( + scope="str", + api_version="2024-08-01", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_standards_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_standards_operations_async.py similarity index 67% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_standards_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_standards_operations_async.py index 01c9e013a28a..c7fa2c11ca9c 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_security_standards_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_security_standards_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,20 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSecurityStandardsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSecurityStandardsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_security_standards_list(self, resource_group): - response = self.client.security_standards.list( - scope="str", - api_version="2024-08-01", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -49,20 +38,30 @@ async def test_security_standards_create_or_update(self, resource_group): scope="str", standard_id="str", standard={ - "assessments": [{"assessmentKey": "str"}], - "cloudProviders": ["str"], - "description": "str", - "displayName": "str", "id": "str", - "metadata": { + "name": "str", + "properties": { + "assessments": [{"assessmentKey": "str"}], + "cloudProviders": ["str"], + "description": "str", + "displayName": "str", + "metadata": { + "createdBy": "str", + "createdOn": "2020-02-20 00:00:00", + "lastUpdatedBy": "str", + "lastUpdatedOn": "2020-02-20 00:00:00", + }, + "policySetDefinitionId": "str", + "standardType": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", "createdBy": "str", - "createdOn": "2020-02-20 00:00:00", - "lastUpdatedBy": "str", - "lastUpdatedOn": "2020-02-20 00:00:00", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", }, - "name": "str", - "policySetDefinitionId": "str", - "standardType": "str", "type": "str", }, api_version="2024-08-01", @@ -82,3 +81,14 @@ async def test_security_standards_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_security_standards_list(self, resource_group): + response = self.client.security_standards.list( + scope="str", + api_version="2024-08-01", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sensitivity_settings_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sensitivity_settings_operations.py similarity index 85% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_sensitivity_settings_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_sensitivity_settings_operations.py index 6b735a5bb115..34db2dd5635c 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sensitivity_settings_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sensitivity_settings_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,19 +14,14 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSensitivitySettingsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSensitivitySettingsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_sensitivity_settings_create_or_update(self, resource_group): - response = self.client.sensitivity_settings.create_or_update( - sensitivity_settings={ - "sensitiveInfoTypesIds": ["str"], - "sensitivityThresholdLabelId": "str", - "sensitivityThresholdLabelOrder": 0.0, - }, + def test_sensitivity_settings_get(self, resource_group): + response = self.client.sensitivity_settings.get( api_version="2023-02-15-preview", ) @@ -35,8 +30,13 @@ def test_sensitivity_settings_create_or_update(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_sensitivity_settings_get(self, resource_group): - response = self.client.sensitivity_settings.get( + def test_sensitivity_settings_create_or_update(self, resource_group): + response = self.client.sensitivity_settings.create_or_update( + sensitivity_settings={ + "sensitiveInfoTypesIds": ["str"], + "sensitivityThresholdLabelId": "str", + "sensitivityThresholdLabelOrder": 0.0, + }, api_version="2023-02-15-preview", ) @@ -49,6 +49,6 @@ def test_sensitivity_settings_list(self, resource_group): response = self.client.sensitivity_settings.list( api_version="2023-02-15-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sensitivity_settings_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sensitivity_settings_operations_async.py similarity index 82% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_sensitivity_settings_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_sensitivity_settings_operations_async.py index 7b6b995373b2..dd55baab4fc9 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sensitivity_settings_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sensitivity_settings_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,19 +15,14 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSensitivitySettingsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSensitivitySettingsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_sensitivity_settings_create_or_update(self, resource_group): - response = await self.client.sensitivity_settings.create_or_update( - sensitivity_settings={ - "sensitiveInfoTypesIds": ["str"], - "sensitivityThresholdLabelId": "str", - "sensitivityThresholdLabelOrder": 0.0, - }, + async def test_sensitivity_settings_get(self, resource_group): + response = await self.client.sensitivity_settings.get( api_version="2023-02-15-preview", ) @@ -36,8 +31,13 @@ async def test_sensitivity_settings_create_or_update(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_sensitivity_settings_get(self, resource_group): - response = await self.client.sensitivity_settings.get( + async def test_sensitivity_settings_create_or_update(self, resource_group): + response = await self.client.sensitivity_settings.create_or_update( + sensitivity_settings={ + "sensitiveInfoTypesIds": ["str"], + "sensitivityThresholdLabelId": "str", + "sensitivityThresholdLabelOrder": 0.0, + }, api_version="2023-02-15-preview", ) @@ -47,9 +47,9 @@ async def test_sensitivity_settings_get(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async async def test_sensitivity_settings_list(self, resource_group): - response = await self.client.sensitivity_settings.list( + response = self.client.sensitivity_settings.list( api_version="2023-02-15-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_server_vulnerability_assessment_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_server_vulnerability_assessment_operations.py similarity index 90% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_server_vulnerability_assessment_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_server_vulnerability_assessment_operations.py index 75940af44468..f1de41aa4c6b 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_server_vulnerability_assessment_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_server_vulnerability_assessment_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,19 +14,20 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterServerVulnerabilityAssessmentOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementServerVulnerabilityAssessmentOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_server_vulnerability_assessment_list_by_extended_resource(self, resource_group): - response = self.client.server_vulnerability_assessment.list_by_extended_resource( + def test_server_vulnerability_assessment_get(self, resource_group): + response = self.client.server_vulnerability_assessment.get( resource_group_name=resource_group.name, resource_namespace="str", resource_type="str", resource_name="str", api_version="2020-01-01", + server_vulnerability_assessment="default", ) # please add some check logic here by yourself @@ -34,14 +35,14 @@ def test_server_vulnerability_assessment_list_by_extended_resource(self, resourc @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_server_vulnerability_assessment_get(self, resource_group): - response = self.client.server_vulnerability_assessment.get( + def test_server_vulnerability_assessment_create_or_update(self, resource_group): + response = self.client.server_vulnerability_assessment.create_or_update( resource_group_name=resource_group.name, resource_namespace="str", resource_type="str", resource_name="str", - server_vulnerability_assessment="default", api_version="2020-01-01", + server_vulnerability_assessment="default", ) # please add some check logic here by yourself @@ -49,30 +50,29 @@ def test_server_vulnerability_assessment_get(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_server_vulnerability_assessment_create_or_update(self, resource_group): - response = self.client.server_vulnerability_assessment.create_or_update( + def test_server_vulnerability_assessment_begin_delete(self, resource_group): + response = self.client.server_vulnerability_assessment.begin_delete( resource_group_name=resource_group.name, resource_namespace="str", resource_type="str", resource_name="str", - server_vulnerability_assessment="default", api_version="2020-01-01", - ) + server_vulnerability_assessment="default", + ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_server_vulnerability_assessment_begin_delete(self, resource_group): - response = self.client.server_vulnerability_assessment.begin_delete( + def test_server_vulnerability_assessment_list_by_extended_resource(self, resource_group): + response = self.client.server_vulnerability_assessment.list_by_extended_resource( resource_group_name=resource_group.name, resource_namespace="str", resource_type="str", resource_name="str", - server_vulnerability_assessment="default", api_version="2020-01-01", - ).result() # call '.result()' to poll until service return final result - + ) + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_server_vulnerability_assessment_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_server_vulnerability_assessment_operations_async.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_server_vulnerability_assessment_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_server_vulnerability_assessment_operations_async.py index ced4da5957ff..e13668e61e03 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_server_vulnerability_assessment_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_server_vulnerability_assessment_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,23 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterServerVulnerabilityAssessmentOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementServerVulnerabilityAssessmentOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_server_vulnerability_assessment_list_by_extended_resource(self, resource_group): - response = await self.client.server_vulnerability_assessment.list_by_extended_resource( - resource_group_name=resource_group.name, - resource_namespace="str", - resource_type="str", - resource_name="str", - api_version="2020-01-01", - ) - - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -41,8 +27,8 @@ async def test_server_vulnerability_assessment_get(self, resource_group): resource_namespace="str", resource_type="str", resource_name="str", - server_vulnerability_assessment="default", api_version="2020-01-01", + server_vulnerability_assessment="default", ) # please add some check logic here by yourself @@ -56,8 +42,8 @@ async def test_server_vulnerability_assessment_create_or_update(self, resource_g resource_namespace="str", resource_type="str", resource_name="str", - server_vulnerability_assessment="default", api_version="2020-01-01", + server_vulnerability_assessment="default", ) # please add some check logic here by yourself @@ -72,10 +58,24 @@ async def test_server_vulnerability_assessment_begin_delete(self, resource_group resource_namespace="str", resource_type="str", resource_name="str", - server_vulnerability_assessment="default", api_version="2020-01-01", + server_vulnerability_assessment="default", ) ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_server_vulnerability_assessment_list_by_extended_resource(self, resource_group): + response = self.client.server_vulnerability_assessment.list_by_extended_resource( + resource_group_name=resource_group.name, + resource_namespace="str", + resource_type="str", + resource_name="str", + api_version="2020-01-01", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_server_vulnerability_assessments_settings_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_server_vulnerability_assessments_settings_operations.py similarity index 89% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_server_vulnerability_assessments_settings_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_server_vulnerability_assessments_settings_operations.py index 851e1417d3d9..e2a381b24271 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_server_vulnerability_assessments_settings_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_server_vulnerability_assessments_settings_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,19 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterServerVulnerabilityAssessmentsSettingsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementServerVulnerabilityAssessmentsSettingsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_server_vulnerability_assessments_settings_list_by_subscription(self, resource_group): - response = self.client.server_vulnerability_assessments_settings.list_by_subscription( - api_version="2023-05-01", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -48,7 +38,7 @@ def test_server_vulnerability_assessments_settings_create_or_update(self, resour "kind": "AzureServersSetting", "id": "str", "name": "str", - "selectedProvider": "str", + "properties": {"selectedProvider": "str"}, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -75,3 +65,13 @@ def test_server_vulnerability_assessments_settings_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_server_vulnerability_assessments_settings_list_by_subscription(self, resource_group): + response = self.client.server_vulnerability_assessments_settings.list_by_subscription( + api_version="2023-05-01", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_server_vulnerability_assessments_settings_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_server_vulnerability_assessments_settings_operations_async.py similarity index 88% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_server_vulnerability_assessments_settings_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_server_vulnerability_assessments_settings_operations_async.py index 29a491f8a403..9b8b88da1590 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_server_vulnerability_assessments_settings_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_server_vulnerability_assessments_settings_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,19 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterServerVulnerabilityAssessmentsSettingsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementServerVulnerabilityAssessmentsSettingsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_server_vulnerability_assessments_settings_list_by_subscription(self, resource_group): - response = self.client.server_vulnerability_assessments_settings.list_by_subscription( - api_version="2023-05-01", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -49,7 +39,7 @@ async def test_server_vulnerability_assessments_settings_create_or_update(self, "kind": "AzureServersSetting", "id": "str", "name": "str", - "selectedProvider": "str", + "properties": {"selectedProvider": "str"}, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -76,3 +66,13 @@ async def test_server_vulnerability_assessments_settings_delete(self, resource_g # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_server_vulnerability_assessments_settings_list_by_subscription(self, resource_group): + response = self.client.server_vulnerability_assessments_settings.list_by_subscription( + api_version="2023-05-01", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_settings_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_settings_operations.py similarity index 67% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_settings_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_settings_operations.py index 2770f977f023..a20c470a2566 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_settings_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_settings_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,25 +14,41 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSettingsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSettingsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_settings_list(self, resource_group): - response = self.client.settings.list( + def test_settings_get(self, resource_group): + response = self.client.settings.get( + setting_name="str", api_version="2022-05-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_settings_get(self, resource_group): - response = self.client.settings.get( + def test_settings_update(self, resource_group): + response = self.client.settings.update( setting_name="str", + setting={ + "kind": "AlertSyncSettings", + "id": "str", + "name": "str", + "properties": {"enabled": bool}, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2022-05-01", ) @@ -41,12 +57,10 @@ def test_settings_get(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_settings_update(self, resource_group): - response = self.client.settings.update( - setting_name="str", - setting={"kind": "AlertSyncSettings", "enabled": bool, "id": "str", "name": "str", "type": "str"}, + def test_settings_list(self, resource_group): + response = self.client.settings.list( api_version="2022-05-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_settings_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_settings_operations_async.py similarity index 67% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_settings_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_settings_operations_async.py index 72f7eba5d140..aee5d750ed69 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_settings_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_settings_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,25 +15,41 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSettingsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSettingsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_settings_list(self, resource_group): - response = self.client.settings.list( + async def test_settings_get(self, resource_group): + response = await self.client.settings.get( + setting_name="str", api_version="2022-05-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_settings_get(self, resource_group): - response = await self.client.settings.get( + async def test_settings_update(self, resource_group): + response = await self.client.settings.update( setting_name="str", + setting={ + "kind": "AlertSyncSettings", + "id": "str", + "name": "str", + "properties": {"enabled": bool}, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2022-05-01", ) @@ -42,12 +58,10 @@ async def test_settings_get(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_settings_update(self, resource_group): - response = await self.client.settings.update( - setting_name="str", - setting={"kind": "AlertSyncSettings", "enabled": bool, "id": "str", "name": "str", "type": "str"}, + async def test_settings_list(self, resource_group): + response = self.client.settings.list( api_version="2022-05-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_baseline_rules_operations.py similarity index 90% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_baseline_rules_operations.py index 68f078c69410..759684e692bf 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_baseline_rules_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,14 +14,14 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSqlVulnerabilityAssessmentBaselineRulesOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSqlVulnerabilityAssessmentBaselineRulesOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_sql_vulnerability_assessment_baseline_rules_create_or_update(self, resource_group): - response = self.client.sql_vulnerability_assessment_baseline_rules.create_or_update( + def test_sql_vulnerability_assessment_baseline_rules_get(self, resource_group): + response = self.client.sql_vulnerability_assessment_baseline_rules.get( resource_id="str", rule_id="str", api_version="2026-04-01-preview", @@ -32,8 +32,8 @@ def test_sql_vulnerability_assessment_baseline_rules_create_or_update(self, reso @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_sql_vulnerability_assessment_baseline_rules_get(self, resource_group): - response = self.client.sql_vulnerability_assessment_baseline_rules.get( + def test_sql_vulnerability_assessment_baseline_rules_create_or_update(self, resource_group): + response = self.client.sql_vulnerability_assessment_baseline_rules.create_or_update( resource_id="str", rule_id="str", api_version="2026-04-01-preview", diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_baseline_rules_operations_async.py similarity index 90% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_baseline_rules_operations_async.py index ccdaa6a31603..f9bca1e25698 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_baseline_rules_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_baseline_rules_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,14 +15,14 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSqlVulnerabilityAssessmentBaselineRulesOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSqlVulnerabilityAssessmentBaselineRulesOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_sql_vulnerability_assessment_baseline_rules_create_or_update(self, resource_group): - response = await self.client.sql_vulnerability_assessment_baseline_rules.create_or_update( + async def test_sql_vulnerability_assessment_baseline_rules_get(self, resource_group): + response = await self.client.sql_vulnerability_assessment_baseline_rules.get( resource_id="str", rule_id="str", api_version="2026-04-01-preview", @@ -33,8 +33,8 @@ async def test_sql_vulnerability_assessment_baseline_rules_create_or_update(self @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_sql_vulnerability_assessment_baseline_rules_get(self, resource_group): - response = await self.client.sql_vulnerability_assessment_baseline_rules.get( + async def test_sql_vulnerability_assessment_baseline_rules_create_or_update(self, resource_group): + response = await self.client.sql_vulnerability_assessment_baseline_rules.create_or_update( resource_id="str", rule_id="str", api_version="2026-04-01-preview", diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_scan_results_operations.py similarity index 81% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_scan_results_operations.py index 6134c3af8e17..95b2cac1b302 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_scan_results_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSqlVulnerabilityAssessmentScanResultsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSqlVulnerabilityAssessmentScanResultsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -25,6 +25,7 @@ def test_sql_vulnerability_assessment_scan_results_get(self, resource_group): scan_id="str", scan_result_id="str", resource_id="str", + database_name="str", api_version="2026-04-01-preview", ) @@ -37,6 +38,7 @@ def test_sql_vulnerability_assessment_scan_results_list(self, resource_group): response = self.client.sql_vulnerability_assessment_scan_results.list( scan_id="str", resource_id="str", + database_name="str", api_version="2026-04-01-preview", ) result = [r for r in response] diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_scan_results_operations_async.py similarity index 81% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_scan_results_operations_async.py index 6ffd1d4f8e87..2c79e3d371eb 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scan_results_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_scan_results_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSqlVulnerabilityAssessmentScanResultsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSqlVulnerabilityAssessmentScanResultsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -26,6 +26,7 @@ async def test_sql_vulnerability_assessment_scan_results_get(self, resource_grou scan_id="str", scan_result_id="str", resource_id="str", + database_name="str", api_version="2026-04-01-preview", ) @@ -38,6 +39,7 @@ async def test_sql_vulnerability_assessment_scan_results_list(self, resource_gro response = self.client.sql_vulnerability_assessment_scan_results.list( scan_id="str", resource_id="str", + database_name="str", api_version="2026-04-01-preview", ) result = [r async for r in response] diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_scans_operations.py similarity index 88% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_scans_operations.py index edabe2e064ab..89073ac46f3d 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_scans_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,52 +14,53 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSqlVulnerabilityAssessmentScansOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSqlVulnerabilityAssessmentScansOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_sql_vulnerability_assessment_scans_get(self, resource_group): - response = self.client.sql_vulnerability_assessment_scans.get( - scan_id="str", + def test_sql_vulnerability_assessment_scans_begin_initiate_scan(self, resource_group): + response = self.client.sql_vulnerability_assessment_scans.begin_initiate_scan( resource_id="str", api_version="2026-04-01-preview", - ) + ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_sql_vulnerability_assessment_scans_list(self, resource_group): - response = self.client.sql_vulnerability_assessment_scans.list( + def test_sql_vulnerability_assessment_scans_get_scan_operation_result(self, resource_group): + response = self.client.sql_vulnerability_assessment_scans.get_scan_operation_result( resource_id="str", + operation_id="str", api_version="2026-04-01-preview", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_sql_vulnerability_assessment_scans_begin_initiate_scan(self, resource_group): - response = self.client.sql_vulnerability_assessment_scans.begin_initiate_scan( + def test_sql_vulnerability_assessment_scans_get(self, resource_group): + response = self.client.sql_vulnerability_assessment_scans.get( + scan_id="str", resource_id="str", + database_name="str", api_version="2026-04-01-preview", - ).result() # call '.result()' to poll until service return final result + ) # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_sql_vulnerability_assessment_scans_get_scan_operation_result(self, resource_group): - response = self.client.sql_vulnerability_assessment_scans.get_scan_operation_result( + def test_sql_vulnerability_assessment_scans_list(self, resource_group): + response = self.client.sql_vulnerability_assessment_scans.list( resource_id="str", - operation_id="str", api_version="2026-04-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_scans_operations_async.py similarity index 88% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_scans_operations_async.py index 82da57b6e533..bb8a164a7fd6 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_scans_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_scans_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,54 +15,55 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSqlVulnerabilityAssessmentScansOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSqlVulnerabilityAssessmentScansOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_sql_vulnerability_assessment_scans_get(self, resource_group): - response = await self.client.sql_vulnerability_assessment_scans.get( - scan_id="str", - resource_id="str", - api_version="2026-04-01-preview", - ) + async def test_sql_vulnerability_assessment_scans_begin_initiate_scan(self, resource_group): + response = await ( + await self.client.sql_vulnerability_assessment_scans.begin_initiate_scan( + resource_id="str", + api_version="2026-04-01-preview", + ) + ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_sql_vulnerability_assessment_scans_list(self, resource_group): - response = self.client.sql_vulnerability_assessment_scans.list( + async def test_sql_vulnerability_assessment_scans_get_scan_operation_result(self, resource_group): + response = await self.client.sql_vulnerability_assessment_scans.get_scan_operation_result( resource_id="str", + operation_id="str", api_version="2026-04-01-preview", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_sql_vulnerability_assessment_scans_begin_initiate_scan(self, resource_group): - response = await ( - await self.client.sql_vulnerability_assessment_scans.begin_initiate_scan( - resource_id="str", - api_version="2026-04-01-preview", - ) - ).result() # call '.result()' to poll until service return final result + async def test_sql_vulnerability_assessment_scans_get(self, resource_group): + response = await self.client.sql_vulnerability_assessment_scans.get( + scan_id="str", + resource_id="str", + database_name="str", + api_version="2026-04-01-preview", + ) # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_sql_vulnerability_assessment_scans_get_scan_operation_result(self, resource_group): - response = await self.client.sql_vulnerability_assessment_scans.get_scan_operation_result( + async def test_sql_vulnerability_assessment_scans_list(self, resource_group): + response = self.client.sql_vulnerability_assessment_scans.list( resource_id="str", - operation_id="str", api_version="2026-04-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_settings_operations.py similarity index 86% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_settings_operations.py index 34cafb1f73bb..268917fbe853 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_settings_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSqlVulnerabilityAssessmentSettingsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSqlVulnerabilityAssessmentSettingsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_settings_operations_async.py similarity index 86% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_settings_operations_async.py index 5b49bf8f65cd..02e84d66760b 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sql_vulnerability_assessment_settings_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sql_vulnerability_assessment_settings_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSqlVulnerabilityAssessmentSettingsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSqlVulnerabilityAssessmentSettingsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standard_assignments_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_standard_assignments_operations.py similarity index 61% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_standard_assignments_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_standard_assignments_operations.py index 297844806d81..c8d5a37cfb1c 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standard_assignments_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_standard_assignments_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,9 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterStandardAssignmentsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementStandardAssignmentsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -37,27 +37,37 @@ def test_standard_assignments_create(self, resource_group): resource_id="str", standard_assignment_name="str", standard_assignment={ - "assignedStandard": {"id": "str"}, - "attestationData": { - "assignedAssessment": {"assessmentKey": "str"}, - "complianceDate": "2020-02-20 00:00:00", - "complianceState": "str", - "evidence": [{"description": "str", "sourceUrl": "str"}], - }, - "description": "str", - "displayName": "str", - "effect": "str", - "excludedScopes": ["str"], - "exemptionData": {"assignedAssessment": {"assessmentKey": "str"}, "exemptionCategory": "str"}, - "expiresOn": "2020-02-20 00:00:00", "id": "str", - "metadata": { + "name": "str", + "properties": { + "assignedStandard": {"id": "str"}, + "attestationData": { + "assignedAssessment": {"assessmentKey": "str"}, + "complianceDate": "2020-02-20 00:00:00", + "complianceState": "str", + "evidence": [{"description": "str", "sourceUrl": "str"}], + }, + "description": "str", + "displayName": "str", + "effect": "str", + "excludedScopes": ["str"], + "exemptionData": {"assignedAssessment": {"assessmentKey": "str"}, "exemptionCategory": "str"}, + "expiresOn": "2020-02-20 00:00:00", + "metadata": { + "createdBy": "str", + "createdOn": "2020-02-20 00:00:00", + "lastUpdatedBy": "str", + "lastUpdatedOn": "2020-02-20 00:00:00", + }, + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", "createdBy": "str", - "createdOn": "2020-02-20 00:00:00", - "lastUpdatedBy": "str", - "lastUpdatedOn": "2020-02-20 00:00:00", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", }, - "name": "str", "type": "str", }, api_version="2024-08-01", diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standard_assignments_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_standard_assignments_operations_async.py similarity index 61% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_standard_assignments_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_standard_assignments_operations_async.py index 43d8c823421b..b7b98f56277b 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standard_assignments_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_standard_assignments_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,9 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterStandardAssignmentsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementStandardAssignmentsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -38,27 +38,37 @@ async def test_standard_assignments_create(self, resource_group): resource_id="str", standard_assignment_name="str", standard_assignment={ - "assignedStandard": {"id": "str"}, - "attestationData": { - "assignedAssessment": {"assessmentKey": "str"}, - "complianceDate": "2020-02-20 00:00:00", - "complianceState": "str", - "evidence": [{"description": "str", "sourceUrl": "str"}], - }, - "description": "str", - "displayName": "str", - "effect": "str", - "excludedScopes": ["str"], - "exemptionData": {"assignedAssessment": {"assessmentKey": "str"}, "exemptionCategory": "str"}, - "expiresOn": "2020-02-20 00:00:00", "id": "str", - "metadata": { + "name": "str", + "properties": { + "assignedStandard": {"id": "str"}, + "attestationData": { + "assignedAssessment": {"assessmentKey": "str"}, + "complianceDate": "2020-02-20 00:00:00", + "complianceState": "str", + "evidence": [{"description": "str", "sourceUrl": "str"}], + }, + "description": "str", + "displayName": "str", + "effect": "str", + "excludedScopes": ["str"], + "exemptionData": {"assignedAssessment": {"assessmentKey": "str"}, "exemptionCategory": "str"}, + "expiresOn": "2020-02-20 00:00:00", + "metadata": { + "createdBy": "str", + "createdOn": "2020-02-20 00:00:00", + "lastUpdatedBy": "str", + "lastUpdatedOn": "2020-02-20 00:00:00", + }, + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", "createdBy": "str", - "createdOn": "2020-02-20 00:00:00", - "lastUpdatedBy": "str", - "lastUpdatedOn": "2020-02-20 00:00:00", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", }, - "name": "str", "type": "str", }, api_version="2024-08-01", diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_standards_operations.py similarity index 85% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_standards_operations.py index 4c17cfae2091..ff7470dd1041 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_standards_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,30 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterStandardsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementStandardsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_standards_list_by_subscription(self, resource_group): - response = self.client.standards.list_by_subscription( - api_version="2021-08-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_standards_list(self, resource_group): - response = self.client.standards.list( - resource_group_name=resource_group.name, - api_version="2021-08-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -58,17 +37,19 @@ def test_standards_create_or_update(self, resource_group): resource_group_name=resource_group.name, standard_id="str", standard={ - "category": "str", - "components": [{"key": "str"}], - "description": "str", - "displayName": "str", "etag": "str", "id": "str", "kind": "str", "location": "str", "name": "str", - "standardType": "str", - "supportedClouds": ["str"], + "properties": { + "category": "str", + "components": [{"key": "str"}], + "description": "str", + "displayName": "str", + "standardType": "str", + "supportedClouds": ["str"], + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -97,3 +78,24 @@ def test_standards_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_standards_list(self, resource_group): + response = self.client.standards.list( + resource_group_name=resource_group.name, + api_version="2021-08-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_standards_list_by_subscription(self, resource_group): + response = self.client.standards.list_by_subscription( + api_version="2021-08-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_standards_operations_async.py similarity index 84% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_standards_operations_async.py index 6586fcea63a9..38001568cbeb 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_standards_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_standards_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,30 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterStandardsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementStandardsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_standards_list_by_subscription(self, resource_group): - response = self.client.standards.list_by_subscription( - api_version="2021-08-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_standards_list(self, resource_group): - response = self.client.standards.list( - resource_group_name=resource_group.name, - api_version="2021-08-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -59,17 +38,19 @@ async def test_standards_create_or_update(self, resource_group): resource_group_name=resource_group.name, standard_id="str", standard={ - "category": "str", - "components": [{"key": "str"}], - "description": "str", - "displayName": "str", "etag": "str", "id": "str", "kind": "str", "location": "str", "name": "str", - "standardType": "str", - "supportedClouds": ["str"], + "properties": { + "category": "str", + "components": [{"key": "str"}], + "description": "str", + "displayName": "str", + "standardType": "str", + "supportedClouds": ["str"], + }, "systemData": { "createdAt": "2020-02-20 00:00:00", "createdBy": "str", @@ -98,3 +79,24 @@ async def test_standards_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_standards_list(self, resource_group): + response = self.client.standards.list( + resource_group_name=resource_group.name, + api_version="2021-08-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_standards_list_by_subscription(self, resource_group): + response = self.client.standards.list_by_subscription( + api_version="2021-08-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sub_assessments_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sub_assessments_operations.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_sub_assessments_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_sub_assessments_operations.py index a5160a1ed140..caec1591ce01 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sub_assessments_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sub_assessments_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,18 +14,20 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSubAssessmentsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementSubAssessmentsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_sub_assessments_list_all(self, resource_group): - response = self.client.sub_assessments.list_all( + def test_sub_assessments_get(self, resource_group): + response = self.client.sub_assessments.get( scope="str", + assessment_name="str", + sub_assessment_name="str", api_version="2019-01-01-preview", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @@ -43,13 +45,11 @@ def test_sub_assessments_list(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_sub_assessments_get(self, resource_group): - response = self.client.sub_assessments.get( + def test_sub_assessments_list_all(self, resource_group): + response = self.client.sub_assessments.list_all( scope="str", - assessment_name="str", - sub_assessment_name="str", api_version="2019-01-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sub_assessments_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sub_assessments_operations_async.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_sub_assessments_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_sub_assessments_operations_async.py index 9bb3675cf524..f62555153aa5 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_sub_assessments_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_sub_assessments_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,18 +15,20 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterSubAssessmentsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementSubAssessmentsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_sub_assessments_list_all(self, resource_group): - response = self.client.sub_assessments.list_all( + async def test_sub_assessments_get(self, resource_group): + response = await self.client.sub_assessments.get( scope="str", + assessment_name="str", + sub_assessment_name="str", api_version="2019-01-01-preview", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @@ -44,13 +46,11 @@ async def test_sub_assessments_list(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_sub_assessments_get(self, resource_group): - response = await self.client.sub_assessments.get( + async def test_sub_assessments_list_all(self, resource_group): + response = self.client.sub_assessments.list_all( scope="str", - assessment_name="str", - sub_assessment_name="str", api_version="2019-01-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_tasks_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_tasks_operations.py similarity index 93% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_tasks_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_tasks_operations.py index 72bb156cf3ea..db40884b2be7 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_tasks_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_tasks_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,24 +14,28 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterTasksOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementTasksOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_tasks_list(self, resource_group): - response = self.client.tasks.list( + def test_tasks_get_resource_group_level_task(self, resource_group): + response = self.client.tasks.get_resource_group_level_task( + resource_group_name=resource_group.name, + asc_location="str", + task_name="str", api_version="2015-06-01-preview", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_tasks_list_by_home_region(self, resource_group): - response = self.client.tasks.list_by_home_region( + def test_tasks_list_by_resource_group(self, resource_group): + response = self.client.tasks.list_by_resource_group( + resource_group_name=resource_group.name, asc_location="str", api_version="2015-06-01-preview", ) @@ -41,10 +45,12 @@ def test_tasks_list_by_home_region(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_tasks_get_subscription_level_task(self, resource_group): - response = self.client.tasks.get_subscription_level_task( + def test_tasks_update_resource_group_level_task_state(self, resource_group): + response = self.client.tasks.update_resource_group_level_task_state( + resource_group_name=resource_group.name, asc_location="str", task_name="str", + task_update_action_type="str", api_version="2015-06-01-preview", ) @@ -53,11 +59,10 @@ def test_tasks_get_subscription_level_task(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_tasks_update_subscription_level_task_state(self, resource_group): - response = self.client.tasks.update_subscription_level_task_state( + def test_tasks_get_subscription_level_task(self, resource_group): + response = self.client.tasks.get_subscription_level_task( asc_location="str", task_name="str", - task_update_action_type="str", api_version="2015-06-01-preview", ) @@ -66,9 +71,8 @@ def test_tasks_update_subscription_level_task_state(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_tasks_list_by_resource_group(self, resource_group): - response = self.client.tasks.list_by_resource_group( - resource_group_name=resource_group.name, + def test_tasks_list_by_home_region(self, resource_group): + response = self.client.tasks.list_by_home_region( asc_location="str", api_version="2015-06-01-preview", ) @@ -78,11 +82,11 @@ def test_tasks_list_by_resource_group(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_tasks_get_resource_group_level_task(self, resource_group): - response = self.client.tasks.get_resource_group_level_task( - resource_group_name=resource_group.name, + def test_tasks_update_subscription_level_task_state(self, resource_group): + response = self.client.tasks.update_subscription_level_task_state( asc_location="str", task_name="str", + task_update_action_type="str", api_version="2015-06-01-preview", ) @@ -91,14 +95,10 @@ def test_tasks_get_resource_group_level_task(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_tasks_update_resource_group_level_task_state(self, resource_group): - response = self.client.tasks.update_resource_group_level_task_state( - resource_group_name=resource_group.name, - asc_location="str", - task_name="str", - task_update_action_type="str", + def test_tasks_list(self, resource_group): + response = self.client.tasks.list( api_version="2015-06-01-preview", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_tasks_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_tasks_operations_async.py similarity index 93% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_tasks_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_tasks_operations_async.py index c0692a193d99..565dc40c0fbe 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_tasks_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_tasks_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,24 +15,28 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterTasksOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementTasksOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_tasks_list(self, resource_group): - response = self.client.tasks.list( + async def test_tasks_get_resource_group_level_task(self, resource_group): + response = await self.client.tasks.get_resource_group_level_task( + resource_group_name=resource_group.name, + asc_location="str", + task_name="str", api_version="2015-06-01-preview", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_tasks_list_by_home_region(self, resource_group): - response = self.client.tasks.list_by_home_region( + async def test_tasks_list_by_resource_group(self, resource_group): + response = self.client.tasks.list_by_resource_group( + resource_group_name=resource_group.name, asc_location="str", api_version="2015-06-01-preview", ) @@ -42,10 +46,12 @@ async def test_tasks_list_by_home_region(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_tasks_get_subscription_level_task(self, resource_group): - response = await self.client.tasks.get_subscription_level_task( + async def test_tasks_update_resource_group_level_task_state(self, resource_group): + response = await self.client.tasks.update_resource_group_level_task_state( + resource_group_name=resource_group.name, asc_location="str", task_name="str", + task_update_action_type="str", api_version="2015-06-01-preview", ) @@ -54,11 +60,10 @@ async def test_tasks_get_subscription_level_task(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_tasks_update_subscription_level_task_state(self, resource_group): - response = await self.client.tasks.update_subscription_level_task_state( + async def test_tasks_get_subscription_level_task(self, resource_group): + response = await self.client.tasks.get_subscription_level_task( asc_location="str", task_name="str", - task_update_action_type="str", api_version="2015-06-01-preview", ) @@ -67,9 +72,8 @@ async def test_tasks_update_subscription_level_task_state(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_tasks_list_by_resource_group(self, resource_group): - response = self.client.tasks.list_by_resource_group( - resource_group_name=resource_group.name, + async def test_tasks_list_by_home_region(self, resource_group): + response = self.client.tasks.list_by_home_region( asc_location="str", api_version="2015-06-01-preview", ) @@ -79,11 +83,11 @@ async def test_tasks_list_by_resource_group(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_tasks_get_resource_group_level_task(self, resource_group): - response = await self.client.tasks.get_resource_group_level_task( - resource_group_name=resource_group.name, + async def test_tasks_update_subscription_level_task_state(self, resource_group): + response = await self.client.tasks.update_subscription_level_task_state( asc_location="str", task_name="str", + task_update_action_type="str", api_version="2015-06-01-preview", ) @@ -92,14 +96,10 @@ async def test_tasks_get_resource_group_level_task(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_tasks_update_resource_group_level_task_state(self, resource_group): - response = await self.client.tasks.update_resource_group_level_task_state( - resource_group_name=resource_group.name, - asc_location="str", - task_name="str", - task_update_action_type="str", + async def test_tasks_list(self, resource_group): + response = self.client.tasks.list( api_version="2015-06-01-preview", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_topology_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_topology_operations.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_topology_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_topology_operations.py index 378e4b0614e3..d5a50e660be5 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_topology_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_topology_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,17 +14,20 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterTopologyOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementTopologyOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_topology_list(self, resource_group): - response = self.client.topology.list( + def test_topology_get(self, resource_group): + response = self.client.topology.get( + resource_group_name=resource_group.name, + asc_location="str", + topology_resource_name="str", api_version="2020-01-01", ) - result = [r for r in response] + # please add some check logic here by yourself # ... @@ -41,13 +44,10 @@ def test_topology_list_by_home_region(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy - def test_topology_get(self, resource_group): - response = self.client.topology.get( - resource_group_name=resource_group.name, - asc_location="str", - topology_resource_name="str", + def test_topology_list(self, resource_group): + response = self.client.topology.list( api_version="2020-01-01", ) - + result = [r for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_topology_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_topology_operations_async.py similarity index 87% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_topology_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_topology_operations_async.py index e29861bbfe27..6dff8e37a193 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_topology_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_topology_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,17 +15,20 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterTopologyOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementTopologyOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_topology_list(self, resource_group): - response = self.client.topology.list( + async def test_topology_get(self, resource_group): + response = await self.client.topology.get( + resource_group_name=resource_group.name, + asc_location="str", + topology_resource_name="str", api_version="2020-01-01", ) - result = [r async for r in response] + # please add some check logic here by yourself # ... @@ -42,13 +45,10 @@ async def test_topology_list_by_home_region(self, resource_group): @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async - async def test_topology_get(self, resource_group): - response = await self.client.topology.get( - resource_group_name=resource_group.name, - asc_location="str", - topology_resource_name="str", + async def test_topology_list(self, resource_group): + response = self.client.topology.list( api_version="2020-01-01", ) - + result = [r async for r in response] # please add some check logic here by yourself # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_workspace_settings_operations.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_workspace_settings_operations.py similarity index 64% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_workspace_settings_operations.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_workspace_settings_operations.py index 606254b9ebb4..b9580f189111 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_workspace_settings_operations.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_workspace_settings_operations.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security import SecurityCenter +from azure.mgmt.security import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy @@ -14,19 +14,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterWorkspaceSettingsOperations(AzureMgmtRecordedTestCase): +class TestSecurityManagementWorkspaceSettingsOperations(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_workspace_settings_list(self, resource_group): - response = self.client.workspace_settings.list( - api_version="2017-08-01-preview", - ) - result = [r for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy @@ -44,7 +34,20 @@ def test_workspace_settings_get(self, resource_group): def test_workspace_settings_create(self, resource_group): response = self.client.workspace_settings.create( workspace_setting_name="str", - workspace_setting={"id": "str", "name": "str", "scope": "str", "type": "str", "workspaceId": "str"}, + workspace_setting={ + "id": "str", + "name": "str", + "properties": {"scope": "str", "workspaceId": "str"}, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2017-08-01-preview", ) @@ -56,7 +59,20 @@ def test_workspace_settings_create(self, resource_group): def test_workspace_settings_update(self, resource_group): response = self.client.workspace_settings.update( workspace_setting_name="str", - workspace_setting={"id": "str", "name": "str", "scope": "str", "type": "str", "workspaceId": "str"}, + workspace_setting={ + "id": "str", + "name": "str", + "properties": {"scope": "str", "workspaceId": "str"}, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2017-08-01-preview", ) @@ -73,3 +89,13 @@ def test_workspace_settings_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_workspace_settings_list(self, resource_group): + response = self.client.workspace_settings.list( + api_version="2017-08-01-preview", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_workspace_settings_operations_async.py b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_workspace_settings_operations_async.py similarity index 65% rename from sdk/security/azure-mgmt-security/generated_tests/test_security_center_workspace_settings_operations_async.py rename to sdk/security/azure-mgmt-security/generated_tests/test_security_management_workspace_settings_operations_async.py index 04033f54ffdd..0c50aaebdca8 100644 --- a/sdk/security/azure-mgmt-security/generated_tests/test_security_center_workspace_settings_operations_async.py +++ b/sdk/security/azure-mgmt-security/generated_tests/test_security_management_workspace_settings_operations_async.py @@ -2,11 +2,11 @@ # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. +# Code generated by Microsoft (R) Python Code Generator. # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import pytest -from azure.mgmt.security.aio import SecurityCenter +from azure.mgmt.security.aio import SecurityManagementClient from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer from devtools_testutils.aio import recorded_by_proxy_async @@ -15,19 +15,9 @@ @pytest.mark.skip("you may need to update the auto-generated test case before run it") -class TestSecurityCenterWorkspaceSettingsOperationsAsync(AzureMgmtRecordedTestCase): +class TestSecurityManagementWorkspaceSettingsOperationsAsync(AzureMgmtRecordedTestCase): def setup_method(self, method): - self.client = self.create_mgmt_client(SecurityCenter, is_async=True) - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_workspace_settings_list(self, resource_group): - response = self.client.workspace_settings.list( - api_version="2017-08-01-preview", - ) - result = [r async for r in response] - # please add some check logic here by yourself - # ... + self.client = self.create_mgmt_client(SecurityManagementClient, is_async=True) @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) @recorded_by_proxy_async @@ -45,7 +35,20 @@ async def test_workspace_settings_get(self, resource_group): async def test_workspace_settings_create(self, resource_group): response = await self.client.workspace_settings.create( workspace_setting_name="str", - workspace_setting={"id": "str", "name": "str", "scope": "str", "type": "str", "workspaceId": "str"}, + workspace_setting={ + "id": "str", + "name": "str", + "properties": {"scope": "str", "workspaceId": "str"}, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2017-08-01-preview", ) @@ -57,7 +60,20 @@ async def test_workspace_settings_create(self, resource_group): async def test_workspace_settings_update(self, resource_group): response = await self.client.workspace_settings.update( workspace_setting_name="str", - workspace_setting={"id": "str", "name": "str", "scope": "str", "type": "str", "workspaceId": "str"}, + workspace_setting={ + "id": "str", + "name": "str", + "properties": {"scope": "str", "workspaceId": "str"}, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, api_version="2017-08-01-preview", ) @@ -74,3 +90,13 @@ async def test_workspace_settings_delete(self, resource_group): # please add some check logic here by yourself # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_workspace_settings_list(self, resource_group): + response = self.client.workspace_settings.list( + api_version="2017-08-01-preview", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/security/azure-mgmt-security/tsp-location.yaml b/sdk/security/azure-mgmt-security/tsp-location.yaml new file mode 100644 index 000000000000..8a39e7c43078 --- /dev/null +++ b/sdk/security/azure-mgmt-security/tsp-location.yaml @@ -0,0 +1,4 @@ +directory: specification/security/resource-manager/Microsoft.Security/Security +commit: 2d517395f8a6a763c17ef6ed0594585a0f8be8c0 +repo: Azure/azure-rest-api-specs +additionalDirectories: From 5872835e88a30cf0d2f320775b708b0abc7fe968 Mon Sep 17 00:00:00 2001 From: ChenxiJiang333 Date: Fri, 24 Apr 2026 11:13:21 +0800 Subject: [PATCH 3/3] changelog from report comparison --- sdk/security/azure-mgmt-security/CHANGELOG.md | 414 +++++++++++++++++- 1 file changed, 413 insertions(+), 1 deletion(-) diff --git a/sdk/security/azure-mgmt-security/CHANGELOG.md b/sdk/security/azure-mgmt-security/CHANGELOG.md index f90ecf1ebd69..43a95def639f 100644 --- a/sdk/security/azure-mgmt-security/CHANGELOG.md +++ b/sdk/security/azure-mgmt-security/CHANGELOG.md @@ -2,7 +2,419 @@ ## 8.0.0b2 (2026-04-24) -skip changelog generation +### Features Added + + - Model `AadExternalSecuritySolution` added property `system_data` + - Model `AdvancedThreatProtectionSetting` added property `properties` + - Model `AdvancedThreatProtectionSetting` added property `system_data` + - Model `Alert` added property `system_data` + - Model `AlertSyncSettings` added property `properties` + - Model `AlertSyncSettings` added property `system_data` + - Model `AlertsSuppressionRule` added property `system_data` + - Model `AllowedConnectionsResource` added property `system_data` + - Model `ApiCollection` added property `system_data` + - Model `Application` added property `system_data` + - Model `AscLocation` added property `system_data` + - Model `AtaExternalSecuritySolution` added property `system_data` + - Model `AutoProvisioningSetting` added property `system_data` + - Model `Automation` added property `system_data` + - Model `AutomationUpdateModel` added property `properties` + - Model `AzureServersSetting` added property `properties` + - Model `CefExternalSecuritySolution` added property `system_data` + - Model `Compliance` added property `system_data` + - Model `ComplianceResult` added property `system_data` + - Model `DataExportSettings` added property `properties` + - Model `DataExportSettings` added property `system_data` + - Model `DefenderForStorageSetting` added property `system_data` + - Model `DeviceSecurityGroup` added property `system_data` + - Model `DiscoveredSecuritySolution` added property `system_data` + - Model `ExternalSecuritySolution` added property `properties` + - Model `ExternalSecuritySolution` added property `system_data` + - Model `GetSensitivitySettingsResponse` added property `system_data` + - Model `GovernanceAssignment` added property `system_data` + - Model `GovernanceRule` added property `system_data` + - Model `HealthReport` added property `system_data` + - Model `InformationProtectionPolicy` added property `system_data` + - Model `IoTSecurityAggregatedAlert` added property `system_data` + - Model `IoTSecurityAggregatedRecommendation` added property `system_data` + - Model `IoTSecuritySolutionAnalyticsModel` added property `system_data` + - Model `IoTSecuritySolutionModel` added property `properties` + - Model `JitNetworkAccessPolicy` added property `system_data` + - Model `MdeOnboardingData` added property `system_data` + - Model `Pricing` added property `system_data` + - Enum `ProvisioningState` added member `CANCELED` + - Enum `ProvisioningState` added member `CREATING` + - Enum `ProvisioningState` added member `DELETING` + - Enum `ProvisioningState` added member `IN_PROGRESS` + - Model `ProxyResource` added property `system_data` + - Model `RegulatoryComplianceAssessment` added property `system_data` + - Model `RegulatoryComplianceControl` added property `system_data` + - Model `RegulatoryComplianceStandard` added property `system_data` + - Model `Resource` added property `system_data` + - Model `ResourceDetails` added property `id` + - Model `ResourceDetails` added property `connector_id` + - Model `RuleResults` added property `system_data` + - Model `RulesResults` added property `next_link` + - Model `ScanResult` added property `system_data` + - Model `ScanV2` added property `system_data` + - Model `SecureScoreControlDefinitionItem` added property `system_data` + - Model `SecureScoreControlDetails` added property `properties` + - Model `SecureScoreControlDetails` added property `system_data` + - Model `SecureScoreItem` added property `system_data` + - Model `SecurityAssessment` added property `properties` + - Model `SecurityAssessment` added property `system_data` + - Model `SecurityAssessmentMetadataResponse` added property `properties` + - Model `SecurityAssessmentMetadataResponse` added property `system_data` + - Model `SecurityAssessmentResponse` added property `properties` + - Model `SecurityAssessmentResponse` added property `system_data` + - Model `SecurityOperator` added property `system_data` + - Model `SecuritySolution` added property `system_data` + - Model `SecuritySolutionsReferenceData` added property `system_data` + - Model `SecurityStandard` added property `system_data` + - Model `SecuritySubAssessment` added property `system_data` + - Model `SecurityTask` added property `system_data` + - Model `ServerVulnerabilityAssessment` added property `system_data` + - Model `ServerVulnerabilityAssessmentsSetting` added property `properties` + - Model `Setting` added property `properties` + - Model `Setting` added property `system_data` + - Enum `SettingName` added member `CURRENT` + - Enum `Severity` added member `CRITICAL` + - Enum `Source` added member `AWS` + - Enum `Source` added member `GCP` + - Model `SqlVulnerabilityAssessmentScanOperationResult` added property `system_data` + - Model `SqlVulnerabilityAssessmentSettings` added property `system_data` + - Model `StandardAssignment` added property `system_data` + - Enum `State` added member `OFF` + - Enum `State` added member `ON` + - Model `TopologyResource` added property `system_data` + - Model `TrackedResource` added property `system_data` + - Model `UpdateIotSecuritySolutionData` added property `properties` + - Model `WorkspaceSetting` added property `system_data` + - Added model `AdvancedThreatProtectionProperties` + - Added model `AlertSyncSettingProperties` + - Added enum `ArmActionType` + - Added model `ArmErrorAdditionalInfo` + - Added model `CloudError` + - Added model `CommonResourceDetails` + - Added model `DataExportSettingProperties` + - Added model `DefenderCspmAwsOfferingCiemCiemDiscovery` + - Added model `DefenderCspmAwsOfferingCiemCiemOidc` + - Added model `ExtensionResource` + - Added model `IoTSecuritySolutionProperties` + - Added enum `MinimalRiskLevel` + - Added enum `MinimalSeverity` + - Added model `NotificationsSource` + - Added model `NotificationsSourceAlert` + - Added model `NotificationsSourceAttackPath` + - Added enum `OperationResultStatus` + - Added model `PrivateLinkGroupResource` + - Added model `PrivateLinkProperties` + - Added model `Private_link_parameters` + - Added enum `ResourceIdentityType` + - Added model `ScoreDetails` + - Added model `SecureScoreControlScoreDetails` + - Added model `SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem` + - Added model `SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem` + - Added model `SecurityContact` + - Added enum `SecurityContactName` + - Added model `SecurityContactProperties` + - Added model `SecurityContactPropertiesNotificationsByRole` + - Added enum `SecurityContactRole` + - Added model `ServerVulnerabilityAssessmentsAzureSettingProperties` + - Added enum `SourceType` + - Added enum `StatusEnum` + - Added model `UpdateIoTSecuritySolutionProperties` + - Added model `SecurityContactsOperations` + +### Breaking Changes + + - Deleted or renamed model `SecurityCenter` + - Method `MdeOnboardingsOperations.list` changed from `asynchronous` to `synchronous` + - Method `PricingsOperations.list` changed from `asynchronous` to `synchronous` + - Method `SecurityOperatorsOperations.list` changed from `asynchronous` to `synchronous` + - Method `SensitivitySettingsOperations.list` changed from `asynchronous` to `synchronous` + - Method `ServerVulnerabilityAssessmentOperations.list_by_extended_resource` changed from `asynchronous` to `synchronous` + - Model `AdvancedThreatProtectionSetting` deleted or renamed its instance variable `is_enabled` + - Model `AlertSyncSettings` deleted or renamed its instance variable `enabled` + - Model `AutomationUpdateModel` deleted or renamed its instance variable `description` + - Model `AutomationUpdateModel` deleted or renamed its instance variable `is_enabled` + - Model `AutomationUpdateModel` deleted or renamed its instance variable `scopes` + - Model `AutomationUpdateModel` deleted or renamed its instance variable `sources` + - Model `AutomationUpdateModel` deleted or renamed its instance variable `actions` + - Model `AzureServersSetting` deleted or renamed its instance variable `selected_provider` + - Model `DataExportSettings` deleted or renamed its instance variable `enabled` + - Model `Identity` deleted or renamed its instance variable `principal_id` + - Model `Identity` deleted or renamed its instance variable `tenant_id` + - Model `IoTSecuritySolutionModel` deleted or renamed its instance variable `workspace` + - Model `IoTSecuritySolutionModel` deleted or renamed its instance variable `display_name` + - Model `IoTSecuritySolutionModel` deleted or renamed its instance variable `status` + - Model `IoTSecuritySolutionModel` deleted or renamed its instance variable `export` + - Model `IoTSecuritySolutionModel` deleted or renamed its instance variable `disabled_data_sources` + - Model `IoTSecuritySolutionModel` deleted or renamed its instance variable `iot_hubs` + - Model `IoTSecuritySolutionModel` deleted or renamed its instance variable `user_defined_resources` + - Model `IoTSecuritySolutionModel` deleted or renamed its instance variable `auto_discovered_resources` + - Model `IoTSecuritySolutionModel` deleted or renamed its instance variable `recommendations_configuration` + - Model `IoTSecuritySolutionModel` deleted or renamed its instance variable `unmasked_ip_logging_status` + - Model `IoTSecuritySolutionModel` deleted or renamed its instance variable `additional_workspaces` + - Model `SecureScoreControlDetails` deleted or renamed its instance variable `display_name` + - Model `SecureScoreControlDetails` deleted or renamed its instance variable `healthy_resource_count` + - Model `SecureScoreControlDetails` deleted or renamed its instance variable `unhealthy_resource_count` + - Model `SecureScoreControlDetails` deleted or renamed its instance variable `not_applicable_resource_count` + - Model `SecureScoreControlDetails` deleted or renamed its instance variable `weight` + - Model `SecureScoreControlDetails` deleted or renamed its instance variable `definition` + - Model `SecureScoreControlDetails` deleted or renamed its instance variable `max` + - Model `SecureScoreControlDetails` deleted or renamed its instance variable `current` + - Model `SecureScoreControlDetails` deleted or renamed its instance variable `percentage` + - Model `SecurityAssessment` deleted or renamed its instance variable `risk` + - Model `SecurityAssessment` deleted or renamed its instance variable `resource_details` + - Model `SecurityAssessment` deleted or renamed its instance variable `display_name` + - Model `SecurityAssessment` deleted or renamed its instance variable `additional_data` + - Model `SecurityAssessment` deleted or renamed its instance variable `links` + - Model `SecurityAssessment` deleted or renamed its instance variable `metadata` + - Model `SecurityAssessment` deleted or renamed its instance variable `partners_data` + - Model `SecurityAssessment` deleted or renamed its instance variable `status` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `display_name` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `policy_definition_id` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `description` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `remediation_description` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `categories` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `severity` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `user_impact` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `implementation_effort` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `threats` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `preview` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `assessment_type` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `partner_data` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `publish_dates` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `planned_deprecation_date` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `tactics` + - Model `SecurityAssessmentMetadataResponse` deleted or renamed its instance variable `techniques` + - Model `SecurityAssessmentResponse` deleted or renamed its instance variable `risk` + - Model `SecurityAssessmentResponse` deleted or renamed its instance variable `resource_details` + - Model `SecurityAssessmentResponse` deleted or renamed its instance variable `display_name` + - Model `SecurityAssessmentResponse` deleted or renamed its instance variable `additional_data` + - Model `SecurityAssessmentResponse` deleted or renamed its instance variable `links` + - Model `SecurityAssessmentResponse` deleted or renamed its instance variable `metadata` + - Model `SecurityAssessmentResponse` deleted or renamed its instance variable `partners_data` + - Model `SecurityAssessmentResponse` deleted or renamed its instance variable `status` + - Model `TrackedResource` deleted or renamed its instance variable `etag` + - Model `TrackedResource` deleted or renamed its instance variable `kind` + - Model `UpdateIotSecuritySolutionData` deleted or renamed its instance variable `user_defined_resources` + - Model `UpdateIotSecuritySolutionData` deleted or renamed its instance variable `recommendations_configuration` + - Deleted or renamed model `AadConnectivityState` + - Deleted or renamed model `ActiveConnectionsNotInAllowedRange` + - Deleted or renamed model `AlertList` + - Deleted or renamed model `AlertsSuppressionRulesList` + - Deleted or renamed model `AllowedConnectionsList` + - Deleted or renamed model `AmqpC2DMessagesNotInAllowedRange` + - Deleted or renamed model `AmqpC2DRejectedMessagesNotInAllowedRange` + - Deleted or renamed model `AmqpD2CMessagesNotInAllowedRange` + - Deleted or renamed model `ApiCollectionList` + - Deleted or renamed model `ApplicationCondition` + - Deleted or renamed model `ApplicationConditionOperator` + - Deleted or renamed model `ApplicationsList` + - Deleted or renamed model `AscLocationList` + - Deleted or renamed model `AssignedStandardItemAutoGenerated` + - Deleted or renamed model `AssignmentList` + - Deleted or renamed model `AutoProvisioningSettingList` + - Deleted or renamed model `AutomationList` + - Deleted or renamed model `AzureDevOpsOrganizationConfiguration` + - Deleted or renamed model `AzureDevOpsProjectConfiguration` + - Deleted or renamed model `AzureDevOpsProjectListResponse` + - Deleted or renamed model `AzureDevOpsRepositoryListResponse` + - Deleted or renamed model `AzureTrackedResourceLocation` + - Deleted or renamed model `BaseResourceConfiguration` + - Deleted or renamed model `CloudErrorAutoGenerated` + - Deleted or renamed model `CloudErrorAutoGenerated10` + - Deleted or renamed model `CloudErrorAutoGenerated11` + - Deleted or renamed model `CloudErrorAutoGenerated12` + - Deleted or renamed model `CloudErrorAutoGenerated13` + - Deleted or renamed model `CloudErrorAutoGenerated14` + - Deleted or renamed model `CloudErrorAutoGenerated15` + - Deleted or renamed model `CloudErrorAutoGenerated16` + - Deleted or renamed model `CloudErrorAutoGenerated17` + - Deleted or renamed model `CloudErrorAutoGenerated18` + - Deleted or renamed model `CloudErrorAutoGenerated19` + - Deleted or renamed model `CloudErrorAutoGenerated2` + - Deleted or renamed model `CloudErrorAutoGenerated20` + - Deleted or renamed model `CloudErrorAutoGenerated3` + - Deleted or renamed model `CloudErrorAutoGenerated4` + - Deleted or renamed model `CloudErrorAutoGenerated5` + - Deleted or renamed model `CloudErrorAutoGenerated6` + - Deleted or renamed model `CloudErrorAutoGenerated7` + - Deleted or renamed model `CloudErrorAutoGenerated8` + - Deleted or renamed model `CloudErrorAutoGenerated9` + - Deleted or renamed model `CloudErrorBodyAutoGenerated` + - Deleted or renamed model `CloudErrorBodyAutoGenerated10` + - Deleted or renamed model `CloudErrorBodyAutoGenerated11` + - Deleted or renamed model `CloudErrorBodyAutoGenerated12` + - Deleted or renamed model `CloudErrorBodyAutoGenerated13` + - Deleted or renamed model `CloudErrorBodyAutoGenerated14` + - Deleted or renamed model `CloudErrorBodyAutoGenerated15` + - Deleted or renamed model `CloudErrorBodyAutoGenerated16` + - Deleted or renamed model `CloudErrorBodyAutoGenerated17` + - Deleted or renamed model `CloudErrorBodyAutoGenerated18` + - Deleted or renamed model `CloudErrorBodyAutoGenerated19` + - Deleted or renamed model `CloudErrorBodyAutoGenerated2` + - Deleted or renamed model `CloudErrorBodyAutoGenerated20` + - Deleted or renamed model `CloudErrorBodyAutoGenerated3` + - Deleted or renamed model `CloudErrorBodyAutoGenerated4` + - Deleted or renamed model `CloudErrorBodyAutoGenerated5` + - Deleted or renamed model `CloudErrorBodyAutoGenerated6` + - Deleted or renamed model `CloudErrorBodyAutoGenerated7` + - Deleted or renamed model `CloudErrorBodyAutoGenerated8` + - Deleted or renamed model `CloudErrorBodyAutoGenerated9` + - Deleted or renamed model `Code` + - Deleted or renamed model `ComplianceList` + - Deleted or renamed model `ComplianceResultList` + - Deleted or renamed model `Components1Uu4J47SchemasSecurityassessmentpropertiesbasePropertiesRiskPropertiesPathsItemsPropertiesEdgesItems` + - Deleted or renamed model `Condition` + - Deleted or renamed model `ConnectionFromIpNotAllowed` + - Deleted or renamed model `ConnectionToIpNotAllowed` + - Deleted or renamed model `CustomRecommendationsList` + - Deleted or renamed model `DefenderCspmAwsOfferingCiemDiscovery` + - Deleted or renamed model `DefenderCspmAwsOfferingCiemOidc` + - Deleted or renamed model `DefenderForStorageSettingList` + - Deleted or renamed model `DesiredOnboardingState` + - Deleted or renamed model `DevOpsConfigurationListResponse` + - Deleted or renamed model `DeviceSecurityGroupList` + - Deleted or renamed model `DirectMethodInvokesNotInAllowedRange` + - Deleted or renamed model `DiscoveredSecuritySolutionList` + - Deleted or renamed model `ETag` + - Deleted or renamed model `EdgeIdentifiers` + - Deleted or renamed model `ErrorAdditionalInfo` + - Deleted or renamed model `ErrorDetailAutoGenerated` + - Deleted or renamed model `ErrorDetailAutoGenerated2` + - Deleted or renamed model `ErrorResponseAutoGenerated` + - Deleted or renamed model `ErrorResponseAutoGenerated2` + - Deleted or renamed model `ExternalSecuritySolutionKind` + - Deleted or renamed model `ExternalSecuritySolutionList` + - Deleted or renamed model `FailedLocalLoginsNotInAllowedRange` + - Deleted or renamed model `FileUploadsNotInAllowedRange` + - Deleted or renamed model `GetSensitivitySettingsListResponse` + - Deleted or renamed model `GitHubOwnerConfiguration` + - Deleted or renamed model `GitHubRepositoryListResponse` + - Deleted or renamed model `GitLabGroupConfiguration` + - Deleted or renamed model `GitLabProjectListResponse` + - Deleted or renamed model `GovernanceAssignmentsList` + - Deleted or renamed model `GovernanceRuleConditionOperator` + - Deleted or renamed model `GovernanceRuleList` + - Deleted or renamed model `HealthReportsList` + - Deleted or renamed model `HttpC2DMessagesNotInAllowedRange` + - Deleted or renamed model `HttpC2DRejectedMessagesNotInAllowedRange` + - Deleted or renamed model `HttpD2CMessagesNotInAllowedRange` + - Deleted or renamed model `InformationProtectionPolicyList` + - Deleted or renamed model `IoTSecurityAggregatedAlertList` + - Deleted or renamed model `IoTSecurityAggregatedRecommendationList` + - Deleted or renamed model `IoTSecuritySolutionsList` + - Deleted or renamed model `JitNetworkAccessPoliciesList` + - Deleted or renamed model `Kind` + - Deleted or renamed model `LocalUserNotAllowed` + - Deleted or renamed model `Location` + - Deleted or renamed model `MdeOnboardingDataList` + - Deleted or renamed model `MqttC2DMessagesNotInAllowedRange` + - Deleted or renamed model `MqttC2DRejectedMessagesNotInAllowedRange` + - Deleted or renamed model `MqttD2CMessagesNotInAllowedRange` + - Deleted or renamed model `NodeIdentifier` + - Deleted or renamed model `OnPremiseResourceDetails` + - Deleted or renamed model `OnPremiseSqlResourceDetails` + - Deleted or renamed model `OperationResult` + - Deleted or renamed model `OperationStatusAutoGenerated` + - Deleted or renamed model `OperationStatusResultAutoGenerated` + - Deleted or renamed model `Path` + - Deleted or renamed model `PricingList` + - Deleted or renamed model `PrivateLinkParameters` + - Deleted or renamed model `PrivateLinkResourceAutoGenerated` + - Deleted or renamed model `PrivateLinksList` + - Deleted or renamed model `ProcessNotAllowed` + - Deleted or renamed model `QueuePurgesNotInAllowedRange` + - Deleted or renamed model `RegulatoryComplianceAssessmentList` + - Deleted or renamed model `RegulatoryComplianceControlList` + - Deleted or renamed model `RegulatoryComplianceStandardList` + - Deleted or renamed model `ResourceAutoGenerated` + - Deleted or renamed model `ResourceAutoGenerated2` + - Deleted or renamed model `ResourceAutoGenerated3` + - Deleted or renamed model `ResourceDetailsAutoGenerated` + - Deleted or renamed model `ScanResults` + - Deleted or renamed model `ScansV2` + - Deleted or renamed model `SecureScoreControlDefinitionList` + - Deleted or renamed model `SecureScoreControlList` + - Deleted or renamed model `SecureScoreControlScore` + - Deleted or renamed model `SecureScoresList` + - Deleted or renamed model `SecurityAssessmentList` + - Deleted or renamed model `SecurityAssessmentMetadata` + - Deleted or renamed model `SecurityAssessmentMetadataResponseList` + - Deleted or renamed model `SecurityAssessmentPropertiesBaseRiskPathsPropertiesItemsItem` + - Deleted or renamed model `SecurityConnectorsList` + - Deleted or renamed model `SecurityOperatorList` + - Deleted or renamed model `SecuritySolutionList` + - Deleted or renamed model `SecurityStandardList` + - Deleted or renamed model `SecuritySubAssessmentList` + - Deleted or renamed model `SecurityTaskList` + - Deleted or renamed model `ServerVulnerabilityAssessmentsList` + - Deleted or renamed model `ServerVulnerabilityAssessmentsSettingsList` + - Deleted or renamed model `SettingNameAutoGenerated` + - Deleted or renamed model `SettingsList` + - Deleted or renamed model `StandardAssignmentsList` + - Deleted or renamed model `StandardList` + - Deleted or renamed model `Status` + - Deleted or renamed model `TopologyList` + - Deleted or renamed model `TrackedResourceAutoGenerated` + - Deleted or renamed model `TwinUpdatesNotInAllowedRange` + - Deleted or renamed model `UnauthorizedOperationsNotInAllowedRange` + - Deleted or renamed model `WorkspaceSettingList` + - Method `AlertsSuppressionRulesOperations.list` changed its parameter `alert_type` from `positional_or_keyword` to `keyword_only` + - Method `AssessmentsOperations.get` changed its parameter `expand` from `positional_or_keyword` to `keyword_only` + - Method `PrivateEndpointConnectionsOperations.begin_create_or_update` inserted a `positional_or_keyword` parameter `private_link_name` + - Method `PrivateEndpointConnectionsOperations.begin_create_or_update` deleted or renamed its parameter `private_link_parameters` of kind `positional_or_keyword` + - Method `PrivateEndpointConnectionsOperations.begin_delete` inserted a `positional_or_keyword` parameter `private_link_name` + - Method `PrivateEndpointConnectionsOperations.begin_delete` deleted or renamed its parameter `private_link_parameters` of kind `positional_or_keyword` + - Method `PrivateEndpointConnectionsOperations.get` deleted or renamed its parameter `private_link_parameters` of kind `positional_or_keyword` + - Method `PrivateEndpointConnectionsOperations.list` inserted a `positional_or_keyword` parameter `private_link_name` + - Method `PrivateEndpointConnectionsOperations.list` deleted or renamed its parameter `private_link_parameters` of kind `positional_or_keyword` + - Method `PrivateLinkResourcesOperations.get` inserted a `positional_or_keyword` parameter `private_link_name` + - Method `PrivateLinkResourcesOperations.get` deleted or renamed its parameter `private_link_parameters` of kind `positional_or_keyword` + - Method `PrivateLinkResourcesOperations.list` inserted a `positional_or_keyword` parameter `private_link_name` + - Method `PrivateLinkResourcesOperations.list` deleted or renamed its parameter `private_link_parameters` of kind `positional_or_keyword` + - Method `PrivateLinksOperations.begin_create` inserted a `positional_or_keyword` parameter `private_link_name` + - Method `PrivateLinksOperations.begin_create` deleted or renamed its parameter `private_link_parameters` of kind `positional_or_keyword` + - Method `PrivateLinksOperations.begin_delete` inserted a `positional_or_keyword` parameter `private_link_name` + - Method `PrivateLinksOperations.begin_delete` deleted or renamed its parameter `private_link_parameters` of kind `positional_or_keyword` + - Method `PrivateLinksOperations.get` inserted a `positional_or_keyword` parameter `private_link_name` + - Method `PrivateLinksOperations.get` deleted or renamed its parameter `private_link_parameters` of kind `positional_or_keyword` + - Method `PrivateLinksOperations.head` inserted a `positional_or_keyword` parameter `private_link_name` + - Method `PrivateLinksOperations.head` deleted or renamed its parameter `private_link_parameters` of kind `positional_or_keyword` + - Method `PrivateLinksOperations.update` inserted a `positional_or_keyword` parameter `private_link_name` + - Method `PrivateLinksOperations.update` deleted or renamed its parameter `private_link_parameters` of kind `positional_or_keyword` + - Method `SecureScoreControlsOperations.list` changed its parameter `expand` from `positional_or_keyword` to `keyword_only` + - Method `SecureScoreControlsOperations.list_by_secure_score` changed its parameter `expand` from `positional_or_keyword` to `keyword_only` + - Method `SqlVulnerabilityAssessmentBaselineRulesOperations.add` changed its parameter `database_name` from `positional_or_keyword` to `keyword_only` + - Method `SqlVulnerabilityAssessmentBaselineRulesOperations.create_or_update` changed its parameter `database_name` from `positional_or_keyword` to `keyword_only` + - Method `SqlVulnerabilityAssessmentBaselineRulesOperations.delete` changed its parameter `database_name` from `positional_or_keyword` to `keyword_only` + - Method `SqlVulnerabilityAssessmentBaselineRulesOperations.get` changed its parameter `database_name` from `positional_or_keyword` to `keyword_only` + - Method `SqlVulnerabilityAssessmentBaselineRulesOperations.list` changed its parameter `database_name` from `positional_or_keyword` to `keyword_only` + - Method `SqlVulnerabilityAssessmentScanResultsOperations.get` removed default value `None` from its parameter `database_name` + - Method `SqlVulnerabilityAssessmentScanResultsOperations.get` changed its parameter `database_name` from `positional_or_keyword` to `keyword_only` + - Method `SqlVulnerabilityAssessmentScanResultsOperations.list` removed default value `None` from its parameter `database_name` + - Method `SqlVulnerabilityAssessmentScanResultsOperations.list` changed its parameter `database_name` from `positional_or_keyword` to `keyword_only` + - Method `SqlVulnerabilityAssessmentScansOperations.begin_initiate_scan` changed its parameter `database_name` from `positional_or_keyword` to `keyword_only` + - Method `SqlVulnerabilityAssessmentScansOperations.get` removed default value `None` from its parameter `database_name` + - Method `SqlVulnerabilityAssessmentScansOperations.get` changed its parameter `database_name` from `positional_or_keyword` to `keyword_only` + - Method `SqlVulnerabilityAssessmentScansOperations.get_scan_operation_result` changed its parameter `database_name` from `positional_or_keyword` to `keyword_only` + - Method `SqlVulnerabilityAssessmentScansOperations.list` changed its parameter `database_name` from `positional_or_keyword` to `keyword_only` + - Method `PrivateLinkResourcesOperations.list` re-ordered its parameters from `['self', 'resource_group_name', 'private_link_parameters', 'kwargs']` to `['self', 'resource_group_name', 'private_link_name', 'kwargs']` + - Method `PrivateLinkResourcesOperations.get` re-ordered its parameters from `['self', 'resource_group_name', 'group_id', 'private_link_parameters', 'kwargs']` to `['self', 'resource_group_name', 'private_link_name', 'group_id', 'kwargs']` + - Method `PrivateLinksOperations.update` re-ordered its parameters from `['self', 'resource_group_name', 'private_link_parameters', 'private_link', 'kwargs']` to `['self', 'resource_group_name', 'private_link_name', 'private_link', 'kwargs']` + - Method `PrivateLinksOperations.begin_create` re-ordered its parameters from `['self', 'resource_group_name', 'private_link_parameters', 'private_link', 'kwargs']` to `['self', 'resource_group_name', 'private_link_name', 'private_link', 'kwargs']` + - Method `PrivateLinksOperations.get` re-ordered its parameters from `['self', 'resource_group_name', 'private_link_parameters', 'kwargs']` to `['self', 'resource_group_name', 'private_link_name', 'kwargs']` + - Method `PrivateLinksOperations.begin_delete` re-ordered its parameters from `['self', 'resource_group_name', 'private_link_parameters', 'kwargs']` to `['self', 'resource_group_name', 'private_link_name', 'kwargs']` + - Method `PrivateLinksOperations.head` re-ordered its parameters from `['self', 'resource_group_name', 'private_link_parameters', 'kwargs']` to `['self', 'resource_group_name', 'private_link_name', 'kwargs']` + - Method `AlertsOperations.list_resource_group_level_by_region` re-ordered its parameters from `['self', 'asc_location', 'resource_group_name', 'kwargs']` to `['self', 'resource_group_name', 'asc_location', 'kwargs']` + - Method `SqlVulnerabilityAssessmentBaselineRulesOperations.create_or_update` re-ordered its parameters from `['self', 'resource_id', 'rule_id', 'database_name', 'body', 'kwargs']` to `['self', 'resource_id', 'rule_id', 'body', 'database_name', 'kwargs']` + - Method `SqlVulnerabilityAssessmentBaselineRulesOperations.add` re-ordered its parameters from `['self', 'resource_id', 'database_name', 'body', 'kwargs']` to `['self', 'resource_id', 'body', 'database_name', 'kwargs']` + - Method `PrivateEndpointConnectionsOperations.begin_delete` re-ordered its parameters from `['self', 'resource_group_name', 'private_endpoint_connection_name', 'private_link_parameters', 'kwargs']` to `['self', 'resource_group_name', 'private_link_name', 'private_endpoint_connection_name', 'kwargs']` + - Method `PrivateEndpointConnectionsOperations.list` re-ordered its parameters from `['self', 'resource_group_name', 'private_link_parameters', 'kwargs']` to `['self', 'resource_group_name', 'private_link_name', 'kwargs']` + - Method `PrivateEndpointConnectionsOperations.begin_create_or_update` re-ordered its parameters from `['self', 'resource_group_name', 'private_endpoint_connection_name', 'private_link_parameters', 'private_endpoint_connection', 'kwargs']` to `['self', 'resource_group_name', 'private_link_name', 'private_endpoint_connection_name', 'private_endpoint_connection', 'kwargs']` ## 8.0.0b1 (2025-08-25)